The 1NCE Zephyr Blueprint is a reference application that showcases how to integrate and use various 1NCE OS features with Zephyr RTOS, including:
- ✅ Device Authenticator
- 📡 IoT Integrator
- 🔋 Energy Saver
- 📥 Device Controller for UDP and CoAP-based downlink and real-time remote interaction
- 🧩 Plugin Integrations with partners like Mender for FOTA and Memfault for device observability
It is based on the 1NCE IoT C SDK and runs on Nordic Semiconductor boards.
The Zephyr OS is a scalable, secure, real-time operating system designed for resource-constrained embedded devices — from smart sensors to full-featured gateways.
The demo supports the following Nordic boards:
This guide walks you through:
- Setting up the 1NCE IoT C SDK
- Getting the source code
- Building and flashing the blueprint demo
The 1NCE IoT C SDK provides C-based modules to easily use 1NCE OS services.
Follow these steps:
-
Open
west.yml
:%HOMEPATH%\ncs\v2.8.0\nrf\west.yml
-
Add the module to
name-allowlist
:
Ensurence-sdk
is listed in alphabetical order. -
Activate the SDK via submanifest:
Rename and edit the file:
%HOMEPATH%\ncs\v2.8.0\zephyr\submanifests\example.yaml
manifest: projects: - name: nce-sdk url: https://github.com/1NCE-GmbH/1nce-iot-c-sdk revision: main
-
Run West update:
Open
cmd.exe
and run:cd %HOMEPATH%\ncs\v2.8.0 west update
-
Clone the Blueprint Repository:
git clone https://github.com/1NCE-GmbH/blueprint-zephyr.git
-
Open VS Code and Launch nRF Connect Extension
-
Add the project:
- Click Add Existing Application
- Choose the folder where the blueprint was cloned
-
Create a Build Configuration:
- Select your board target, e.g.:
nrf9160dk/nrf9160/ns
nrf9151dk/nrf9151/ns
thingy91/nrf9160/ns
- Select your board target, e.g.:
-
Flash the board:
- Connect your board via USB
- Click Flash or Debug to deploy the firmware
📖 Need help with board connection?
👉 Nordic Docs: Connect Using Serial Port
To easily test the default setup on the Thingy:91, follow these steps using the provided binaries for the specific demo you'd like to run:
- Remove the plastic cover from the Thingy:91.
- Connect the device to your computer using a micro-USB cable.
- Enter DFU mode:
- Power off the Thingy:91.
- Hold down the black button while switching the power back to ON.
- Open nRF Connect for Desktop and launch the Programmer tool.
- Click SELECT DEVICE and choose Thingy:91 from the dropdown list.
- In the left panel, go to File > Add file > Browse and choose the appropriate
.hex
file from thethingy_binaries
folder of your desired demo. - Scroll down to Enable MCUboot and ensure it is checked.
- Click Write on the left panel, then confirm again in the MCUboot DFU pop-up by pressing Write.
- Wait for the update to finish. A message saying "Completed successfully" will confirm a successful flash.
- 🔐 CoAP Demo Firmware
- 📡 UDP Demo Firmware
- 📥 FOTA with Mender Firmware
- 🛠️ Debug with Memfault Firmware
💡 Note: For Memfault diagnostics and debugging, you should upload zephyr.elf file to the Memfault portal.
Refer to the Memfault documentation for instructions on setting up symbol files and debugging integration. For a faster getting started experience, you can directly use the documentation underplugin_system/nce_debug_memfault_demo
.
📘 For more detailed device guidance, check the official Thingy:91 Getting Started Guide
The blueprint includes the following applications:
Demo Path | Summary |
---|---|
nce_coap_demo |
Secure CoAP communication using DTLS from Device Authenticator, with Energy Saver & Device Controller support |
nce_udp_demo |
Lightweight UDP communication with compressed payloads and Device Controller |
nce_lwm2m_demo |
LwM2M client for LED, buzzer, and sensor control over CoAP/DTLS with support for 1NCE Action API |
plugin_system/nce_debug_memfault_demo |
Device diagnostics and crash reporting using Memfault over the 1NCE CoAP Proxy |
plugin_system/nce_fota_mender_demo |
Firmware-over-the-air updates via Mender.io using the 1NCE CoAP Proxy and secure onboarding |
Open an issue on GitHub for:
- ❗ Bug reports
- 🚀 Feature requests
- 📝 Documentation issues
- ❓ General questions
Made with 💙 by the 1NCE Team.