sábado, 18 de maio de 2019

ARDUINO ADAFRUIT NINA B112

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"

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


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!



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
https://www.u-blox.com/sites/default/files/NINA-B1_DataSheet_%28UBX-15019243%29.pdf

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