Mode d'emploi
Du Pico W neuf à la carte flashée par le Wi-Fi : le câblage, les commandes et les pièges connus.
Le câblage
Le même que pour debugprobe : GP2 → SWCLK, GP3 → SWDIO, et une masse commune. Des fils
courts et une masse solide ; un fil de masse le long de SWCLK peut aider (voir
Les essais sur la carte).
Construire et installer le firmware
- Copier
firmware/wifi_secret.h.modeleenfirmware/wifi_secret.h(ce fichier reste hors du dépôt) et y mettre le nom du réseau Wi-Fi et son mot de passe. - Construire :
make firmware(pico-sdk dans~/pico-sdk, ouPICO_SDK_PATH). - Première installation : brancher le Pico W en tenant BOOTSEL, et copier
build/firmware/eliott65sonde_complet.uf2(amorce et application) sur le disqueRPI-RP2. - La LED clignote pendant la recherche du réseau, puis reste fixe.
Ensuite, plus besoin de BOOTSEL : voir plus bas.
OpenOCD par le Wi-Fi
openocd -f interface/cmsis-dap-tcp.cfg -c "cmsis-dap tcp host eliott65sonde.local" \
-c "cmsis-dap tcp port 4441" -f target/rp2040.cfg
- Toujours indiquer
cmsis-dap tcp port 4441: sans lui, la version de développement d’OpenOCD prend pour port un texte au lieu d’un nombre. - Si
eliott65sonde.localne se résout pas alors que la sonde répond, vérifier que le DNS du réseau ne répond pas pour le domainelocal.; passer l’adresse IP en attendant. - Pour flasher et pour les longues lectures, rester à 200 kHz tant que le câblage reste celui des essais.
Le journal local
outils/e65s.py connecter # cœur 0 ; --coeur 1
outils/e65s.py releve 1000 0x20000000:4 0x20000004:4 # toutes les 1 000 µs
outils/e65s.py declencheur inchange 0 2000 --zone 0x20000000:256
outils/e65s.py etat
outils/e65s.py releves > releves.csv
outils/e65s.py instantane --fichier instantane.bin
outils/e65s.py lire 0x20010000 65536 --fichier memoire.bin
Le journal est en pause tant qu’OpenOCD est connecté au port 4441.
La mise à jour par le réseau
make firmware
outils/e65s.py --hote ADRESSE ota build/firmware/eliott65sonde.uf2
outils/e65s.py --hote ADRESSE etat-ota # validé, à l'essai, restauré…
outils/e65s.py --hote ADRESSE redemarrer # --bootsel : disque RPI-RP2 sur l'USB
e65s.py ota valide le nouveau firmware dès que la sonde revient et répond. Sinon, l’amorce remet
l’ancien au bout de 3 démarrages. Une sonde d’avant la v0.6 (sans amorce) passe à la v0.6 par une
mise à jour avec eliott65sonde_complet.uf2.
Revenir à l’USB
Reflasher l’UF2 de debugprobe, par BOOTSEL.
Tester sur le PC
make # processeur CMSIS-DAP, cible simulée, serveur TCP
make test # processeur, programme PIO au simulateur, OpenOCD, journal et mise à jour
Le banc du programme PIO utilise le simulateur de PIO du dépôt Eliott65.