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.

Projects / IoT, telemetry and measurement systems
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.
Architecture, durable storage, failure recovery and a safe path out of the local network.
Architecture / data flow
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.
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.
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.
Engineering context
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
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
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.
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.
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.
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
Contact us by email. We discuss custom electronics and automation tasks remotely with companies, labs, small businesses and individual customers worldwide.