Small C tools for monitoring indoor air quality and comparing it with outdoor air quality.
pms: reads data from a local PMS sensor via UART (home/indoor).pms_bt: same aspms, but connects via BLE (HC-08 bridge).airly: fetches outdoor measurements from Airly API.- all write data to MySQL/MariaDB.
- C compiler (
cc/clang/gcc) libcurllibcjson- MySQL/MariaDB client library (
mariadbviapkg-config, ormysql_config) - SimpleBLE C bindings (
pms_btonly)
Example (MacPorts):
sudo port install curl libcjson mariadb pkgconfigCreate src/config.h from the template:
cp src/config.h.example src/config.hFill database credentials, Airly token, coordinates, and device values.
Table structure for stored measurements is in src/schema.sql.
make # builds all tools
make airly # builds only airly
make pms # builds only pms
make pms_bt # builds only pms_btBinaries are generated in bin/.