Con TPDeviceLib
TPDeviceLib es la librería Arduino/ESP32 de referencia de AlertIA. Encapsula red, register HTTPS, MQTT, OTA, NVS, ping y provisión BLE.
Qué implementás vos
Sección titulada «Qué implementás vos»- Declarar parámetros (
TPParamSpec), triggers (TPTrigger) y notificaciones especiales. - Leer sensores y mapear a slugs.
- Callbacks de trigger que devuelvan
bool(true→ el stack publicaCOMPLETED).
Qué hace la librería
Sección titulada «Qué hace la librería»- Provisión BLE / persistencia NVS.
POST /devices/registeryPOST /devices/ping.- Cliente MQTT (telemetría batch, ACK, status/LWT, suscripciones).
- OTA de producto según el flujo launcher/panel.
Arranque recomendado
Sección titulada «Arranque recomendado»- Partí del template mínimo del repo de firmware (
MinimalFirmwareTemplate). - Configurá manufacturer / preset acordes al panel.
- Flasheá con partición OTA adecuada (p. ej. Minimal SPIFFS en ESP32 4MB).
- Probá alta con la app de campo (BLE).
- Validá telemetría y un trigger de punta a punta.
Launcher → producto
Sección titulada «Launcher → producto»En fábrica, el launcher puede:
- Pedir serial (
POST /devices/request-serial). - Esperar asignación de preset.
- Descargar firmware de producto por OTA.
- Dejar en NVS datos (
launcher_serial, preset, nombre comercial, etc.) para el register de campo.
Detalle de endpoints: REST del dispositivo.
Dependencias típicas
Sección titulada «Dependencias típicas»NimBLE-Arduino, ArduinoJson, PubSubClient, stack Ethernet/TLS según el hardware.
No copies passwords de brokers de lab al firmware: siempre usá la respuesta del register.