Skip to main content

SMCU Firmware

Firmware for the SMCU is open source and can be found here: Official NLighten Systems Firmware Project.

Secure Boot

The SMCU has a feature called Secure Boot which ensures the code running on the SMCU is digitally signed by a trusted ED25519 key. The SMCU will only accept code that is signed by its trusted key. Secure Concentrators come pre-programed from the factory with the Helium Foundation's trusted ED25519 key and therefor will only accept code from the Helium Foundation. However, if you have a Unlocked Developer Preview Card, your SMCU will also accept firmware signed with the dev key. Please note: the dev key is indented for developers to be able to compile, build, and test new firmware. Unlocked Developer Preview hardware is on TESTNET only and cannot be used for mining IOT.

Build the firmware

The firmware is written in Rust programming language. You will need to install Rust compiler on you desktop or laptop.

Checkout the firmware source code and build:

 $ git clone https://gitlab.com/nlighten-systems/kompressor-firmware.git
$ cd kompressor-firmware
$ make

The build script compiles and signs the SMCU app code with the dev key and puts it in build/app.bin_signed_dev

Load the firmware

New firmware can be downloaded onto the SMCU using the UART interface. The easy way to load the firmware is to use the sctools app. See more on SCTools