The CO2-Lights serves as a showcase application that highlights the versatility of the MVP3000 framework. This implementation uses the sensor module and the LED module. It features a custom landing page accessible via any smartphone or browser. The page provides real-time ambient CO2 concentration data alongside a historical graph, which updates automatically through WebSocket.
Hardware
The original CO2-Ampel was developed by purecrea GmbH and is available via Bastelgarage.ch and co2ampel.ch. The official firmware is open source and available on GitHub.
Specifications:
- ESP8266 micro controller
- Sensirion SDC30 CO2 sensor, additionally measuring temperature and relative humidity.
- WS2812B strip with 12 LED
- Photo resistor as ambient light sensor
- Push button
MVP3000 Implementation
The implementation consists of two main components: the main script and a web display for the end-user. The MVP3000 framework manages essential tasks such as data processing, connectivity, and communication.
The main script on the ESP8266 delivers core functionality by initializing the CO2 sensor, conducting measurements, and passing the collected data to the framework. It also defines CO2 concentration thresholds for LED color indicators and handles sensor calibration upon user request.
The web display for end-users, hosted on the ESP8266, provides an intuitive landing page that displays current CO2 concentration and a recent data graph, with live updates via WebSocket. All MVP3000 framework and modules settings are still available but moved to a sub-URL. Images and content of the landing page are packaged using available tools, allowing them to be seamlessly embedded within the main script on the ESP8266.
GitHub Repositories
Built around readily available low-cost ESP8266/ESP32 micro controller and open libraries, the MVP3000 framework itself and the CO-Lights implementation are open-source and licensed under the Apache 2 license.
MVP3000 repository on
GitHub (Apache 2 license).
– and –
CO2-Lights repository on
GitHub (Apache 2 license).