U-BLOX NINA B112 e ARDUINO ADAFRUIT
O objetivo deste BLOG é demonstrar como é possível utilizar a IDE do Arduino para programar o módulo U-BLOX NINA B112. Foi utilizado o módulo NINA B112 para o teste com o gravador Segger e ST-LINK V2
Abaixo o roteiro para você seguir:
Baixe e instale o Arduino IDE
Inicie o Arduino IDE, vá em Preferências e adicione
https://www.adafruit.com/package_adafruit_index.json
como "URL adicional do gerenciador de pastas"
Abra o Boards Manager no menu Tools -> Board e instale o "Adafruit nRF52 by Adafruit"
Selecione sua placa nRF5 no menu Ferramentas -> Placa
Adafruit Bluefruit nRF52 Feather
OBSERVAÇÃO: Durante a instalação, o Arduino IDE leva alguns minutos para extrair as ferramentas após o download, por favor, seja paciente.
Selecione o gravador J-LINK
Gravando bootloader da Adafruit
Abra J-FLASH lite e grave o bootloader da Adafruit
O mesmo se encontra em
....\packages\adafruit\hardware\nrf52\0.10.1\bootloader\feather_nrf52832
Com ele, você poderá transferir programas via DFU serial. Maiores detalhes sobre este bootloader
https://learn.adafruit.com/bluefruit-nrf52-feather-learning-guide/using-the-bootloader
Segundo a documentação, se você pressionar o reset, o módulo aguardará por um certo tempo se há algo sendo enviado pelo Arduino, ou seja, o programa a ser gravado via DFU. Coloque um conversor USB-SERIAL e conecte no TXD e RXD e GND do módulo NINA B112.
ATENÇÃO, o bootloader usa como TXD e RXD os pinos P0.6 e P0.8
"COMPILE PARA SEREM P0.6 E P0.5"
Abra um terminal burro e se conecte na serial do módulo NINA B112, digite algum texto, você verá o APP Bluefruit recebendo. Faça o mesmo no Bluefruit.
Baixe e instale o Arduino IDE
Inicie o Arduino IDE, vá em Preferências e adicione
https://www.adafruit.com/package_adafruit_index.json
Abra o Boards Manager no menu Tools -> Board e instale o "Adafruit nRF52 by Adafruit"
Selecione sua placa nRF5 no menu Ferramentas -> Placa
Adafruit Bluefruit nRF52 Feather
OBSERVAÇÃO: Durante a instalação, o Arduino IDE leva alguns minutos para extrair as ferramentas após o download, por favor, seja paciente.
Selecione o gravador J-LINK
Abra J-FLASH lite e grave o bootloader da Adafruit
O mesmo se encontra em
....\packages\adafruit\hardware\nrf52\0.10.1\bootloader\feather_nrf52832
Com ele, você poderá transferir programas via DFU serial. Maiores detalhes sobre este bootloader
https://learn.adafruit.com/bluefruit-nrf52-feather-learning-guide/using-the-bootloader
Segundo a documentação, se você pressionar o reset, o módulo aguardará por um certo tempo se há algo sendo enviado pelo Arduino, ou seja, o programa a ser gravado via DFU. Coloque um conversor USB-SERIAL e conecte no TXD e RXD e GND do módulo NINA B112.
ATENÇÃO, o bootloader usa como TXD e RXD os pinos P0.6 e P0.8
"COMPILE PARA SEREM P0.6 E P0.5"
Futuramente altere arquivo variant.cpp para que o TXD e RXD sejam os mesmos do NINA B112
const uint32_t g_ADigitalPinMap[] = {
// D0 - D7
11,
12,
13,
14,
15,
16,
17,
18,
// D8 - D13
19,
20,
22,
23,
24,
25,
// A0 - A7
3,
4,
28,
29,
30,
31,
5, // AIN3 (P0.05)
2, // AIN0 (P0.02) / AREF
// SDA, SCL
26,
27,
// RX, TX
5,
6
};
//Demais não foram alterados
Consulte
https://www.u-blox.com/sites/default/files/NINA-B1_DataSheet_%28UBX-15019243%29.pdf
Veja
============================
22 UART_TXD O UART data output
23 UART_RXD I UART data input
22 GPIO_22 I/O General purpose I/O P0.06
23 GPIO_23 I/O Analog function enabled GPIO P0.05
============================
MANTIVE AINDA PARA TESTES O P0.8 E P0.6
const uint32_t g_ADigitalPinMap[] = {
// D0 - D7
11,
12,
13,
14,
15,
16,
17,
18,
// D8 - D13
19,
20,
22,
23,
24,
25,
// A0 - A7
3,
4,
28,
29,
30,
31,
5, // AIN3 (P0.05)
2, // AIN0 (P0.02) / AREF
// SDA, SCL
26,
27,
// RX, TX
5,
6
};
//Demais não foram alterados
Consulte
https://www.u-blox.com/sites/default/files/NINA-B1_DataSheet_%28UBX-15019243%29.pdf
Veja
============================
22 UART_TXD O UART data output
23 UART_RXD I UART data input
22 GPIO_22 I/O General purpose I/O P0.06
23 GPIO_23 I/O Analog function enabled GPIO P0.05
============================
MANTIVE AINDA PARA TESTES O P0.8 E P0.6
Compilando e Transferindo o programa BLEUART
Compile o programa e pressione o botão para gravar.
Ao aparecer a mensagem "Upgrading target on COM...", pressione imediatamente o botão de reset do módulo NINA B112.
O gravador força o DTR para HIGH antes de iniciar a gravação, coloque um transistor para aterrar o RESET do módulo NINA B112 OU APERTE RESET IMEDIATAMENTE APÓS O COMPILADOR MOSTRAR O TAMANHO DO PROGRAMA E MEMÓRIA CONSUMIDA!
O gravador força o DTR para HIGH antes de iniciar a gravação, coloque um transistor para aterrar o RESET do módulo NINA B112 OU APERTE RESET IMEDIATAMENTE APÓS O COMPILADOR MOSTRAR O TAMANHO DO PROGRAMA E MEMÓRIA CONSUMIDA!
Como podem observar, o programa será transferido!
Execute o APP Bluefruit do celular e selecione ESP32 e então escolha o serviço UART.
Abra um terminal burro e se conecte na serial do módulo NINA B112, digite algum texto, você verá o APP Bluefruit recebendo. Faça o mesmo no Bluefruit.
Dúvidas:
suporte@smartcore.com.br
Referências:
https://www.u-blox.com/sites/default/files/NINA-B1_SIM_%28UBX-15026175%29.pdf
suporte@smartcore.com.br
Referências:
https://www.u-blox.com/sites/default/files/NINA-B1_SIM_%28UBX-15026175%29.pdf
https://learn.adafruit.com/bluefruit-nrf52-feather-learning-guide/using-the-bootloader
https://github.com/adafruit/Adafruit_nRF52_Arduino
https://github.com/adafruit/Adafruit_nRF52_Arduino
https://www.u-blox.com/sites/default/files/NINA-B1_DataSheet_%28UBX-15019243%29.pdf
Sobre a SMARTCORE
Sobre a SMARTCORE
A SmartCore fornece módulos para comunicação wireless, biometria, conectividade, rastreamento e automação.
Nosso portifólio inclui modem 2G/3G/4G/NB-IoT/Cat.M, satelital, módulos WiFi, Bluetooth, GNSS / GPS, Sigfox, LoRa, leitor de cartão, leitor QR code, mecanismo de impressão, mini-board PC, antena, pigtail, LCD, bateria, repetidor GPS e sensores.
Mais detalhes em www.smartcore.com.br