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.