Oficjalne aplikacje
Mi Home/Xiaomi Home
Android >=4.4
https://play.google.com/store/apps/detai...home&hl=pl
iOS >=9.0
https://apps.apple.com/pl/app/mi-home-xi...23480?l=pl
oraz alternatywy
MijiaTemp obsługuje też inne modele np. budzik QingPing czy zegarek LYWSD02, interfejs wygląda koszmarnie, ale funkcje ciekawe (szczególnie po wykupieniu dodatkowych licencji)
https://play.google.com/store/apps/detai...iabt&hl=pl
Mijia Reader
https://play.google.com/store/apps/detai...ader&hl=pl
Mijia Temperature (ta wspiera tylko ten model termohigrometru), za to stosunkowo nowa jakkolwiek "u mnie nie działa" tj. znajduje czujniki z fabrycznym softem, ale z nich nie czyta danych, za to ma ciekawe funkcje (np. eksport do excela)
https://play.google.com/store/apps/detai...emp2&hl=pl
W kwestiach związanych z oficjalnym ekosystemem, myślę że warto zajrzeć na zaprzyjaźnione forum:
https://xiaomifans.pl/forum/7-xiaomi-home/
Tips'n'tricks
Integracja "nieoficjalna"
w HA
https://github.com/custom-components/sensor.mitemp_bt
update: nowy link, nowa nazwa "Passive BLE Monitor integration"
https://github.com/custom-components/ble_monitor
"oficjalna"
https://www.home-assistant.io/integrations/mitemp_bt/
(chyba nigdy nie używałem)
Integracja z ESPHome (edit5?+6 już się nie mogę doliczyć) obecnie wspierane jest firmware fabryczne oraz dwie alternatywy: ATC1441 (już z dowolnymi ustawieniami, więc po wymianie baterii nie jest wymagana interwencja, bo można pozostawić czujnik w domyślnym trybie dla firmware alternatywnego) i PVVX - obecnie (początek 2022) daje ono największe możliwości wykorzystania tych tanich termohigrometrów (ora paru innych modeli)
https://esphome.io/components/sensor/xiaomi_ble.html
Nieoficjalna aplikacja (de facto to przeróbka apki fabrycznej, ale pozbawiona m.in. blokad regionalnych, czy umożliwiająca poznanie klucza parowania potrzebnego do komunikacji)
https://www.kapiba.ru/2017/11/mi-home.html
aby zdobyć token, czy klucz parowania oprócz instalacji i nadania uprawnień apce, należy utworzyć katalog:
[główna_pamięć_współdzielona]/vevs/logs
czyli przykładowo u mnie jest to
/storage/emulated/0/vevs/logs
po przygotowaniu sobie w ten sposób "środowiska" pracy uruchamiamy modowane Xiaomi Home i parujemy czujnik w zwykły sposób (jeśli nadgorliwie mamy już sparowany to warto go usunąć i dodać ponownie)
w utworzonym katalogu po tych czynnościach znajdziemy plik pairings.txt
a w nim po 4 linie na każdy sparowany czujnik tego typu
nas interesuje Mac: (MAC-adress) oraz Bindkey: (klucz parowania) - potrzebne do konfiguracji wspomnianej nieoficjalnej integracji w HA
(oczywiście ten klucz można zdobyć też w inny sposób, ale jestem leniem, więc wybrałem najwygodniejszą metodę dla mnie).
Czujnik nie jest zaprojektowany do pracy na zewnątrz pomieszczeń, ale dysponując lakierem do impregnacji PCB (np. Plastik70) i jakimś alkoholem (sugeruję IPA) do usunięcia resztek topnika oraz podstawowymi narzędziami (potrzebny Torx
T8? T4, jakiś otwieracz do plastikowych obudów i taśma klejąca do zabezpieczenia wybranych miejsc PCB przed lakierem) można się pokusić o próbę wydłużenia żywotności w niesprzyjających warunkach. Warto mieć przynajmniej 2 egzemplarze, by móc po impregnacji sprawdzić, czy nie uszkodziliśmy sensora… tzn. głównie po to by sprawdzić czy modyfikacja nie wpłynęła na wskazania (chociaż przypuszczam, że zalanie okienka sensora lakierem nie pozostanie niezauważone nawet bez porównań z czujnikiem odniesienia), jeśli się zbiorę na taką modyfikację, to postaram się zrobić jakieś zdjęcia.
Aktualizacja: z 2 testowo umieszczonych na zewnątrz niezaimpregnowanych czujników jeden już ma problemy z komunikacją BT (po około pół roku pracy) wymiana baterii nie naprawiła problemu, swoją drogą stracił kontakt raportując 100% baterii.
aktualizacja 2 - po wysuszeniu wrócił do życia
aktualizacja 3 - jednak po zmianie softu na nieoficjalny raportuje jedynie 74% baterii (czyli nieoficjalny soft może ciekawiej raportować stan baterii, jakkolwiek nie stosowałem jeszcze w nich ogniw Maxell, więc nie mam porównania), możliwe, że styki baterii nieco zaśniedziały a ich nie oczyściłem dokładnie?
aktualizacja 4 - po przeflaszowaniu kilku urządzeń już "wiem wszystko" - w punkcie 3 sprzęt pracował już jakiś czas i bateria byłą częściowo zużyta przed zmianą softu, swoją drogą prawdopodobnie ogniwa Maxell nie są specjalnie topowe - po wymianie na nowe 100% utrzymuje się zaledwie przez kilka dni, potem stabilizuje się z powolnym spadkiem w okolicach 80% (
ale to może być tez kwestia niedoróbek w nieoficjalnym firmware atc1441 obecnie używam wersji pvvx i takie wskazanie jest intencjonalne - 80% odpowiada 100% na sofcie fabrycznym, co daje dokładniejszą informację o jakości ogniw), w każdym razie używam ich za krótko by znać z grubsza charakterystykę rozładowania (a zmiany firmware nie sprzyjają takim testom, jakkolwiek na fabrycznym firmware nie ma mowy o jakiejś wiedzy co się dzieje z ogniwem - o czym niżej); kolejny test będzie z wykorzystaniem ogniw "GP Lithium" (o ile nie zużyję ich w ikeowskich pilotach).
Tak to wygląda po 1,5 tygodnia pracy (w żadnej innej instalacji aż tak nie monitoruję stanu baterii, ta jest akurat zdalna i wymiana baterii była koło 2 maja 2021 - bodajże 2 dni różnicy, ale te czujniki pracują w różnych warunkach)
[
attachment=3761]
W przypadku czujników pracujących w temperaturach odbiegających od tzw. temperatury pokojowej za to doskonale widać wpływ temperatury na wskazanie stanu baterii (tzn. temperatura wpływa na napięcie ogniwa, które jest odpowiednio przeliczane, niestety sensor wskazujący napięcie baterii raportuje je z dokładnością do 0,1V więc jego wskazania pominąłem, bo są zbyt niedokładne)
[
attachment=3762][
attachment=3763]
Jakkolwiek oficjalne firmware w wersji 1.0.0_0106 na sprzęcie B1.4 raportuje jedynie wartości 100%, następnie 50% - czujnik z takim wskazaniem w domowych warunkach z pewnością jest w stanie działać prawdopodobnie koło 2 tygodni lub dłużej o ile ogniwo CR2032 nie jest totalnym "paździerzem" (fabryczne chińskie ogniwa są prawdopodobnie lepsze niż te które dostaniemy w Ikei, edit2: jednak nie wszystkie - jedna padła mimo ostatniego wskazania 100%…), a na koniec 10% i tu raczej nie wytrzymuje nawet doby - więc takie wskazanie to konieczność natychmiastowej wymiany baterii.
Nieoficjalne firmware ATC_MiThermometer (nieoficjalna i chyba nawet oficjalna? integracja w HA i ESPHome powinny z nim współpracować po ustawieniu trybu "Mi like", czyli możliwości pracy z formatem danych udającym fabryczny, ale bez szyfrowania), edit: w 2021 roku w integracjach dla HA obsługiwany jest też nieoficjalny format danych opracowany przez ATC1441 (nieco bardziej efektywny energetycznie od fabrycznego)
https://github.com/atc1441/ATC_MiThermometer
ta wersja jest znana jako "
atc1441" - od nicka developera
Przed wgraniem firmware w przypadku już dłużej używanego czujnika warto wymienić ogniwo zasilające, w szczególności jeśli stan baterii jest niższy od 100% - fabryczny soft bardzo niedokładnie szacuje stan baterii (flashowanie jest stosunkowo prądożerne, a utrata zasilania podczas flashowania skończy się ucegleniem sprzętu - jak to zwykle bywa… wprawdzie jest możliwość "ratunkowego" flashowania przez wlutowane kabelki, ale to raczej dla zaawansowanych elektroników).
wgrywanie softu po BT trwa nieco ponad 1,5 minuty (warto by w tym czasie nie zadziałało wygaszanie ekranu w smartfonie), wgrywamy z poziomu przeglądarki przez
https://atc1441.github.io/TelinkFlasher.html
uwaga flasher nie sprawdza pliku binarnego, więc wgranie jakichś śmieci uwali czujnik!
(gdzieś widziałem, że ktoś ogarnął to nawet z poziomu systemu Windows, niestety linka nie zachowałem, ale kto nie ma smartfona?)
warto dodać, że wskazanie stanu baterii jest bardziej precyzyjne
tu taka uwaga - jeśli ktoś ma sprzęt inny niż 1.4B to istnieje możliwość, że tego firmware nie będzie można zastosować (widziałem gdzieś w sieci informację o innym kontrolerze LCD w niektórych wersjach czujnika, ale nie umiem jej znaleźć ponownie)
Poniżej obecnie zalecany custom ROM - obecnie = stan na początek i połowę roku 2021
Inny custom oparty na tym samym projekcie ("
pvvx") - tutaj autor "poleciał" do granic możliwości - na zdjęciach wyświetlacz w 3 naprzemiennie wyświetlanych trybach - zegara, wskazania stanu baterii oraz standardowym (tj. temperatura + wilgotność)
https://github.com/pvvx/ATC_MiThermometer
[
attachment=3764][
attachment=3765][
attachment=3766]
edit: W tej chwili (wiosna 2021) firmware "
atc1441"
jest już nierozwijane, prawdopodobnie ostatnie wydanie to 34 kolejny-edit: autor jednak nie porzucił projektu i rozwija go nadal, ale sam zaleca soft tworzony przez pvvx
https://github.com/atc1441/ATC_MiThermometer/releases
obecnie projekt
ATC_MiThermometer jest rozwijany przez
pvvx (oraz małą grupę współpracujących developerów, jakkolwiek praca wykonana przez pvvx jest tu kluczowa, nie do pominięcia jest jego wiedza o elektronice oraz profesjonalnie wykonane pomiary - warto przejrzeć linki dostępne w projekcie, sporo ciekawej dokumentacji jest w… issues).
Obecnie firmware "
pvvx" jest dostępne dla 3 różnych modeli termohigrometrów bazujących na tym samym SoC Telink'a, a pochodzących prawdopodobnie od rożnych producentów (jakkolwiek wszystkie należą do ekosystemu Xiaomi):
- MiJia LYWSD03MMC
- Miaomiaoce MHO-C401 (e-ink,kwadratowy)
- Qingping CGG1 (e-ink, okrągły)
wyświetlacze e-ink zastosowane w droższych modelach mają jednak zabudowany sterownik, który udaje wyświetlacze LCD (nie ma możliwości wyświetlania dowolnej grafiki, tylko predefiniowany zestaw segmentów).
Jest też możliwość wyświetlania zegara (czego producent sprzętu nie przewidział), jakkolwiek jest to rozwiązanie programowe (SoC nie zawiera układu RTC, wśród zbliżonych konstrukcji jedynie prostokątny e-ink LYWSD02 ma dodatkowy układ RTC, ale za to na niego nie widziałem alternatywnego firmware, a
nie pamiętam czy SoC jest
ten sam, czy inny).
Zegar się dość mocno "rozjeżdża" (w trybie uśpienia nie pracuje generator kwarcowy lecz jest używany prostu układ RC), ale firmware "pvvx" umożliwia korekcję chodu (zależna jest od egzemplarza, nie mam czasu na zabawę, bo sensowna kalibracja wymaga naprawdę sporo czasu), jakkolwiek trzeba brać pod uwagę fakt, że układ RC jest podatny na temperaturę, więc sens używania tak kontrolowanego zegara jest tylko w warunkach dostatecznie stałej średniej temperatury (np. wewnątrz pomieszczeń mieszkalnych).
Do ustawiania i kontroli czasu polecam aplikację Atomic Clock & Watch Accuracy Tool
https://play.google.com/store/apps/detai...uracy_tool
można w niej włączyć akustyczny sygnał czasu generowany o każdej pełnej minucie (taki jak sygnał czasu z Greenwich), który słychać gdy aplikacja pracuje w tle,a w tym czasie możemy w przeglądarce na smartfonie pobrać czas z czujnika o pełnej minucie.
Ta wersja jest wręcz zalecana przez pierwotnego autora (ma poprawione zarządzanie energią = wydłużony czas pracy ogniwa) jednak nie mam teraz czasu na kolejne eksperymenty, jakkolwiek niewątpliwie je zrobię, póki co ciekaw jestem jak długo wytrzymają ogniwa na tym sofcie -
(dopiero niedawno przeflaszowałem wszystkie czujniki na ostatnią wersję od atc1441, która po niedawnych zmianach w HA i ESPHome była dla mnie optymalna, przynajmniej w porównaniu z softem fabrycznym - po wymianie ogniwa startuje od razu w takim trybie jaki mi odpowiada, a ostatni egzemplarz sflaszowałem dopiero 12.05.2021… parę dni później po paru eksperymentach zmieniłem soft na pvvx v3.1 w kilku czujnikach, cześć jednak, lokalnie dla testu a w zdalnej lokalizacji z braku możliwości, pozostała na atc1441).
Kilka dodatkowych zdjęć podzespołów (przy okazji impregnacji miałem okazję dorobić te brakujące zdjęcia mikroskopowe strony z elektroniką, czyli odwrotnej od tej z czujnikiem i baterią)
[
attachment=3693][
attachment=3692][
attachment=3694]