segunda-feira, 25 de fevereiro de 2019

U-BLOX NINA B1 DATA MODE

ACESSANDO BLE NINA B112 VIA NORDIC APP


O objetivo deste BLOG é demonstrar de forma resumida como é possível mandar dados via BLE de um celular para o módulo NINA B112. Para testes foi utilizado o EVK-NINA-B1.



DATA MODE


MANDAR
AT+UBTLN=NOMEBLE

MANDAR
AT+UBTSM=1

MANDAR
ATO1 (DATA MODE)

ESTABELECER CONEXAO COM O NINA-B1 VIA UTILITY BLE SCANNER, VAI APARECER

SERVICES, CUSTOM SERVICES SPS (SERIAL PORT SERVICE) = 0x2456e1b926e28f83e744f34f01e9d701
CLICK NELE E ONDE APARECER CHARACTERISTIC READ E WRITE, NOTIFY, CLICK NOVAMENTE

CUSTOM CHARACTERISTIC (FIFO)


DEVE HABILITAR NOTIFICATION (N)

ESCREVENDO NELE (CHARACTERISTIC) (WRITE), O MESMO APARECERÁ NO TXD DO NINA B1

SE VOCE MANDAR ALGO PARA O RXD DO NINA B1, TEREMOS EM (CHARACTERISTIC) (READ) O VALOR TECLADO.






SE ENVIAR EM +++ EM ESPAÇOS DE 200ms SAI DO DATA MODE, MAS MELHOR FORÇAR PINO DTR DE HIGH PARA LOW.

EXTENDED DATA MODE

MANDAR
AT+UBTLN=NOMEBLE

MANDAR
AT+UBTSM=2

MANDAR
ATO2 (DATA MODE)

ESTABELECER CONEXAO COM O NINA-B1 VIA UTILITY BLE SCANNER, VAI APARECER

SERVICES, CUSTOM SERVICES SPS (SERIAL PORT SERVICE) = 0x2456e1b926e28f83e744f34f01e9d701
CLICK NELE E ONDE APARECER CHARACTERISTIC READ E WRITE, NOTIFY, CLICK NOVAMENTE

CUSTOM CHARACTERISTIC (FIFO)



DEVE HABILITAR NOTIFICATION (N)

ESCREVENDO NELE (CHARACTERISTIC) (WRITE), O MESMO APARECERÁ NO TXD DO NINA B1, PORÉM OS PACOTES TEM ESTE FORMATO

Start (1 byte = 0xAA) Reserved (4 bits) Payload Length (12 bits) Payload (Length bytes) Stop (1 byte = 0x55)


SE VOCE MANDAR ALGO PARA O RXD DO NINA B1, TEREMOS EM (CHARACTERISTIC) (READ) O VALOR TRANSMITIDO, PORÉM NO MODO EXTEND DATA




Entre no APP e mande o texto "MIGUEL", teremos no TXD do NINA B

RECEBIMENTO DO TEXTO “MIGUEL” ENVIADO PELO APP

{AA}
{00}{09}{00}{31}{04}{4D}{49}{47}{55}{45}{4C}{55}

AA=START
0009=NUMERO DE BYTES
0031=DATA MODE
04=CHANNEL
4D…4C=MIGUEL
55=END

Para mandar um texto de volta, por exemplo "AA"

0xAA 0x0005 0x0036 0x04 0x41 0x41 0x55
AA=START
0005=NUMERO DE BYTES
0036=DATA MODE 04=CANAL
“AA” = TEXTO
55=END


Receberás no APP o "AA"

USANDO PYTHON PARA TESTAR - EXTENDED MODE

A u-blox disponibiliza um exemplo em python para "simular" o HOST de seu módulo NINA B.

Veja em Fontes.

Reset o módulo e execute:

python extend.py 20 peripheral (onde 20 é COMM)


Tecle algo e aparecerá um menu


Então



O exemplo permite tambem mandar comandos AT no extended mode e também entrar no modo central...

Utilize o S-CENTER para testar também!



Data Mode entre NINA B



Suporte: suporte@smatcore.com.br

Fontes:

https://docs-emea.rs-online.com/webdocs/15ab/0900766b815abf7d.pdf
https://www.mikroe.com/ble-3-click
https://github.com/u-blox/extended-data-mode-example-application-py/blob/master/edm.py
 

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