2. Activating the license¶
MuseBox runs only on a board that has a valid license.lic. The license is made by us for one
specific board and its SD card. You activate each board once; after that it starts without any network
connection.
The board sends the license request itself: it needs an internet connection only for this step. The
license arrives by email, as a license.lic attachment, after we approve the request.
The commands of this chapter run on the board, as root, except copying the license, which runs on your
PC. Log in to the board first.
On your PC, Linux / macOS:
pc$ ssh root@<board-ip>
On your PC, Windows 10 / 11 (Command Prompt or PowerShell):
pc$ ssh -m hmac-sha2-256-etm@openssh.com root@<board-ip>
Activation¶
- Connect the board to the internet: if your router has internet, the board has it too. To check, on the
board:
ping -c 3 musebox-ai.com(it should answer three times). -
Run:
On the board:
board$ cd /root/musebox-ai-servers board$ ./musebox-ai-server-cpp/musebox-ai-server --activateWith the Python server:
cd /root/musebox-ai-servers/musebox-ai-server-python && python3 -m musebox_ai --activate.All the options (
--help)The program of the AI server (chapter 3):
--activateis one of its options../musebox-ai-server-cpp/musebox-ai-server --helpandpython3 -m musebox_ai --helpprint:MuseBox AI Server v1.9.0 Usage: musebox-ai-server [options] --models-dir <dir> shared ai_models directory (env MUSEBOX_MODELS_DIR) --config-dir <dir> shared config directory with *.json (env MUSEBOX_CONFIG_DIR) --config <file> legacy single config.json merged on top of the config directory --host/--port WebSocket bind address (default 0.0.0.0:8080) --zmq-host/--zmq-port ZeroMQ bind address (default 0.0.0.0:5555), --no-zmq to disable --lazy-load load models on first request --camera <device> board camera for frame_id / source=camera requests (/dev/videoN, index or video file) --no-camera disable the board camera --license <file> license file (env MUSEBOX_LICENSE; default <config-dir>/license.lic, /etc/musebox/license.lic) --activate send the activation request (asks name, company and email the first time) and exit --update install the latest release when newer (needs internet) and exit --check-update only tell whether a newer release exists and exit --mqtt / --no-mqtt MQTT bridge (plus --mqtt-host, --mqtt-port, --mqtt-username, ...) --rabbitmq / --no-rabbitmq RabbitMQ worker (plus --rabbitmq-host, --rabbitmq-port, ...) --ros2 / --no-ros2 ROS 2 bridge (plus --ros2-node-name, --ros2-qos, --ros2-image-topic, ...)Starting the AI server on a board that has no license does the same: the server stops and asks you to activate the board.
Recorded on the Mercury+ PE3 Hailo-8 (Mercury+ MP1 SoM) -
The first time, the board asks for your details:
MuseBox must be activated on this board. ... First name: Jane Last name: Doe Company: Example Email: your.email@example.comUse an email address you can read: the license is sent there. The details are saved in
config/license.json, so you are not asked again. -
The board sends the request to us and stops. The request gets a number (
req_…), and the board tells you where to copy the license when it arrives:INFO: Customer identity kept in /root/musebox-ai-servers/config/license.json INFO: Activation request req_7d1742e7 registered for Jane Doe (Example, your.email@example.com): waiting for approval by MakarenaLabs WARNING: your activation request req_7d1742e7 is pending: see your email (your.email@example.com) for license.lic, copy it to /root/musebox-ai-servers/config/license.lic and start again, or contact MakarenaLabsNothing else to do on the board for now: wait for the email. Quote the request number if you contact us about it.
Recorded on the Mercury+ PE3 Hailo-8 (Mercury+ MP1 SoM) -
When you receive the email, save the attached
license.lic(the commands below assume your Downloads folder) and copy it to the board. Run the command in a new terminal on your PC, not in the one logged in to the board:On your PC, Linux / macOS:
pc$ scp ~/Downloads/license.lic root@<board-ip>:/root/musebox-ai-servers/config/license.licOn your PC, Windows 10 / 11 (Command Prompt or PowerShell):
pc$ scp -o MACs=hmac-sha2-256-etm@openssh.com C:\Users\<your-user>\Downloads\license.lic root@<board-ip>:/root/musebox-ai-servers/config/license.licOn Windows, with the
.ssh\configfile described in chapter 1, the plain command works too. -
The board is activated: start the AI server as shown in chapter 3. From now on the board needs no internet connection for the license.
Recorded on the Mercury+ PE3 Hailo-8 (Mercury+ MP1 SoM)
If you run --activate or start the AI server again before the email arrives, it just tells you the state of your request (waiting
for approval, or approved and sent).
Things to know¶
- One license, one board. Copying
license.lic, the MuseBox programs or the whole SD card to another board does not work: that board needs its own license. - Keep the SD card. The license is tied to the SD card that holds the system. If you move the SD card to another board, or replace it, ask us for a new license.
- Keep a copy of
license.lic. If you reinstall the system on the same SD card and board, the same file works again. - The license file can go elsewhere. MuseBox looks for
config/license.lic, then/etc/musebox/license.lic. You can also pass--license <file>or setMUSEBOX_LICENSE=<file>.
If something goes wrong¶
| What you see | What to do |
|---|---|
| MuseBox stops at start-up asking you to activate | The board has no valid license yet: follow Activation above. |
| The license server cannot be reached | Check the board's internet connection. If the board cannot go online, contact us. |
| Your request was refused | The message gives the reason. Contact us. |
| The email never arrived | Check your spam folder and the address in config/license.json, then contact us, we can send it again. |
| The license is not valid on this board | The file was made for another board or SD card, or it expired. Make a new request from this board. |
For anything else, contact us or write to staff@makarenalabs.com.