b15ab8063ccb3fb7ab4a5faaebd5834fe3310b89
Muraqib
CO2 sensor that collects and sends its data via MQTT to a server. The board of the sensor is the Wemos S2 mini and the sensor is a SCD41.
Dependencies
Configuration
In the data directory, there is a JSON file that allows the configuration of multiple values:
- ssid: WiFi network name
- psk: WiFi password
- mqtt_host: IP address of the MQTT broker
- mqtt_user: username that has write access on the MQTT broker
- mqtt_password: password for the user that has write access on the MQTT broker
- mqtt_port: port used by the MQTT broker
- mqtt_topic: channel name
- device_id: unique identifier of the sensor
- sleep_time: time interval between each data transmission
- connection_attempts: maximum connection attemps to the network
The file needs to be renamed to config.json
Deployment
The software uses the Arduino framework and the development environment of PlatformIO, which offers better tooling than the official Arduino IDE.
Generate compilation database
pio run -t compiledb
Upload the configuration file to the board
pio run -t uploadfs
Compile the project
pio run -t compile
Upload firmware
pio run -t upload
Description
Languages
C++
73.1%
C
20.5%
Nix
6.4%
