LW IT Solutions
« Przegląd bloga /Smart Home / ESPHome i ESP32 w praktyce: Własne czujniki...
Ten artykuł w innych językach:

ESPHome i ESP32 w praktyce: Własne czujniki środowiskowe bez chmury

Część 2 z 6 serii Home Assistant bez chmury

ESPHome i ESP32 w praktyce: Własne czujniki środowiskowe bez chmury
Spis treści
  1. ESPHome i ESP32 w praktyce: Własne czujniki środowiskowe bez chmury
  2. 1. Architektura sprzętowa i projekt magistrali I2C
  3. 2. Implementacja oprogramowania za pomocą ESPHome YAML
  4. 3. Izolacja w sieci VLAN i natywne API Home Assistant
  5. Podsumowanie
  6. Pytania i odpowiedzi
  7. Źródła

ESPHome i ESP32 w praktyce: Własne czujniki środowiskowe bez chmury

Komercyjnie dostępne monitory jakości powietrza często opierają się na zamkniętych ekosystemach chmurowych, co generuje opóźnienia, podatności bezpieczeństwa oraz zależność od zewnętrznych serwerów. Zaprojektowanie własnych czujników środowiskowych w oparciu o mikrokontrolery ESP32 i oprogramowanie ESPHome umożliwia pełną lokalną autonomię, sekundową telemetrię i bezpośrednią integrację z Home Assistant. Zastosowanie prawdziwych czujników NDIR (niedyspersyjnej podczerwieni) takich jak Sensirion SCD40 lub SCD30 wraz z modułami LZO (VOC) oraz precyzyjnego pomiaru temperatury i wilgotności dostarcza dane o dokładności laboratoryjnej, które nie opuszczają izolowanej sieci lokalnej VLAN.

1. Architektura sprzętowa i projekt magistrali I2C

Precyzyjny pomiar jakości powietrza wymaga doboru czujników mierzących rzeczywiste stężenia gazów na podstawie fizycznych właściwości, zamiast polegania na matematycznych estymacjach z tanich czujników metalo-tlenkowych. Podłączenie wielu modułów do wspólnej magistrali I2C wymaga odpowiedniego doboru rezystorów podciągających oraz stabilnego zasilania:

  • Sensirion SCD40 / SCD30 (CO2): Działając w oparciu o fotoakustyczną lub optyczną metodę NDIR, moduły te mierzą rzeczywiste stężenie dwutlenku węgla w zakresie od 400 ppm do 5000 ppm z wysoką dokładnością i niskim dryfem w czasie.
  • Moduły VOC i termohigrometrów: Równoległa integracja czujników takich jak Bosch BME680 lub Sensirion SGP40 wraz z SHT40 pozwala na monitorowanie indeksu lotnych związków organicznych oraz skompensowanej temperaturowo wilgotności względnej na tych samych liniach danych 3.3 V I2C (SDA/SCL).
Szkic połączeń: ESP32 połączony przez I²C z czujnikiem SCD40, którego trzy odczyty trafiają szyfrowanym łączem lokalnym do Home Assistanta
Całe urządzenie to dwa przewody i plik konfiguracyjny. To, co mierzy, idzie szyfrowanym łączem prosto do własnej instancji — nic nie nadkłada drogi przez producenta.

2. Implementacja oprogramowania za pomocą ESPHome YAML

ESPHome kompiluje lekki, wysoce zoptymalizowany kod w języku C++ bezpośrednio z uporządkowanych plików konfiguracyjnych YAML. Aktywacja procedur automatycznej kalibracji – takich jak Automatic Self-Calibration (ASC) dla czujników NDIR – gwarantuje długoterminową stabilność linii bazowej bez konieczności ręcznej ingerencji.

# Przykład: Konfiguracja ESPHome dla ESP32 z czujnikiem SCD40 i pomiarem środowiskowym
esphome:
  name: "env-monitor-office"
  platform: ESP32
  board: esp32dev

wifi:
  ssid: "IoT_VLAN_20"
  password: "StrongVLANPasswordHere"

api:
  encryption:
    key: "32CharacterBase64EncodedKey====="

i2c:
  sda: GPIO21
  scl: GPIO22
  scan: true
  frequency: 100kHz

sensor:
  - platform: scd4x
    co2:
      name: "Office CO2"
      accuracy_decimals: 0
    temperature:
      name: "Office Temperature"
      accuracy_decimals: 1
    humidity:
      name: "Office Humidity"
      accuracy_decimals: 1
    update_interval: 30s
    automatic_self_calibration: true

3. Izolacja w sieci VLAN i natywne API Home Assistant

