1. Visão geral
O NinaSense utiliza o Nordic nRF52832 e integra Bluetooth Low Energy e rádio LoRa baseado no LLCC68. A placa foi projetada para aplicações alimentadas por bateria, eliminando circuitos desnecessários que aumentariam a corrente de repouso.
- nRF52832 ARM Cortex-M4F.
- Bluetooth Low Energy.
- LoRa / FSK com LLCC68.
- XTAL de 32,768 kHz para operação low power.
- 8 GPIOs, sendo 3 com capacidade analógica.
- Interface dedicada para DS18B20.
- Conector FPC para Hall Sensor na versão especial.
- LIS2DH12 opcional.
- Programação e debug via SWD.
2. Instalação no Arduino IDE
O NinaSense pode ser desenvolvido com o ecossistema Arduino para nRF52. O procedimento abaixo utiliza o BSP Adafruit nRF52 como base.
2.1 Adicionar o BSP nRF52
- Abra o Arduino IDE.
- Acesse Preferências.
- Em URLs adicionais para Gerenciadores de Placas, adicione:
- Abra o Gerenciador de Placas.
- Procure por Adafruit nRF52 by Adafruit.
- Instale o pacote e reinicie o Arduino IDE.
2.2 Bibliotecas recomendadas
- Bluefruit52Lib para Bluetooth LE no BSP Adafruit.
- Driver LoRa compatível com o LLCC68 utilizado no seu firmware.
- OneWire e DallasTemperature para DS18B20.
- Biblioteca LIS2DH12 quando a versão da placa possuir acelerômetro.
3. Programação via SWD
O NinaSense possui header de programação e debug SWD. A sequência do conector H1, da esquerda para a direita, é:
| Pino | Sinal | Função |
|---|---|---|
| 1 | SWDIO | Dados SWD |
| 2 | SWCLK | Clock SWD |
| 3 | VDDNRF | Referência de tensão do alvo |
| 4 | GND | Terra |
Podem ser utilizados programadores/debuggers compatíveis com SWD, como SEGGER J-Link e ferramentas suportadas pelo ecossistema Nordic.
4. Pinagem principal
| Interface | Descrição |
|---|---|
| VBAT / GND | Entrada principal de alimentação. |
| +3V | Saída regulada de 3 V para periféricos externos, até 300 mA conforme projeto. |
| GPIO | 8 GPIOs de uso geral. |
| ADC | 3 GPIOs com capacidade analógica. |
| DS18B20 | Interface dedicada para sensor de temperatura digital. |
| FPC | Interface para Hall Sensor de baixo consumo na versão especial. |
| BLE U.FL | Conector para antena Bluetooth externa. |
| LoRa | Conexão SMA ou antena helicoidal, conforme versão. |
5. Exemplos de sketches
5.1 Blink sem LED permanente
Como a placa não possui LED permanente por projeto, use um GPIO conectado externamente a um LED com resistor para testes.
5.2 Leitura analógica
5.3 BLE Advertising
5.4 DS18B20
6. Desenvolvimento Low Power
Para obter o menor consumo possível, mantenha periféricos desligados quando não estiverem em uso, reduza a frequência de advertising e transmissões LoRa, utilize o XTAL de 32,768 kHz e coloque o processador em modos de sleep adequados ao firmware.
- Evite polling contínuo.
- Prefira interrupções e wake-up por evento.
- Desligue sensores externos entre medições.
- Use a saída +3 V apenas quando o periférico precisar estar energizado.
- Meça a corrente pelos test points da placa durante a otimização.
- Considere os picos de corrente do rádio LoRa ao selecionar CR2032 ou outras baterias pequenas.
7. LoRa / LLCC68
O LLCC68 permite operação LoRa e FSK com potência, spreading factor e outros parâmetros configuráveis. A configuração deve respeitar a frequência autorizada para a região e a implementação específica do firmware.
8. Bluetooth Low Energy
O nRF52832 permite utilizar advertising, conexões GATT, serviços personalizados e comunicação local com smartphones e gateways BLE. Para aplicações de bateria, o intervalo de advertising tem grande impacto no consumo médio.
9. Sensores e periféricos
A versão especial pode integrar acelerômetro LIS2DH12 e interface FPC para Hall Sensor de baixo consumo. O NinaSense também oferece interface dedicada ao DS18B20 e GPIOs para sensores digitais ou analógicos.
10. Debug e troubleshooting
A placa não aparece como porta serial
O NinaSense não utiliza conversor USB/Serial permanente. Para depuração, utilize SWD/J-Link, RTT ou uma UART externa, conforme a configuração do firmware.
Consumo acima do esperado
Verifique periféricos ativos, pull-ups, GPIOs flutuantes, sensores alimentados, rádio LoRa, advertising BLE, debugger conectado e eventuais caminhos de corrente pelo programador.
Falha ao programar via SWD
Confira SWDIO, SWCLK, VDDNRF e GND, tensão do alvo, velocidade do debugger e se o chip está protegido contra leitura/gravação.