Skip to content
Air quality modules with Nordic nRF52840. Thread network (OpenThread). TheThingsIO. Sensirion. SPEC Sensors. ST Microelectronics.
C Makefile C++ Batchfile
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

Image of Cellabox

Cellabox is an Open Source Air Quality Project. According to the WHO, air pollution from both outdoor and indoor sources represents the single largest environmental risk to health globally. Help to solve the air quality problem and join Cellabox! Better Air Quality Through Better Data.

This repository contains firmware (C code) for nRF52840 with a Thread network implementation (OpenThread) and a connection to the cloud platform of thethings.iO.

We don't have any sponsors or supporters. We very much appreciate if you were able to use some of our code and want to say thank you:


(c) 2017-2018 Cellabox, all rights reserved.

Cellabox FW concept

IMPORTANT: there is only one single FW build for all modules (the so called Cellaboxes). The FW initializes itself depending on the module identity (ID = [0...63]. Which IO pins are used for the module ID? - here is the pinout.

List of sensor modules

Climate Module

Indoor Air Quality Module

Outdoor Air Quality Module

Indoor PM2.5 Module

Outdoor PM2.5 Module

Define your own Module

  • ID = ???
  • Sensors = ???
  • ??? Module Wiki

List of sensors

The firmware supports different sensors:

How to get started

How to define your own module

  1. Contact Reto Keller about your module
  2. Reserve a module ID number with adding your sensor to the list of modules above.
  3. If you are planning to implement a new sensors: add the sensor to the list of sensors.
  4. Add a page with the module description to the Wiki
  5. Add a folder with your schematic like this: cellabox/hw/kicad/id=?_sensor-name/. Draw your schematic with the free and open source ECAD KiCAD.
  6. Implement your module and sensors on the nRF52840.
  7. Once tested, commit your changes to this repository.


Track TODOs and tasks on Github — Cellabox Project.

If you hard code something or you have to continue there later — write TODO in the comment and start a task in the Cellabox Project. Also start a Cellabox Project task to describe future features of your module or the FW in general.


Submit bugs and issues to Github — Issue Tracker.


  • IDE: Eclipse Mars.2 Release 4.5.2. You can find more details here.
  • ECAD: Use KiCAD to draw schematics and PCB designs.


Before you start to contribute or if you have questions, send me an email:


Cellabox is released under the [BSD 3-Clause license]. See the LICENSE file for more information. Please use and reference to Cellabox in case you use this software or part(s) of it.

You can’t perform that action at this time.