license.lic

Find out what the licence file does, where the application looks for it, and what happens without a valid licence.

The licence file lets a Motorcortex application run without a time limit on one controller. It also sets which features, and how many of each, the application may add.

Where the application looks for it

The application reads the licence at start-up from the License key in the Path block of config.json. The file name is up to you, as long as License points to it. The standard configuration keeps it outside the package, so it survives every deploy:

"Path": {
  "License": "/etc/motorcortex/license.lic"
}
/etc/motorcortex/
├── license.lic                  # the licence of this controller
└── config -> apps-available/…   # the active config package

A relative path such as "license.lic" looks in the package folder instead, and the licence then has to be in every package you deploy.

What the application checks

At start-up the application accepts the licence only when all of these hold:

  • It is signed by Vectioneer.
  • It was made for the hardware keyA code the application derives from the controller’s hardware. A licence is made for one hardware key, so it only works on that controller. Print the key with the application’s -k option. of this controller.
  • It covers the Motorcortex components the application is built from.

To see the hardware key and the component list, run the application with -k, see motorcortex.conf.

What each licence allows

Licence What happens
Valid The application runs without a time limit. Most features are added only as many times as the licence allows, and not at all when the licence does not name them; see Features.
Missing, unreadable or not valid for this controller The application runs with all features for about 30 minutes, then stops. Use this to try a configuration.
Simulation-only, as on a motorcortex.io cloud machine The application always runs in simulation mode, whatever Mode in config.json says.

To order and install a licence, see Install license key.