📲 Vinculação BLE (SPP) — Terminal sem fio
Guia para configurar a porta serial virtual BLE (SPP) e enviar comandos ao equipamento Rinho a partir do celular, como se fosse um cabo USB.
Este guia aborda a vinculação BLE por SPP (terminal sem fio). Se precisar configurar a leitura de sensores BLE (temperatura, umidade, combustível), consulte o guia de Sensores BLE.
🤔 Para que serve o BLE SPP?
O módulo BLE SPP (Serial Port Profile) permite abrir uma porta serial virtual a partir do celular para:
- 🔧 Configurar o equipamento em campo sem cabo USB
- 🐛 Depurar em tempo real (
>SDB1<) visualizando a saída na tela do celular - 📡 Consultar estado de sensores, GPS, comunicações e mais
- 📤 Receber textos do equipamento (mediante regras com destino
@BTH)
O BLE SPP funciona simultaneamente com os sensores BS/BSW. Habilitar CXBTH não interfere com a leitura de sensores BLE — eles se complementam.
🔧 Pré-requisitos
| Requisito | Detalhe |
|---|---|
| Equipamento | Spider IoT, Smart IoT ou Zero IoT |
| Firmware | Com suporte BLE (ver notas por dispositivo abaixo) |
| App no celular | Cargando... |
| Alcance | O celular deve estar dentro do alcance BLE (aprox. 10-30 metros) |
Firmware por dispositivo
| Dispositivo | Firmware necessário | Nota |
|---|---|---|
| Spider IoT | .nimble.ota | Carregar em uma partição, trocar com >SFRMCP< |
| Smart IoT | .nimble.ota | Carregar em uma partição, trocar com >SFRMCP< |
| Zero IoT | Firmware integrado | Desligar WiFi com >SSSWIFPWR00< antes de usar BLE |
Zero IoT: Não precisa de firmware especial. Apenas desative o WiFi com >SSSWIFPWR00< e o módulo BLE estará disponível.
📶 Configurar BLE SPP passo a passo
Habilitar CXBTH com nome e PIN
Usar o comando CXBTH para ativar o SPP:
>SCXBTH1,RINHO_IOT,12345<| Parâmetro | Valor | Descrição |
|---|---|---|
1 | Habilitar | 1 = Ligar, 0 = Desligar |
RINHO_IOT | Nome | Nome BLE visível a partir do celular (até 16 caracteres) |
12345 | PIN | Senha de acesso (até 16 caracteres) |
Sem senha: Se não desejar usar PIN, deixar o campo vazio: >SCXBTH1,RINHO_IOT,<. Neste caso não é necessário enviar QPW ao conectar.
Verificar configuração
>QCXBTH<Resposta esperada:
>RCXBTH1,RINHO_IOT,12345;ID=...Conectar a partir do celular
- Abrir Cargando...
- Ir a Devices (menu hambúrguer)
- Selecionar Bluetooth LE
- Procurar o dispositivo com o nome configurado (ex:
RINHO_IOT) - Tocar para conectar
Autenticar-se com QPW
Se um PIN foi configurado, a primeira mensagem que deve ser enviada após conectar é:
>QPW12345<O equipamento responderá com OK se a autenticação foi bem-sucedida. A partir daí é possível enviar qualquer comando como se fosse por cabo USB.
Se QPW não for enviado como primeira mensagem (quando há PIN configurado), o equipamento ignorará todos os comandos.
💡 O que se pode fazer por BLE SPP?
Tudo o mesmo que por cabo serial:
| Ação | Exemplo |
|---|---|
| Consultar versão | >QVR< |
| Configurar sensores | >SBS00E,AC233FA24B16,10,60,0,INVALID< |
| Consultar sensores | >QBS00<, >QBS00.temp< |
| Ativar debug | >SDB1< |
| Configurar regras | >SRL00E;TRG=BS02+;ACC={GCQ00H}< |
| Atualizar firmware | >SFRMM1< |
| Reiniciar equipamento | >SRST< |
📤 Enviar texto ao celular a partir de regras
É possível usar o destino @BTH nas ações do motor de eventos para enviar texto ao celular conectado por BLE:
// Quando um beacon é detectado, enviar texto ao terminal BLE
>SRL08E;TRG=BS00+;ACC={STX SENSOR DETECTADO;@BTH}<Isto é útil para:
- Notificações em campo quando ocorre um evento
- Confirmar que uma regra foi disparada corretamente
- Depuração visual em tempo real
⚡ Ligar e desligar BLE com o contato
Em alguns cenários convém ligar o BLE somente quando o veículo está ligado para economizar bateria:
// Ligar BLE com ignição ON
>SRL31E;TRG=IGN+;ACC={SCXBTH1}<
// Desligar BLE com ignição OFF
>SRL32E;TRG=IGN-;ACC={SCXBTH0}<O comando SCXBTH liga e desliga o módulo BLE completo, portanto não é necessário controlar BLEPWR separadamente.
🔧 Solução de problemas
| Problema | Causa provável | Solução |
|---|---|---|
| O nome BLE não aparece no celular | CXBTH desabilitado | Verificar com >QCXBTH<, habilitar com >SCXBTH1,nome,pin< |
| Conecta mas não responde aos comandos | Falta autenticação QPW | Enviar >QPWpin< como primeira mensagem |
SCXBTH responde ERR | Firmware sem suporte BLE | Spider/Smart: carregar .nimble.ota. Zero: verificar >SSSBTHPWR11< |
| Desconecta frequentemente | Fora de alcance ou interferência | Aproximar o celular do equipamento (menos de 10 m) |
| Não consegue conectar por BLE | WiFi ativo no Zero IoT | Desligar WiFi com >SSSWIFPWR00< |
Debug (SDB1) não mostra nada por BLE | O debug é enviado apenas pela porta serial USB | Usar >SDB0+BLX< para debug BLE específico, ou ver os dados no cabo USB |
📖 Resumo de comandos
| Comando | Função | Referência |
|---|---|---|
>SCXBTH1,nome,pin< | Habilitar terminal BLE SPP | CXBTH |
>SCXBTH0< | Desabilitar BLE SPP | CXBTH |
>QCXBTH< | Consultar configuração SPP | CXBTH |
>QPWpin< | Autenticar-se por BLE | CXBTH |
>STX texto;@BTH< | Enviar texto ao terminal BLE | Motor de eventos |
>SSSWIFPWR00< | Desligar WiFi (Zero IoT) | — |
>SSSBTHPWR11< | Ligar BLE (Zero IoT) | — |
🎯 Próximos passos
- 📡 Sensores BLE — Leitura de temperatura, umidade, combustível e presença
- 🚀 Primeiros Passos — Configuração básica do equipamento
- 🧠 Motor de Eventos — Criar regras avançadas
- 📡 Comandos BLE — Referência completa de BS, BSW, BE e CXBTH