📲 Vinculación BLE (SPP) — Terminal inalámbrico
Guía para configurar el puerto serial virtual BLE (SPP) y enviar comandos al equipo Rinho desde el celular, como si fuera un cable USB.
Esta guía cubre la vinculación BLE por SPP (terminal inalámbrico). Si necesita configurar lectura de sensores BLE (temperatura, humedad, combustible), consulte la guía de Sensores BLE.
🤔 ¿Para qué sirve el BLE SPP?
El módulo BLE SPP (Serial Port Profile) permite abrir un puerto serial virtual desde el celular para:
- 🔧 Configurar el equipo en campo sin cable USB
- 🐛 Debuguear en tiempo real (
>SDB1<) viendo la salida en la pantalla del celular - 📡 Consultar estado de sensores, GPS, comunicaciones y más
- 📤 Recibir textos desde el equipo (mediante reglas con destino
@BTH)
El BLE SPP funciona simultáneamente con los sensores BS/BSW. Habilitar CXBTH no interfiere con la lectura de sensores BLE — se complementan.
🔧 Requisitos previos
| Requisito | Detalle |
|---|---|
| Equipo | Spider IoT, Smart IoT o Zero IoT |
| Firmware | Con soporte BLE (ver notas por dispositivo más abajo) |
| App celular | Cargando... |
| Alcance | El celular debe estar dentro del alcance BLE (aprox. 10-30 metros) |
Firmware por dispositivo
| Dispositivo | Firmware necesario | Nota |
|---|---|---|
| Spider IoT | .nimble.ota | Cargar en una partición, cambiar con >SFRMCP< |
| Smart IoT | .nimble.ota | Cargar en una partición, cambiar con >SFRMCP< |
| Zero IoT | Firmware integrado | Apagar WiFi con >SSSWIFPWR00< antes de usar BLE |
Zero IoT: No necesita firmware especial. Solo desactivar WiFi con >SSSWIFPWR00< y el módulo BLE estará disponible.
📶 Configurar BLE SPP paso a paso
Habilitar CXBTH con nombre y PIN
Usar el comando CXBTH para activar el SPP:
>SCXBTH1,RINHO_IOT,12345<| Parámetro | Valor | Descripción |
|---|---|---|
1 | Habilitar | 1 = Encender, 0 = Apagar |
RINHO_IOT | Nombre | Nombre BLE visible desde el celular (hasta 16 caracteres) |
12345 | PIN | Password de acceso (hasta 16 caracteres) |
Sin password: Si no se desea usar PIN, dejar el campo vacío: >SCXBTH1,RINHO_IOT,<. En este caso no es necesario enviar QPW al conectar.
Verificar configuración
>QCXBTH<Respuesta esperada:
>RCXBTH1,RINHO_IOT,12345;ID=...Conectar desde el celular
- Abrir Cargando...
- Ir a Devices (menú hamburguesa)
- Seleccionar Bluetooth LE
- Buscar el dispositivo con el nombre configurado (ej:
RINHO_IOT) - Tocar para conectar
Autenticarse con QPW
Si se configuró PIN, el primer mensaje que se debe enviar después de conectar es:
>QPW12345<El equipo responderá con OK si la autenticación fue exitosa. A partir de ahí se puede enviar cualquier comando como si fuera por cable USB.
Si no se envía QPW como primer mensaje (cuando hay PIN configurado), el equipo ignorará todos los comandos.
💡 ¿Qué se puede hacer por BLE SPP?
Todo lo mismo que por cable serie:
| Acción | Ejemplo |
|---|---|
| Consultar versión | >QVR< |
| Configurar sensores | >SBS00E,AC233FA24B16,10,60,0,INVALID< |
| Consultar sensores | >QBS00<, >QBS00.temp< |
| Activar debug | >SDB1< |
| Configurar reglas | >SRL00E;TRG=BS02+;ACC={GCQ00H}< |
| Actualizar firmware | >SFRMM1< |
| Reiniciar equipo | >SRST< |
📤 Enviar texto al celular desde reglas
Se puede usar el destino @BTH en las acciones del motor de eventos para enviar texto al celular conectado por BLE:
// Cuando se detecta un beacon, enviar texto al terminal BLE
>SRL08E;TRG=BS00+;ACC={STX SENSOR DETECTADO;@BTH}<Esto es útil para:
- Notificaciones en campo cuando ocurre un evento
- Confirmar que una regla se disparó correctamente
- Debugging visual en tiempo real
⚡ Encender y apagar BLE con el contacto
En algunos escenarios conviene encender el BLE solo cuando el vehículo está encendido para ahorrar batería:
// Encender BLE con ignición ON
>SRL31E;TRG=IGN+;ACC={SCXBTH1}<
// Apagar BLE con ignición OFF
>SRL32E;TRG=IGN-;ACC={SCXBTH0}<El comando SCXBTH enciende y apaga el módulo BLE completo, por lo que no es necesario controlar BLEPWR por separado.
🔧 Solución de problemas
| Problema | Causa posible | Solución |
|---|---|---|
| No aparece el nombre BLE en el celular | CXBTH deshabilitado | Verificar con >QCXBTH<, habilitar con >SCXBTH1,nombre,pin< |
| Conecta pero no responde a comandos | Falta autenticación QPW | Enviar >QPWpin< como primer mensaje |
SCXBTH responde ERR | Firmware sin soporte BLE | Spider/Smart: cargar .nimble.ota. Zero: verificar >SSSBTHPWR11< |
| Se desconecta frecuentemente | Fuera de rango o interferencia | Acercar el celular al equipo (menos de 10 m) |
| No se puede conectar por BLE | WiFi activo en Zero IoT | Apagar WiFi con >SSSWIFPWR00< |
Debug (SDB1) no muestra nada en BLE | El debug se envía solo por puerto serie USB | Usar >SDB0+BLX< para debug BLE específico, o ver los datos en el cable USB |
📖 Resumen de comandos
| Comando | Función | Referencia |
|---|---|---|
>SCXBTH1,nombre,pin< | Habilitar terminal BLE SPP | CXBTH |
>SCXBTH0< | Deshabilitar BLE SPP | CXBTH |
>QCXBTH< | Consultar configuración SPP | CXBTH |
>QPWpin< | Autenticarse por BLE | CXBTH |
>STX texto;@BTH< | Enviar texto al terminal BLE | Motor de eventos |
>SSSWIFPWR00< | Apagar WiFi (Zero IoT) | — |
>SSSBTHPWR11< | Encender BLE (Zero IoT) | — |
🎯 Próximos pasos
- 📡 Sensores BLE — Lectura de temperatura, humedad, combustible y presencia
- 🚀 Primeros Pasos — Configuración básica del equipo
- 🧠 Motor de Eventos — Crear reglas avanzadas
- 📡 Comandos BLE — Referencia completa de BS, BSW, BE y CXBTH