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ć:

  1. Zdejmij obudowę dongle.
  2. Podłącz go do portu USB
  3. Przytrzymaj przycisk K1 (środkowy).
  4. Naciśnij i zwolnij przycisk RST (położony przy antenie).
  5. 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

  1. 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.