Uživatelské nástroje

Nástroje pro tento web


lywsd03mmc

Toto je starší verze dokumentu!


Xiaomi Mijia 2 (LYWSD03MMC)

  • bluetooth teploměr s LCD, lze nahrát custom firmware
  • baterie CR2032, vydrží cca rok
  • firmware
  • ZigBeeTLC firmware
    • docela dlouho trvá, než se projeví změna teploty.. asi tak 15 minut?
      • dělá to ale i thermostat s původním fw
      • oba jsem přesunul do jiné místnosti a sledoval rychlost změny. Zigbee teploměr začal zvedat teplotu zhruba stejně, ale pak starý termostat přeběhl. Asi je to tím, že nějakou dobu trvá, než se teplota plastu adaptuje na změnu
    • neumí se asi sám přepárovat na nejbližší router
    • ruční párování se provádí spojením plošek GND a RST na více než 7s (po odstranění zadního krytu)

Přechod z Xioami na ZigBeeTLC fw

  • Xioami verze 1.0.0_0130
    • nejde nahrát nový ZigBeeTLC fw přímo, musí se nahrát nejdřív ATC fw
  • Xioami do verze 2.1.1_0159
    • stačilo dát connect, do activation a vybrat požadovaný firmware
  • Xioami od verze 2.1.1_0159+
    • musí se připojit k Xioami Appce a pak vytáhnout klíče z cloudu

Problémy

  • firmware se nahrál, ale po restartu je bez změny
    • dělalo mi to u ATC v52, pomohlo přejít na v53 beta, pak už to šlo
  • po nahrání ATC z Xioami neukazuje flasher ZigBeeTLC fw
    • resetni senzor
    • vypni/zapni bluetooth v OS
    • F5 stránky s flasherem
  • po nahrání ATC fw to hlásí custom fw a posílá mě na jiný web flasher s ručním zadáním .bin img
    • nikdy nenahrávej přímo .bin přes web flasher, musí to mít příponu .zigbee
    • vrať se na původní flasher a zkus reset senzoru, vypnout/zapnout bluetooth v OS
  • nenabízí mi to požadovaný fw a ukzauje špatně revizi B1.1
    • zkus restart zařízení, bluetooth, …
    • zkus znovu nahrát ATC v53 beta (pokud ho znovu nabízí)
    • zkus delete all records v nabídce ATC fw ve flasheru
  • po flash zigbeeTLC nemám ni displeji nic, ale zigbee vypadá funkčně
    • je to nějaký problém v zigbeeTLC fw u hw revize B1.6 2025
    • buď to používej bez displeje a čekej na nový fw
    • nebo si tam vrať ten ATC fw a používej BT
      • vrácení se provádí přes speciální OTA fw viz github pvxx

Oživování přes UART

Programátor

  • LYWSD03MMC nejde prý bricknout, vždycky jde znovu přeflashovat. Jediný problém prý je, pokud se do něj pustí více než 3.3V
  • měl by se použít UART TTL 3.3V
  • paradoxně, já jsem byl 4x úspěšný se svým pl2303, u kterého jsem ale naměřil 4.8V VCC. Nikdy se mi to nepodařilo s FT232RL, který má 3.3V. Je ale fakt, že jsem to s pl2303 zkoušel mnohem víckrát.

Zapojení

  • existuje více schémat zapojení
  • 1) pouze TX
    • VCC se dá na vbat+ (boční plošky)
    • GND se dá na vbat- (spodní ploška)
    • TXD se přípojí na SWS (P14, popisek nad ploškou)
  • 2) TX s RST
    • navíc se DTR/RTS připojuje na RST
  • 3) TX+RX
    • TXD se připojí přes 1-1.7kOhm na SWS
    • RXD se připojí na SWS bez odporu

USBCOM web flasher

TLSR825x Flasher

  • rozjet Python TLSR825x Flasher https://github.com/pvvx/TlsrComSwireWriter
    • instaloval jsem přes venv
  • zapojení TX+RX přes odpor
    • VCC krokodýlek na vbat+
    • přidržet TXD+RXD na P14
    • spustit program
    • GND krokodýlek na vbat-
  • nejprve jsem pustil erase
