Na integrację z Home Assistant musieliśmy poczekać ponad pół roku od wypuszczenia na rynek nowej serii oczyszczaczy powietrza Xiaomi Mi Air Purifier 3H i 3. Od wersji 0.109 HA jest to nareszcie możliwe. Programiści musieli zaimplementować nowy protokół komunikacyjny Xiaomi MiOT, którym posługują się najnowsze urządzenia firmy Xiaomi. W tym artykule przedstawię instrukcję krok po kroku, co należy wykonać, aby połączyć nasze oczyszczacze z systemem Home Assistant.
Opis integracji
Integrację Xiaomi Mi Air Purifier 3H i 3 zawarto w już istniejącej integracji o nazwie Xiaomi Air Purifier (platforma xiaomi_miio). Dzięki tej samej platformie, można połączyć się ze starszymi modelami Xiaomi Mi Air Purifier 2S i 2.
Dodano dwa nowe modele do listy obsługiwanych urządzeń:
Air Purifier 3 | zhimi.airpurifier.ma4 | |
Air Purifier 3H | zhimi.airpurifier.mb3 |
Oto lista funkcjonalności i atrybutów, które dostarcza platforma dla powyższych modeli:
Na stronie integracji znajdziecie również usługi platformy xiaomi_miio, z jakich można skorzystać w swoich automatyzacjach, np. xiaomi_miio.fan_set_fan_level. Sprawdziłem, działa.
Instrukcja integracji Xiaomi Mi Air Purifier 3H
Przetestowałem dodawanie modelu 3H do Home Assistant w wersji 0.109.2. Opiszę krok po kroku, jakie czynności należy wykonać.
1. Na początek dodaj swój oczyszczacz do aplikacji Xiaomi Home (dawniej Mi Home).
2. Zanim zaczniesz konfigurację w Home Assistant, musisz dowiedzieć się, jakie IP i jaki Token otrzymał twój oczyszczacz. Instrukcja, jak to zrobić, znajduje się w poniższym artykule. Warto również przypisać IP na stałe w ustawieniach routera.
Token Xiaomi, jak go wyciągnąć? Poradnik dla urządzeń WiFi i Bluetooth
3. Jeśli masz Home Assistant w wersji 0.109 lub wyższej, to otwórz edytor pliku configuration.yaml i wklej następującą sekcję:
fan: - platform: xiaomi_miio name: Air Purifier Bedroom #Encja będzie się nazywać: fan.air_purifier_bedroom host: adres_ip_oczyszczacza token: token_oczyszczacza model: zhimi.airpurifier.mb3 #Opcjonalne, ale warto dodać. #Dla 3H: zhimi.airpurifier.mb3 #Dla 3: zhimi.airpurifier.ma4
Teraz uruchom ponownie Home Assistant (mnie zadziałało dopiero po dwóch restartach).
Po uruchomieniu powinna być dostępna nowa encja. Możemy włączyć/wyłączyć urządzenie, ustawić tryb pracy oraz zobaczyć aktualne wartości wielu atrybutów. Inne akcje możliwe są dzięki skorzystaniu z usług platformy xiaomi_miio.
4. Jeśli chcecie na podstawie encji oczyszczacza utworzyć różne sensory, to należy użyć w tym celu platformy template. W pliku configuration.yaml dodaj linijki w sekcji sensor.
sensor: - platform: template sensors: air_purifier_bedroom_aqi: friendly_name: "PM2.5" unit_of_measurement: 'μg/m³' value_template: "{{ state_attr('fan.air_purifier_bedroom', 'aqi') }}" air_purifier_bedroom_temperature: friendly_name: "Temperature" unit_of_measurement: '°C' value_template: "{{ state_attr('fan.air_purifier_bedroom', 'temperature')|float|round(2) }}" air_purifier_bedroom_humidity: friendly_name: "Humidity" unit_of_measurement: '%' value_template: "{{ state_attr('fan.air_purifier_bedroom', 'humidity') }}" air_purifier_bedroom_speed: friendly_name: "Mode" value_template: "{{ state_attr('fan.air_purifier_bedroom', 'speed') }}" air_purifier_bedroom_favorite_level: friendly_name: "Favorite Level" value_template: "{{ state_attr('fan.air_purifier_bedroom', 'favorite_level') }}" air_purifier_bedroom_motor_speed: friendly_name: "Motor Speed" unit_of_measurement: 'rpm' value_template: "{{ state_attr('fan.air_purifier_bedroom', 'motor_speed') }}"
Wybrałem tylko te, które mnie interesują. Po ponownym uruchomieniu Home Assistanta będziesz miał nowe encje sensorów do dyspozycji. Możesz je np. wyciągnąć w swoim panelu do karty Encje lub karty Sensor (aby zobaczyć wykres wartości).
Źródło: xiaomi_miio
Xiaomi 3H – wykorzystajcie kupon oraz kod, aby kupić go w cenie 487,35 zł!
strasznie rzadko odświeża mi się na karcie informacja z sensora o pm 2.5 :/
A ja zapytam o jedną rzecz. Dziś przyjechał, podłączyłem, działa. Integracja z HA również..
Ale jak z poziomu HA, sterować pracą oczyszczacza? Np zmienić tryb pracy, prędkość wiatraka itd ? Póki co mogę go tylko włączyć/wyłączyć i poczytać parametry…
Dobrze że ukryłeś lokalne IP tego oczyszczacza bo bym ci się włamał..
Nie mam w apce tokena – jak to wyciągnąć??
Hej, tu masz poradnik 🙂 – https://smartme.pl/token-xiaomi-jak-go-wyciagnac-poradnik-dla-urzadzen-wifi-i-bluetooth/
Hey Michał , thanks for the nice article. Now that you can hook up 3H to HA, do you still use the automation rules from within the Xiaomi app described in the previous article or you’ve moved the management to HA? I’m asking because I’ve defined the same rules and for example it can take the device hours staying in a <10 value before it turns off and I've never observed it so far to turn on automatically based on the rules. Either there is some huuuge lag or the rules don't work at all for me. 🙁
Is there a way to switch back the purifier to auto via HASS? I see how to set the levels manually, but not sure how to switch it back to auto.