W gałęzi rozwojowej ESPHome jest już platforma mics_5524 dla czujnika MiCS-5524, czyli niewielkiego czujnika MEMS, który reaguje na kilka gazów. Chodzi o tanie moduły analogowe na 5 V z polami VCC, GND, A0 i EN oraz o płytkę DFRobot Fermion, z której je skopiowano. Autor, nliaudat, podzielił pracę na dwie zmiany: pierwszą scalono 16 października 2026, drugą 17 października, a obie przejrzał bdraco. Równocześnie dokumentacja trafiła do gałęzi next serwisu esphome.io. Platforma wejdzie do ESPHome 2026.11, a testowe kompilacje obejmują ESP32, ESP8266 i RP2040.

Jedno wyjście, pięć gazów

Moduł ma jedno wyjście analogowe, które reaguje na kilka gazów redukujących. Jeden wpis mics_5524 odpowiada jednemu fizycznemu czujnikowi. Odczytuje napięcie raz na update_interval (domyślnie co 30 s) i dla każdego wymienionego gazu publikuje osobny czujnik. Do wyboru są tlenek węgla, wodór, etanol, amoniak i metan.

Dokumentacja nie owija w bawełnę. MiCS-5524 nie nadaje się do zastosowań związanych z bezpieczeństwem, nie odróżnia tych gazów od siebie, poszczególne egzemplarze bardzo się różnią, a każdą wartość trzeba traktować jako szacunek. Sprawdzi się przy wykresach zmian i eksperymentach z jakością powietrza, ale nie zastąpi certyfikowanej czujki tlenku węgla.

Dwa sposoby przeliczania napięcia na ppm

Domyślny model, conversion: dfrobot, odtwarza bibliotekę DFRobot_MICS, z którą sprzedawany jest moduł. Sprawdza, o ile napięcie na wyjściu jest niższe od zasilania, i porównuje to z tą samą wartością zmierzoną w czystym powietrzu. Model conversion: datasheet liczy stężenie z rezystancji czujnika według krzywej potęgowej. Gotową krzywą ma tylko tlenek węgla. Odczytano ją z wykresu w karcie katalogowej SGX, a sama karta nazywa ten wykres orientacyjnym. Dla pozostałych gazów trzeba podać własne coefficient_a i coefficient_b.

Oba modele potrzebują punktu odniesienia z czystego powietrza. Można go wpisać na stałe (air_reference: albo r0:) albo zlecić komponentowi pomiar po starcie w sekcji calibration:, z zapisem w pamięci flash. Grzałka domyślnie nagrzewa się 3 minuty, a nowy moduł dokumentacja radzi wygrzewać przez 24 godziny. Podczas kalibracji czujnik musi stać w czystym powietrzu, bo zmierzona wtedy wartość staje się punktem wyjścia dla wszystkich późniejszych odczytów.

Podłączenie

Wyjście analogowe daje do 5 V, więc przed pinem ESP32 potrzebny jest dzielnik napięcia. Platforma może brać odczyt z istniejącego czujnika adc albo ADS1115 (voltage:) albo sama utworzyć czujnik ADC (pin:, z voltage_divider: i opcjonalnym enable_pin: dla pola EN, które działa stanem niskim). Przy sprawdzaniu konfiguracji ESPHome odrzuci połączenie, przy którym na pin trafiłoby więcej, niż zniesie przetwornik. W klasycznym ESP32 przy domyślnym tłumieniu 12db zakres wynosi około 2,45 V, więc dzielnik 10k/20k ze schematu producenta nie pasuje do źródła pin:. Dokumentacja proponuje dzielnik 22k/20k, który obniża 5 V do 2,38 V.

Opcjonalne czujniki diagnostyczne pokazują napięcie, stosunek i rezystancję czujnika. Przydają się, gdy wyniki w ppm wyglądają podejrzanie.