Skip to content
Live EnviroHub operator console

Projects / IoT, telemetry and measurement systems

EnviroHub air-quality monitoring and edge platform

An ESP32-S3 measurement platform with physical sensors, MQTT 5/TLS, an Edge Gateway and a live operator console. The console shows temperature, humidity, atmospheric pressure, CO2 and O2; Yandex Smart Home, Alice and Yandex Station receive temperature, humidity and pressure through the same data path.

Live system Open the live EnviroHub operator console Current measurements, charts, statistics and MQTT path status.

Engineering article

ESP32, MQTT and Alice: Building Reliable Telemetry Without Open Ports

Architecture, durable storage, failure recovery and a safe path out of the local network.

Read the article

Architecture / data flow

From sensor to Alice: one data path

Telemetry is collected once and reused by the operator console and Yandex Smart Home. The Alice integration needs neither a second MQTT broker nor another telemetry collector.

  1. 01 ESP32-S3 Sensors and versioned telemetry
  2. 02 MQTT 5 / TLS Encrypted transport and availability
  3. 03 EDGE GATEWAY Validation, storage and store-and-forward
  4. 04 HTTPS BRIDGE Outbound idempotent synchronization
  5. 05 SITE READ MODEL Sanitized public projection
  6. 06 YANDEX SMART HOME Read-only provider and OAuth 2.0
  7. 07 ALICE / YANDEX STATION App values and voice responses

Task

What had to be solved

Build a complete indoor-climate monitoring system: from physical sensors and a resilient telemetry path to a live web console, statistics and voice access to measurements.

Result

What the project reached

The complete ESP32-S3 → MQTT 5/TLS → EnviroHub Edge Gateway → outbound HTTPS Public Bridge → website path is operational. The console shows real temperature, humidity, atmospheric pressure, CO2 and O2 together with path diagnostics, history and statistics. Temperature, humidity and pressure are available in Home with Alice and by voice through Yandex Station. Faulty or temporarily unavailable channels are shown as unavailable and are never replaced with synthetic values.

Operating EnviroHub measurement bench: ESP32-S3, sensors and the Edge Gateway
Live EnviroHub operator console with real temperature, humidity and pressure readings

Engineering context

Important constraints

The home network remains closed to inbound connections: the Edge Gateway sends an approved public projection to the website over outbound HTTPS.

Every aggregated record is written to a standard FAT microSD card before MQTT publication and is removed from the delivery queue only after an application-level acknowledgement.

The operator console, analytics and the Yandex Smart Home / Alice / Yandex Station integration reuse one sanitized website read model without a second MQTT broker or a separate telemetry copy.

The system distinguishes a normal reading, a sensor fault, stale data and a lost connection; missing channels are never replaced with invented values.

Work done

What was included

ESP-IDF firmware for ESP32-S3, I2C sensors, SNTP, microSD and MQTT 5/TLS.

Versioned telemetry contract, ACLs, Last Will, application acknowledgements and store-and-forward delivery.

An isolated Raspberry Pi-based EnviroHub Edge Gateway with Mosquitto, SQLite/WAL and systemd supervision.

An outbound HTTPS Public Bridge with idempotent delivery and a separate public projection.

A bilingual operator console with live values, charts, statistics, diagnostics and PIN-protected commands.

A read-only Yandex Smart Home integration that exposes temperature, humidity and atmospheric pressure to Alice and Yandex Station.

Repeatable broker-outage, Edge Gateway reboot, microSD buffering and replay tests.

Details

Engineering project description

Data-path architecture

The ESP32-S3 polls physical sensors, builds aggregated telemetry and sends it to the local MQTT broker over TLS. EnviroHub Edge Gateway validates the contract, commits the data to SQLite and only then returns an application acknowledgement to the device.

The public surface is separated from the home-side path. The Edge Gateway initiates outbound HTTPS requests to vlasovlab.ru, while the website stores only the approved projection required by the console and external integrations. The Raspberry Pi does not need an inbound internet port.

Durability and trustworthy state

The ESP uses write-before-send: a record containing UTC time, sequence and CRC32 is appended to human-readable NDJSON and CSV files on a standard FAT microSD card before publication. After a link outage, the queue is replayed oldest-first when MQTT returns.

The interface does not present a last-known number as a current measurement. Health, freshness and availability are gated separately, so a faulty or not-yet-connected sensor appears as unavailable with an explicit status.

Smart home: Alice and Yandex Station

The public RU/EN console shows end-to-end path state, current channels, time series, a daily summary and engineering diagnostics. Viewing is separated from control: changing settings or sending commands requires the operator PIN.

The same read-only layer is reused by Yandex Smart Home. Temperature, humidity and atmospheric pressure are already available in Home with Alice; Alice answers voice questions through Yandex Station. The physical CO2 channel is now active in the main path and will be added to Alice after its stability is verified.

Current configuration

The active physical path includes the indoor and outdoor SHT45 sensors, a primary BMP390 barometer, a backup BMP58x-family channel, a replacement SCD41 and the O2 channel. Synthetic telemetry is disabled.

CO2 and O2 traverse the complete path from the ESP32-S3 to the operator console and are shown as physical measurement channels.

Contact

Discuss your engineering task

Contact us by email. We discuss custom electronics and automation tasks remotely with companies, labs, small businesses and individual customers worldwide.