C++ MQTT Sensor Firmware

C++17 Embedded Firmware Simulator — CSIR EOI No. 8121/10/02/2026

Technology Stack

C++17 CMake 3.16+ Eclipse Paho MQTT Google Test Docker nlohmann/json

Docker Pull & Run

docker pull aineximeoi/eoi2-firmware:latest

# Run in console mode (10 sensor readings)
docker run --rm aineximeoi/eoi2-firmware:latest \
  --stdout --count 10 --interval 1000 --station WS001 --verbose

# Run unit tests (44 tests)
docker run --rm aineximeoi/eoi2-firmware:latest \
  sh -c "cd /app/build && ctest --output-on-failure"

Sample Output

Loading firmware output...

Features

✓ OOP sensor hierarchy (Temperature, Humidity, Pressure, Wind)
✓ MQTT 3.1.1 protocol (CONNECT → PUBLISH → DISCONNECT)
✓ JSON-formatted sensor payloads
✓ Configurable publish intervals
✓ Multi-threaded sensor data publishing
✓ Smart pointer memory management
✓ 44 unit tests with Google Test
✓ CMake cross-platform build system