🛠 Diffuser une fréquence cardiaque BLE vers nRF Toolbox

nRF52840-MDK (id boards.json: nrf52840-mdk) · debutant · La démo phare du wiki MakerDiary : un flash, un smartphone, et la courbe cardiaque apparaît dans l'app Nordic — la chaîne BLE complète validée.

El objetivo

Flashear el ejemplo «heart rate» de Nordic (servicio GATT estándar Heart Rate) en el nRF52840-MDK, y luego observar la curva de frecuencia cardíaca simulada en la aplicación móvil nRF Toolbox. Es la demo estrella del wiki MakerDiary: valida toda la cadena — SDK, SoftDevice S140, mergehex, flasheo mediante arrastrar y soltar, radio BLE.

Requisitos previos

git clone https://github.com/makerdiary/nrf52840-mdk.git
cd nrf52840-mdk

Paso 1 — Compilar ble_app_hrs

make BOARD=nrf52840_mdk -C examples/nrf5-sdk/ble_app_hrs/s140/nrf52840

El hex de la aplicación se genera en la carpeta _build/ del ejemplo. Atención: el repositorio MakerDiary no ha recibido actualizaciones desde 2021; si la compilación falla, verifique que esté utilizando el SDK 17.0.x con el SoftDevice S140 6.1.1 esperado por los Makefiles.

Paso 2 — Fusionar y flashear

La pila BLE necesita el SoftDevice S140. Fusiona los dos hex, y luego deposita la imagen en la unidad DAPLINK:

mergehex -m s140_nrf52_6.1.1_softdevice.hex \
           _build/ble_app_hrs_nrf52840_mdk.hex \
         -o firmware.hex

Deposita firmware.hex en la unidad DAPLINK, y luego presiona Boot/Reset.

Paso 3 — Conectarse con nRF Toolbox

  1. Instala nRF Toolbox (Android/iOS) y abre el módulo Heart Rate.
  2. Inicia un escaneo: el dispositivo aparece (nombre publicitario Nordic_HRM).
  3. Conéctate: la curva de frecuencia cardíaca simulada se actualiza mediante notificaciones BLE.

Lo que esta demo te enseña

Alternativa Zephyr

El sample peripheral_hr de Zephyr upstream también funciona en la placa, pero el port de MakerDiary está desactualizado: ya no compila con Zephyr 3.5+ (issue #55). Utiliza la versión actual del árbol de Zephyr (west build -b nrf52840_mdk samples/bluetooth/peripheral_hr) en lugar de la del repositorio.

Otros tutoriales para esta placa

Ejemplos de código para esta placa

← Volver a la ficha 🛠 Todos los tutoriales