Flashowania Układu CC2652P z Wykorzystaniem CH9102X
Flashowania Układu CC2652P z Wykorzystaniem CH9102X
Flashowanie układu CC2652P jest procesem, który pozwala na zainstalowanie oprogramowania kordynatora na chipie, co jest kluczowe dla działania z Zigbee2Mqtt. W tym poście omówimy krok po kroku, jak przeprowadzić flashowanie układu CC2652P z modułem USB-Serial CH9102X.
Przygotowanie do Flashowania
Przed rozpoczęciem procesu flashowania, upewnij się, że masz wszystkie niezbędne narzędzia i pliki. Będziesz potrzebować:
- Dongle Zigbee2mqtt z układem CH9102X
- System Linux lub MacOs
- Python 3 w wersji minimum 3.7
Wejście w Tryb Bootloadera
Aby rozpocząć flashowanie, musisz wprowadzić dongle w tryb bootloadera. Oto jak to zrobić:
- Zdejmij obudowę dongle.
- Podłącz go do portu USB
- Przytrzymaj przycisk K1 (środkowy).
- Naciśnij i zwolnij przycisk RST (położony przy antenie).
- Zwolnij przycisk K1.
Teraz dongle powinien być w trybie bootloadera i gotowy do flashowania. Jeżeli tak się nie stanie, to sprawdź połączenie, ja musiałem ustawić moduł na małej podpórce.
Proces Flashowania na Linux/macOS
Poniżej znajdziesz instrukcje krok po kroku, jak przeprowadzić flashowanie
- Sklonuj repozytorium z narzędziem do flashowania:
git clone https://github.com/JelmerT/cc2538-bsl.git
Przejdź do sklonowanego katalogu:
cd cc2652p-bsl
Pobierz najnowsze oprogramowanie firmware. W momencie pisania posta ten link jest aktualny, jeżeli się zmieni, sprawdź w repozytorium nazwę aktualnego pliku.
wget https://github.com/Koenkk/Z-Stack-firmware/raw/master/coordinator/Z-Stack_3.x.0/bin/CC1352P2_CC2652P_launchpad_coordinator_20230507.zip
Rozpakuj pobrane archiwum:
unzip CC1352P2_CC2652P_launchpad_coordinator_20230507.zip
Zainstaluj wymagane pakiety Pythona:
pip3 install wheel pyserial intelhex python-magic
Zainstaluj bibliotekę zigpy-znp
:
pip3 install zigpy-znp
Wykonaj kopię zapasową obecnych danych NVRAM. Upewnij się, że dongle jest odczytany jako /dev/ttyACM0
, być może u Ciebie będzie pod inną nazwą. Nazwę tę znajdziesz obserwując, co pokaże się po wpisaniu komendy ls /dev/tty*
po podłączeniu modułu.
python3 -m zigpy_znp.tools.nvram_read /dev/ttyACM0 -o nvram_backup.json
Przeprowadź flashowanie nowym firmware
python3 cc2538-bsl.py -e -v -w CC1352P2_CC2652P_launchpad_coordinator_20230507.hex
Po zakończeniu procesu flashowania, dongle powinien być gotowy do użycia z nowym oprogramowaniem.
Podsumowanie
Gotowe! Teraz wystarczy odpowiednio skonfigurować zigbee2mqqt aby działał z układem. Jeżeli używałeś wcześniej cc2531, prawdopodobnie wystarczy odłączyć stary moduł i podłączyć nowy.