Bringing a full BLE 5.2 Stack to tiny Embedded Devices using Contiki-NG

Since its introduction, Bluetooth Low Energy (BLE) has become ubiquitous in the Internet of Things (IoT) context, as it enables a dependable short range wireless communication despite the limited energy expenditure. BLE radios are embedded in IoT devices such as smartphones, home assistants, light bulbs, door locks, and connected health products, just to name a few. While Contiki (and its newer fork Contiki-NG) already come with an IPv6 capable BLE stack for the TI CC2650 platform, the majority of BLE devices makes use of the GATT protocol instead.

We have started its integration with Contiki-NG, and the results are very promising, as this could finally allow Contiki-NG to communicate with GATT devices while keeping its ability to communicate via IPv6 over BLE. As a next step, we would like to take this initial proof of concept to the next level, and include full support for GATT, Mesh, L2CAP and isochronous channels.

Download as PDF

Student Target Groups:

  • - Students of ICE/Telematics;
  • - Students of Computer Science;
  • - Students of Electrical Engineering.

Thesis Type:

  • Master Project / Master Thesis


  • Extend the OS abstraction to support more features like logging and reduce the amount of duplicated functionality;
  • Design and implement an API to expose Bluetooth Mesh functionality in Contiki-NG
  • Design and implement an API that can exploit L2CAP’s Connection-Oriented Channels in Contiki-NG and that is capable of communicating with existing Linux and Zehpyr devices using IPv6;
  • Implement a radio arbiter which can schedule IEEE 802.15.4 packets in addition to the existing BLE communication

Recommended Prior Knowledge:

  • Knowledge of networked embedded systems;
  • Excellent C programming skills;
  • Experience with embedded platforms is a plus.


  • a.s.a.p.