User manual — chapter list

23. Licensing and activation

GridSim is source-available, proprietary software (see LICENSE.md). It is free for personal and academic use up to 1,500 buses per network model, and licensed for commercial use with no bus limit. This chapter covers how the software checks a licence and how to install one.

Everything here happens offline. A licence key is verified with a public key embedded in the software; GridSim never contacts a licence server, so activation works on air-gapped machines.

The tiers

The metric is buses - one electrical busbar (node) per network model. Nothing else is counted: no per-generator, per-line, per-study, or per-scenario charges. The Bundled Networks shipped with the software (the IEEE/CIGRE test cases and the synthetic/reduced GB networks) are exempt and never count toward a limit.

Tier Cost Bus limit
Personal (default, no key) Free 1,500
Academic Free (attribution in publications) 1,500, larger on request
Commercial Code One-time fee None
Commercial Deployment From £50,000 + support None
Network Operator (TSO/ESO/DNO) Nominal, site-wide None

With no licence installed, GridSim runs at the free Personal tier. It never locks you out - it simply refuses to load a user network larger than 1,500 buses until a licence is installed.

The .gridsim licence file

A licence is delivered as a small .gridsim file - a text file holding one key (a line that looks like an SSH key) with an optional readable header:

# GridSim licence
# Holder : Acme Grid Ltd
# Tier   : Academic (5,000 buses)
# Expires: 2027-01-01
GSK1 R1NLMQEAQHYxfG9wc0BhY21lLmNvbXxBY21lI...long-base64...e3DvclUPD9

Installing a licence

Import the .gridsim file from the command line:

gridsim --importLicence acme.gridsim

This validates the key and installs it to %LOCALAPPDATA%\GridSim\licence.gridsim. All three front-ends (CLI, web, desktop) read that file, so you install once. The licence import verb does the same thing:

gridsim licence import acme.gridsim

Check what is active at any time:

gridsim licence status
# Academic - Acme Grid Ltd - 5,000 buses - expires 2027-01-01 - id 0555a62a
# licence file: C:\Users\you\AppData\Local\GridSim\licence.gridsim

gridsim licence path prints just the file location.

Where the licence is read from

The active licence is resolved once at start-up, in this order (first match wins):

  1. The GRIDSIM_LICENCE environment variable (a key for a single run, without installing).
  2. The installed %LOCALAPPDATA%\GridSim\licence.gridsim file (what --importLicence writes).
  3. Otherwise, the free Personal tier.

For the web host, you can also set the key via configuration: Licence:Key (e.g. appsettings.json) or the Licence__Key / GRIDSIM_LICENCE environment variable. The active tier and bus limit are shown in a small badge in the corner of the dashboard.

The desktop app shows the tier in its title bar and log, and reads the same licence.gridsim file.

What enforcement looks like

When a user network exceeds your tier's bus limit, the load is refused with a clear message:

error: This network has 9,000 buses; your Personal licence allows 1,500.
       A larger or commercial licence removes the limit: mark@twinscrollgridbalancer.co.uk

Bundled test cases (case9, case300, the synthetic GB network, …) always load, whatever your tier. An expired licence is refused the same way, naming its expiry date.

Buying or extending a licence

Commercial fees, academic access above 1,500 buses, and Network Operator arrangements: mark@twinscrollgridbalancer.co.uk. See LICENSE.md for the governing terms.