🛠 Thread/OpenThread sous Zephyr et mises à jour DFU/UF2

Adafruit Feather nRF52840 Express · avance · Schéma : IMG-nrf52840-feather-avance-3-nrf52840-thread-openthread-dfu.svg — Feather nRF52840 en nœud Thread (IEEE 802.15.4) reliée à un border router, flash par glisser-déposer UF2 vers le lecteur FTHR840BOOT, chaîne de mise à jour annotée.

Objetivos

Salir del BLE: el nRF52840 también es una radio IEEE 802.15.4 y un objetivo de primer nivel para Zephyr (ieee802154-supported, soporte de OpenThread/Thread documentado por Zephyr). Compilarás el ejemplo OpenThread CLI para la plataforma nRF52840, lo flashearás mediante el bootloader UF2 de Adafruit y luego revisarás las actualizaciones: UF2 mediante arrastrar y soltar, DFU serie con nrfutil y OTA BLE.

Hardware

Código completo

# 1) Compiler l'echantillon OpenThread CLI pour nRF52840 (cible DK = meme SoC)
west init -m https://github.com/zephyrproject-rtos/zephyr --mr main ot-ws
cd ot-ws && west update
cd zephyr
west build -b nrf52840dk/nrf52840 samples/net/openthread/cli

# 2) Flash : soit par SWD (2x5 0.05" de la Feather, J-Link/DAPLink) :
west flash --runner jlink
#    soit en UF2 : double-clic RST -> NeoPixel vert -> lecteur FTHR840BOOT,
#    convertir build/zephyr.bin en .uf2 (uf2conv.py -f 0xADF7) puis glisser.

# 3) Console serie (115200) : commands OpenThread
#    dataset init new / dataset commit active / ifconfig up / thread start
#    thread state  ->  "leader" ou "child"

Verificación esperada

thread state responde «child» después de thread start cuando hay un border router activo; ping hacia una dirección IPv6 de la red Thread atraviesa la radio 802.15.4. En cuanto a las actualizaciones: arrastrar un archivo UF2 a FTHR840BOOT reprograma la placa sin ninguna herramienta JTAG; la cadena de arranque es el bootloader UF2 de Adafruit nRF52 de código abierto preinstalado.

Errores frecuentes

Otros tutoriales para esta placa

Ejemplos de código para esta placa

← Volver a la ficha 🛠 Todos los tutoriales