The goal of the development was a sensor module that records environmental data in rooms. These data include temperature, relative humidity, air pressure and carbon dioxide.
The IoT Cube is intended to inspire customers for the Internet of Things.
The RGB LEDs are used to signal an overrating or undershooting of certain limit values.
The data from the sensor module are transmitted via the MQTT protocol to the cloud backend. The data are displayed as measured values or temporal diagrams in the WebApp.
The user logs into the local wireless network via the open WiFi of the IoT Cube and the entered credentials.
Each cube has a unique identifier and sends the climatic data together with the identifier (channel / namespace) via MQTT protocol to the cloud backend.
The data are stored in a database for evaluation at the cloud backend.
The user can log in to the WebApp via the unique identifier of the IoT Cube and the data are displayed live. Depending on the sending window of the cube and the processing time, a certain time may pass before the data are displayed.
The WebApp shows whether the cube is online or not. The last collected data is displayed also if the IoT Cube is not available.
For local processing and WiFi I used the Espressif ESP-WROOM-32 module. The sensors are the CCS811 for carbon dioxide and the BME280 for temperature, relative humidity and air pressure.
The big advantage of the Espressif ESP-WROOM-32 module is the price as well as the very good documentation and the availability of software examples.
The IoT Cube is programmed via the Elektor FT232R USB / Serial Bridge. There is a matching header on the pcb for this task.
The pcb was developed with KiCAD and the components were manually assembled. All was soldered with hot air.