Modyfikacja czujnika Xiaomi Mi Temperature and Humidity Monitor 2 na Zigbee

Xiaomi Mi Temperature and Humidity Monitor 2 to czujnik temperatury z wyświetlaczem LCD, jednak ze względu na zastosowanie standardu Bluetooth nie jest możliwe połączenie go z platformą SmartThings. W tym poradniku zmodyfikujemy nasz czujnik tak, aby działał w standardzie Zigbee. Co najlepsze nie musimy nic kupować, wystarczy komputer z przeglądarką i nasz czujnik!

Co jest potrzebne?

  • Czujnik LYWSD03MMC
  • Bateria CR2032
  • Drucik metalowy
  • Komputer z przeglądarką Chrome, Edge lub Opera. Obsługa Bluetooth i Wi-Fi
  • Hub Zigbee np. Aeotec SmartHome Hub
  • Pliki z oprogramowaniem
  • 20 minut wolnego czasu

Przygotowanie

  • Uruchamiamy nasz czujnik i nie parujemy go z aplikacją Xiaomi Home lub go z niej usuwamy,
  • Pobieramy pliki: ATC_ota_40000.bin oraz z03mmc.bin https://github.com/devbis/z03mmc/releases,
  • Uruchamiamy „Flags” w przeglądarce na komputerze. Polecenia wklejamy w pasek adresu i wybieramy opcje „włącz”, następnie restartujemy przeglądarkę,
    • Google Chrome: chrome://flags/#enable-experimental-web-platform-features
    • Microsoft Edge: edge://flags/#enable-experimental-web-platform-features
    • Opera: opera://flags/#enable-experimental-web-platform-features

Modyfikacja

  1. Wchodzimy na stronę: https://pvvx.github.io/ATC_MiThermometer/TelinkMiFlasher.html,
  2. Klikamy „Connect”, z listy wybieramy urządzenie: LYWSD03MMC i klikamy „Paruj”,
  3. Po połączeniu wybieramy Do Activation i wybieramy pierwszy plik ATC_ota_40000.bin przez opcje Choose File,
  4. Klikamy Start Flashing,
    • UWAGA: Proces może potrwać kilka minut, nie wolno wyciągać baterii lub zamykać przeglądarki!
  5. Po sflashowaniu pokaże się jego wynik w konsoli. Wyciągamy baterie i przechodzimy na drugą stronę: https://devbis.github.io/telink-zigbee/,
  6. Ponownie wkładamy baterie i łączymy urządzenie jak w punkcie 2, tylko tym razem urządzenie nosi nazwę ATC_XXXXXX,
  7. Wybieramy opcje Choose File i zaznaczmy plik z03mmc.bin,
  8. Ponownie zaczynamy flashowanie, klikamy Start Flashing. UWAGA: Proces może potrwać kilka minut, nie wolno wyciągać baterii lub zamykać przeglądarki!
  9. Po zakończeniu flashowaniu, przechodzimy do parowania.

Parowanie z SmartThings

  1. Zwieramy dwa piny (GND i RESET) pod pokrywą baterii na ok. 3 sekundy,
  2. Wybieramy wyszukiwanie w pobliżu w aplikacji SmartThings,
  3. Czujnik powinien zostać wykryty jako wielofunkcyjny.
Zalety modyfikacji:
  • Większy zasięg
  • Szeroka kompatybilność z systemami inteligentnych domów
  • Dodatkowe opcje
Wady modyfikacji
  • Czas pracy na baterii
  • Brak kompatybilności z Xiaomi Home

Podsumowanie

Gotowe! W ten sposób zmodyfikowaliśmy nasze urządzenie do współpracy z platformą SmartThings, ekosystemem HomeAssistant. Zmodyfikowane oprogramowanie umożliwia nam m.in. zmianę danych na wyświetlaczu tak, aby pokazywał np. godzinę (więcej przeczytacie tutaj. Możliwość konfiguracji ekranu tylko podczas połączenia z komputerem-po wgraniu ostatniego pliku nie można już połączyć czujnika z komputerem). W aplikacji SmartThings w zakładce ustawienia urządzenia możemy ustawić różnice między temperaturą na wyświetlaczu a wskazaniami w aplikacji.

