Mongoose OS is highly modular. It consists of the core and a large number of libraries. The core, and most of the libraries, are open source and released under the Apache 2.0 license as Mongoose OS Community Edition.
Some of the libraries are closed-source, and have certain restrictions. Those restrictions can be removed by purchasing a Mongoose OS Enterprise Edition license.
rpc-service-otalibrary is used by your app
mos --port DEVICE_ADDRESS license
Licenses are bound to devices, and they are permanent.
mos license command creates a unique license string specific
for a device,
device.license configuration parameter, which "unlocks"
the device and removes restrictions. The License Manager decreases
the number of available licenses and saves a unique
license string. The next time
mos license is run for the same device,
an old license string is returned by the License Manager
but the number of available licenses is not decreased.
Thus a device, once licensed, is licensed permanently.
Below is the list of closed-source libraries and their restrictions.
|ota-common||OTA only from mDash|
|ota-http-client||OTA only from mDash|
|ota-shadow||OTA only from mDash|
|cron||3 cron tasks max|
|crontab||3 crontab entries max|