W celu maksymalizacji bezpieczeństwa sieciowego, własnoręcznie zbudowane czujniki ESP32 powinny funkcjonować w dedykowanej sieci wirtualnej IoT VLAN z zablokowanym dostępem do Internetu na poziomie zapory sieciowej. Komunikacja z Home Assistant realizowana jest lokalnie przez natywne API ESPHome (port TCP 6053) z wykorzystaniem szyfrowania Noise Protocol. Architektura ta zapobiega wyciekom danych, zapewniając natychmiastową aktualizację stanów dla systemów sterowania wentylacją mechaniczną, rekuperacją oraz powiadomień o wietrzeniu pomieszczeń.

Podsumowanie

Budowa własnych czujników środowiskowych przy użyciu mikrokontrolerów ESP32, modułów NDIR Sensirion SCD40 i platformy ESPHome eliminuje zależność od chmury oraz zamkniętych silosów danych. Umieszczenie sensorów w izolowanej sieci VLAN i połączenie ich przez szyfrowane, natywne API Home Assistant gwarantuje laboratoryjną dokładność telemetrii, maksymalną prywatność oraz najwyższą stabilność działania.

Pytania i odpowiedzi

Jak zapobiec zawyżonym odczytom temperatury, gdy SCD40 nagrzewa się od ESP32 na tej samej płytce?

Nagrzewanie się czujnika od sąsiednich elementów to częsty problem przy własnych czujnikach i łatwo go rozpoznać: temperatura wyraźnie wyższa niż w pokoju, a za nią zaniżona wilgotność względna.

Pierwsza część rozwiązania jest fizyczna: czujnik na krótkim przewodzie, poza obudową modułu, z otworami zapewniającymi przepływ powietrza i bez umieszczania go nad stabilizatorem napięcia. Sam ESP32 potrafi wydzielać kilkaset miliwatów ciepła, a w zamkniętym pudełku to wystarczy.

Druga część to nastawa: SCD4x ma własne przesunięcie temperatury, ustawiane w ESPHome przez temperature_offset, i kalibruje się je względem termometru odniesienia po kilku godzinach pracy. Nie jest to poprawka wyłącznie kosmetyczna, bo czujnik przelicza z tej temperatury także wilgotność względną; na dokładność pomiaru CO2 przesunięcie według producenta nie wpływa.

Home Assistant bez chmury

  1. Zigbee2MQTT vs. ZHA: Budowa bezawaryjnej sieci Mesh w Home Assistant
  2. ESPHome i ESP32 w praktyce: Własne czujniki środowiskowe bez chmury
  3. Wykrywanie obecności 2.0: radary mmWave (LD2410/LD2450) w automatyzacji oświetlenia
  4. Lokalne sterowanie głosem w Home Assistant z Whisper i Piper
  5. WireGuard i Tailscale DMZ: Bezpieczny dostęp z zewnątrz do Home Assistant i własnych serwerów
  6. Lokalny system zarządzania energią: Integracja falowników PV i magazynów energii przez Modbus TCP
Lukas Wójcik

Lukas Wójcik

Systems architect and technology enthusiast specializing in scalable tracking solutions, GMP Stack (GA4 & GTM), and robust backend architectures. Advocate for clean code and privacy-first design.

Get in Touch

Briefly describe your project or inquiry for a tailored response. This site is protected by reCAPTCHA.

Napisanie komentarza

Doświadczenia z innymi urządzeniami lub integracjami oraz pytania o konfigurację są tu mile widziane.

Adres e-mail nie jest publikowany. Pola obowiązkowe oznaczono gwiazdką.

Artykuły i kategorie

CCTV

Śledź tę kategorię przez RSS

Cloud & AI

Wszystkie artykuły w tej kategorii (17) Śledź tę kategorię przez RSS

Data Privacy

Wszystkie artykuły w tej kategorii (19) Śledź tę kategorię przez RSS

Digital Analytics

Wszystkie artykuły w tej kategorii (58) Śledź tę kategorię przez RSS

Digital Marketing

Wszystkie artykuły w tej kategorii (37) Śledź tę kategorię przez RSS

IT & Networks

Wszystkie artykuły w tej kategorii (18) Śledź tę kategorię przez RSS

Music Production

Wszystkie artykuły w tej kategorii (17) Śledź tę kategorię przez RSS

Raspberry Pi

Śledź tę kategorię przez RSS

SaaS & Internet Earning

Śledź tę kategorię przez RSS

Smart Home

Wszystkie artykuły w tej kategorii (18) Śledź tę kategorię przez RSS

Tworzenie stron internetowych

Wszystkie artykuły w tej kategorii (11) Śledź tę kategorię przez RSS

Wtyczki i triki WordPress

Wszystkie artykuły w tej kategorii (14) Śledź tę kategorię przez RSS