W razie problemów służę pomocą w komentarzach.

25 myśli na temat “Modyfikacja czujnika Xiaomi Mi Temperature and Humidity Monitor 2 na Zigbee

    1. Niestety nie znalazłem informacji na temat modyfikacji tego modelu. Możliwe, że chip w tym czujniku nie ma takiej możliwości.

      Polubienie

  1. Masz zły link do dokumentacji w podsumowaniu. Jest jakiś sposób żeby zmienić utawienia czujnika? Po flashowaniu z bluetooth na zigbee nie mam już jak się z nim połączyc w tych narzedziach, a Smartthing nie daje wszystkich opcji – chcę wyłączyć ekran czujnika.

    Polubienie

    1. Cześć, link już zmieniłem, dziękuję za poprawkę. Faktycznie mój czujnik nie łączy się z komputerem po wgraniu ostatniego pliku. Nie zwróciłem na to uwagi wcześniej. Niestety nic już nie zrobisz. Musiałbyś zrobić flash po UART, a z tym trochę roboty. Słuszna uwaga zaraz dodam to do artykułu.

      ps. nie wiem czy jest opcja wyłączenia ekranu czujnika.

      Polubienie

    2. Znalazłem opcje wyłączenia ekranu. Wyjmij i włóż bateria za którymś razem ekran zgaśnie, a odczyty w ST zostaną. Możesz pobawić się, również stykami GND i RESET.

      Polubienie

  2. witam, dzięki. Teraz pytanie… jak często jest wysyłane info o temperaturze do koordynatora? niestety z innymi po zigbee mam ten problem ze ne nadają się o automatyzacji z termostatami bo za rzadko wysyłają temperaturę. Tutaj w tym wypadku widzę światełko w tunelu 🙂 dodatków czy chodzi na http://zigbee2mqtt.io, z tego co widzę to jest 😉 No i zakupiłem również wersje Xiaomi Monitor 3, dla niej tez cos się znajdzie? z góry dzięki 🙂

    Polubienie

    1. Witam, dane o temperaturze przesyłane są co ok. 1,5 minuty. Wilgotność częściej. Czy działa na zigbee2mqtt nie wiem. Nie mam jeszcze serwera do HA i Dongla Zigbee, żeby to sprawdzić. Do modyfikacji 3 nic nie znalazłem, ale wydaje się bardzo ciekawa, z względu na większy ekran. Nie wiem czy wogule będzie można ją zmodyfikować z względu na to jaki chip znajduje się w środku.

      Polubienie

      1. Witam z tego co czytam to nie działa przerobienie na zigbee z najnowszym softem, wiec nie przerobie na zigbee , a wczoraj zamówiłem

        Polubienie

      2. Ciężko powiedzieć jaki soft dostaniesz w Czujniku. Wersja jest tymczasowo nieobsługiwana przez sposób w poradniku, modyfikacja przez UART powinna działać. Miejmy nadzieję, że autor doda aktualizacje.

        Polubienie

      3. a jakiś konkretny poradnik jak to przez UART zrobić? bo niby cos w necie jest ale nie wiem czy próbować pierwszy lepszy sposób..

        Polubienie

  3. Witam,

    dzięki za pokazanie modyfikacji. Zadziałało, niestety potem musiałem zresetować hub’a i czujnik już nie łączy się. Aplikacja w ogóle nie znajduje czujnika. Próbowałem wyciągać baterię, zwierałem piny i nic nie zadziałało. Jest jakiś sposób na naprawę? Dzięki za odpowiedź.

    Polubienie

    1. U mnie wystarczyło usunięcie czujnika z aplikacji, wyjęcie baterii na dłuższą chwilę i zwarcie pinów na 3 sekundy. Za pierwszym razem się nie udało. Okazało się, że mój drucik do zwierania ma gdzieś przerwę w środku. Po kilku próbach poszło i działa. Włącz w ST opcje automatycznego dodawania urządzeń. Być może sam się odnajdzie i doda.

      Polubienie

      1. Dzięki!!! Włączyłem automatyczne dodawanie, kilka razy zwarłem piny po wyciągnięciu baterii, powkurzałem się, że zmieniło sie na Fahrenheity i udało się!!!

        Jeszcze raz dziękuję!

        Wcześniej, bez kozery napiszę, że kilkadziesiąt razy próbowałem połączyć tak jak opisałeś w artykule, ale bez automatycznego dodawania i nie udawało sie.

        Pozdrawiam!!!

        Polubienie

      2. Dzięki!!! Ustawiłem automatyczne dodawanie i po kilku próbach wyciągnięcia baterii i zwarcia pinów oraz wkurzania sie że zmieniło sie na Fahrenheity udało się. Wcześniej, bez kozery napiszę, że próbowałem kilkadziesiąt razy, ale bez automatycznego dodawania nie udało się, a teraz praktycznie od razu.

        Pozdrawiam!!!

        Polubienie

      3. Cieszę się, że udało Ci się rozwiązać problem! Miłego użytkowania.

        Pozdrawiam wzajemnie!

        Polubienie

  4. Cześć, również udało mi się przestawić Termometr na Zigbee i połączyć z Bramka Tuya, dalej chciałem sobie wrzucić urządzenia na google home ale widzę że jest tylko opcja z Alexa. Czy to jest kwestia oprogramowania? Czy jest jakaś wersja też ma google home?

    Pozdrawiam

    Polubienie

    1. Cześć! To kwestia aplikacji Tuya. Ja łącze czujnik z centralą SmartThings i jest on widoczny w aplikacji Alexa i Google Home.

      Polubienie

  5. witam,

    czy jest możliwość aby po modyfikacji ten czujnik pokazywał temperaturę z wartościami po przecinku w aplikacji Smart Life? Wszystko działa po zigbee lecz niestety aplikacja zaokrągla wszystko bez miejsc dziesiętnych co czyni ten czujnik mało wartościowym – chciałem aby sterował głowicą grzejnika w zakresach 21,8-22,2 st. Pozdrawiam

    Polubienie

    1. Tu Ci nie pomogę, bo nie mam tego czujnika sparowanego z bramką Tuya. Są bardzo podobne czujniki dedykowane do Tuya. Na Bluetooth, czy Zigbee. Są całkiem ok, jednak czas pracy jest zdecydowanie krótszy niż tego.

      Polubienie

  6. Cześć, wszystko się udało zgodnie z poradnikiem, jednak na ekranie czujnika teraz mam temperaturę w farenheitach. Jak mogę to poprawić? 🙂 Pozdrawiam!

    Polubienie

    1. Cześć! Cieszę się, że poradnik się przydał.
      Co do zmiany jednostek, to pokombinuj z zwieraniem styków od parowania, np. przytrzymaj je przez kilka sekund. Za którymś razem powinno się zmienić. Też miałem taki problem, ale w końcu się udało.
      Pozdrawiam wzajemnie 🙂

      Polubienie

      1. Dzięki, to działa – dla potomnych, trzeba zewrzeć na jakieś 2 sekundy, wtedy zmienia skalę. Jestem na kolejnym kroku, tym razem pomimo integracji SmartThings z Home Assistant, czujnik nie wyświetla się w HA jako urządzenie. Czy szedłeś z tym też dalej, próbując wyświetlić czujnik w HA? Inne urządzenia Samsunga (typu lodówka czy piekarnik) które są dostępne w SmartThings również automatycznie pojawiają się w HA.

        Polubienie

      2. Tak, czujnik jest widoczny w Home Assitant. Odczytuje temperaturę i wilgotność. Używam oficjalnej integracji ST w HA.

        Polubienie

      3. Faktycznie, u mnie wymagane było odświeżenie integracji (opcja „wczytaj ponownie”) na poziomie widoku urządzeń SmartThings z HA i czujniki się pojawiły 🙂

        Polubione przez 1 osoba

Dodaj komentarz