LSR825x Flasher version 00.00.04
-------------------------------------------------------
Open /dev/ttyUSB0, 921600 baud...
Reset module (RTS low)...
Activate (5000 ms)...
UART-SWS 92160 baud. SW-CLK ~24.4 MHz(?)
Erase All Flash ...
-------------------------------------------------------
Worked Time: 7.070 sec
Done!
  • pak vlastní zápis
(venv-test) djbuldog@Pharaon:~/Stažené$ python3 TLSR825xComFlasher.py -p /dev/ttyUSB0 -t5000 wf 0 Original_OTA_Xiaomi_LYWSD03MMC_v1.0.0_0130.bin
=======================================================
TLSR825x Flasher version 00.00.04
-------------------------------------------------------
Open /dev/ttyUSB0, 921600 baud...
Reset module (RTS low)...
Activate (5000 ms)...
UART-SWS 92160 baud. SW-CLK ~24.9 MHz(?)
Inputfile: Original_OTA_Xiaomi_LYWSD03MMC_v1.0.0_0130.bin
Write Flash data 0x00000000 to 0x00016ac4...
-------------------------------------------------------
Worked Time: 41.880 sec
Done!

Poznámky

  • poprvé se mí to podařilo s pouze TX, takže není nutné používat zapojení TX+RX s odporem pro webový USBCOM flasher. U python flasheru to asi potřeba je, protože flashuje až když dostane signál.
  • LYWSD03MMC lze flashovat jen chvíli po nastartování, pak už to ignoruje
  • dávat erase all asi není nutné, podařilo se mi to i bez toho
  • funkci lze ověřit i bez připojeného LCD, protože BT vysílá (v případě BT fw)
  • flashování přes UART pouze simuluje původní 1-wire protokol, takže se to nemusí napoprvé podařit, protože to není spolehlivé
  • pokud to nejde přes webový USBCOM flasher, zkus ten python :D

Přechod z devbis na ZigBeeTLC fw

OTA

  • musí se použít správný OTA img, který lze instalovat na devbis fw
    • 1141-020a-09993001-z03mmc_v1100.zigbee - Zigbee OTA ver: ZigbeeTLc to devbis v1.1.0.0
    • 1141-0203-79993001-Z03MMC_v01NN.zigbee - Zigbee OTA ver: devbis old ver1.0.6 to ZigbeeTLc
    • db15-0203-79993001-Z03MMC_v01NN.zigbee - Zigbee OTA ver: devbis new ver1.1.0 to ZigbeeTLc
  • přes Z2M (návod)
    • vytvořit lokální index OTA souborů pro z2m
    • nastavit z2m, aby používal lokální index
  • přes ZHA ((návod
    • vzít vbox s HA + novy USB dongle .. rozjet si ZHA místo Z2M a zkusit ten postup výše

Vytvoření OTA img

  • není potřeba dělat, už existují
  • ale kdyby to bylo někdy potřeba, tak
python3 zb_bin_ota.py z03mmc.bin z03mmc -m0x1141 -i0x020a -v0x09993001 -s"Zigbee ver: ZigbeeTLc to devis"
  • parametry pro devbis FW a)
"fileVersion": 285224961, //0x11003001
"manufacturerCode": 4417, //0x1141
"imageType": 515,  //0x203
"url": "https://github.com/Koenkk/zigbee-OTA/raw/master/images/Telink/1141-0203-11003001-z03mmc.zigbee",
  • parametry pro zibbeetlc FW b)
"fileVersion": 18886657, //0x01203001
"manufacturerCode": 4417, //0x1141
"imageType": 522,  //0x020a 
"url": "https://github.com/Koenkk/zigbee-OTA/raw/master/images/Telink/1141-020a-01203001-Z03MMC.zigbee",
lywsd03mmc.1752152634.txt.gz · Poslední úprava: (upraveno mimo DokuWiki)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki