On this page
Overview
Contiki-NG is a cross-platform operating system for next-generation IoT devices focused on dependable low-power networking. It integrates standards including IPv6/6LoWPAN, RPL, TSCH, and CoAP and supports development on physical hardware, a native host target, and the Cooja network simulator.
Features and best fit
Based on official documentation; not hands-on tested · Content checked:
Key features
Integrate an IPv6 networking stack for constrained devices
IPv6/6LoWPAN, RPL, TSCH, CoAP, and related IoT protocols are integrated into the OS for C applications on sensor nodes and border routers.
Sources: [1]
Test with the native target and Cooja before using hardware
Examples such as hello-world build with TARGET=native, while Cooja can simulate multi-node network scenarios for development and testing.
Use 5.2 additions including EDHOC, NAT64, TrustZone-M, and RISC-V
Version 5.2 adds EDHOC (RFC 9528), NAT64 for IPv6-only networks, Arm TrustZone-M support, and nRF54L15 support including its RISC-V coprocessor.
Sources: [5]
Best fit
Fits low-power IoT networking and embedded systems research or development
It is suited to wireless sensor networks, border routers, constrained devices, education, and experiments using protocols such as 6LoWPAN, RPL, and TSCH.
Sources: [1]
Before adoption
Prepare target-specific compilers, programmers, and USB access
Physical targets can require ARM, MSP430, or other toolchains plus board-specific programming tools. The official Docker environment provides an alternative close to CI.
Pin the release source together with its submodules
The setup guide recommends cloning first and then running git submodule update --init --recursive. Pin release 5.2 instead of following the moving develop branch.
Review platform-specific limitations in release 5.2
The 5.2 notes list TSCH as unsupported on nRF54L15 and document association reliability limitations on Gecko/EFR32, so validate the selected radio and platform on hardware.
Sources: [5]
Official sources
- [1]Contiki-NG 5.2 README(2026-10-03)
- [2]Contiki-NG 5.2 Docker guide(2026-10-03)
- [3]Contiki-NG 5.2 Linux toolchain guide(2026-10-03)
- [4]Contiki-NG hello-world tutorial(2026-10-03)
- [5]Contiki-NG 5.2 release(2026-10-03)
- [6]Contiki-NG BSD-3-Clause license(2026-10-03)
Supplemental curator note
Contiki-NG is useful when IoT networking should be developed across both simulation and physical devices. Validate application and protocol behavior on the native target or Cooja first, then move to board-specific compiler, radio, and programming constraints.
Try it in 3 steps
- 1
Clone the Contiki-NG 5.2 release branch
Pin the 5.2 release source instead of following the moving develop branch.
git clone --depth 1 --branch 'release/v5.2' https://github.com/contiki-ng/contiki-ng.git && cd contiki-ng - 2
Initialize submodules and build native hello-world
Build the smallest example against the host native target without requiring a board-specific compiler.
git submodule update --init --recursive && make -C examples/hello-world TARGET=native - 3
Run the native binary
Confirm Hello World and network initialization on the host. Stop with Ctrl-C; physical boards require their platform-specific toolchains.
./examples/hello-world/build/native/hello-world.native
Growth
Growth trends · Last 30 days
1,532 Stars
Trend data is still being collected.
Development activity
Last 90 days · weekly
- Commits (last 30 days)
- 139
- Open PRs
- 62
Development activity is still being collected.
Built with
Categories and tags
Categories
GitHub data
GitHub dataView detailed GitHub data
GitHub Topics
- iot
- contiki-ng
- wsn
- 6lowpan
- 6lowpan-border-router
- rpl
- tsch
- 6tisch
- Stars
- 1,532
- Forks
- 776
- Watchers
- 80
- Open issues
- 220
- Contributors
- 226
- Owner type
- Organization
- Primary language
- C
- License
- BSD-3-Clause
- Repository last updated
- Sep 30, 2026
Related information
Write a related articleShare a guide or use case for this OSS in Markdown. Articles are published after administrator approval.
Explore next
- Arduino-ESP3217,463 Stars
2 shared tag(s) · 1 shared category(s)
develop for the ESP32 SoC family with the official Arduino core, libraries, board definitions, and integrated Espressif toolchains
C++ - OBS Studio76,908 Stars
2 shared tag(s) · Same language
Compose camera, screen, game, and media sources into scenes and drive recordings or live streams through real-time encoders
C - tmux49,629 Stars
2 shared tag(s) · Same language
manage persistent terminal sessions, windows, and panes
C - ImageMagick17,580 Stars
2 shared tag(s) · Same language
turn image conversion, editing, and composition into reproducible CLI/API pipelines
C - Fluent Bit8,130 Stars
2 shared tag(s) · Same language
collect, transform, buffer, and route logs, metrics, and traces
C - GIMP6,468 Stars
2 shared tag(s) · Same language
open-source raster editing with expanded non-destructive workflows in the 3.2 series
C
Report incorrect information
Tell us if any listing information is incorrect or outdated.