domingo, 25 de abril de 2021

U-BLOX NINA W106 E REDE GSM - LISA U200

 U-BLOX NINA E REDE GSM - LISA U200


O objetivo deste BLOG é demonstrar como é possível utilizar o ARDUINO para programar o módulo u-BLOX NINA W106 para ter acesso a INTERNET via GSM (LISA-U200).


u-BLOX NINA W106

Wi-Fi 802.11b/g/n
Dual-Mode Bluetooth v4.2
Poderoso suporte de CPU aberta para aplicativos personalizados
Tamanho pequeno e várias opções de antena
Pino compatível com outros módulos NINA
Certificação global
Módulo baseado no ESP32, com 4MB FLASH
+
LISA-U2

Com W-CDMA de 6 bandas (UMTS) e GPRS / EDGE de banda quádrupla, os módulos LISA-U2 são adequados para redes em todo o mundo.
Os recursos incluem taxas de dados de até 21,1 Mbit / s (downlink),um rico conjunto de protocolos da Internet, área muito pequena, área muito baixa consumo de energia e temperatura operacional estendida alcance. Os módulos LISA-U2 fornecem acesso totalmente integrado a produtos de posicionamento u-blox. A diversidade de antenas permite a Módulos LISA-U2 para fornecer as maiores velocidades de dados. Os módulos LISA-U2 são ideais para aplicações industriais / de consumidor que requerem transmissão de dados em alta velocidade e aplicações máquina a máquina. Eles são a escolha perfeita para terminais de internet móvel, tablets, infotainment para automóvel, sistemas de navegação conectados, segurança e vigilância sistemas, eCall, gerenciamento de frota, sistemas de medição, anti-roubo e outras aplicações automotivas. O pacote compacto SMT permite fácil fabricação emigração do u-blox SARA, LEON e outros módulos LISA é simples. Isso permite que os clientes tirem o máximo proveito de seus investimentos em hardware e software e fornece tempo de comercialização muito curto. Está disponível um amplo conjunto de certificados reguladores e de operadores nacionais.
Os módulos LISA-U2 são fabricados em locais certificados pela ISO / TS 16949. Cada módulo é testado e inspecionado durante a produção. Os módulos são qualificados de acordo com a ISO 16750 -Condições ambientais e testes elétricos de eletricidade e equipamentos eletrônicos para veículos rodoviários.
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

1) Baixe e instale a última versão da IDE do Arduino para o seu u-BLOX NINA W106, ou seja, instale ESP32 para Arduino.

https://github.com/espressif/arduino-esp32

2) Instale a LIB GENERIC GSM
https://github.com/khoih-prog/GSM_Generic

3) Abra o projeto GsmWebClient

  1.  Habilite o modem da U-BLOX
  2.  Defina sua APN e User/Pass
  3.  Defina a URL a ser aberta
  4.  Defina a Serial, no caso, Serial2
Ver defines.h



4) Conexões

Conecte o TXD do u-BLOX NINA W106 no TXD do MODEM U-BLOX
Conecte o RXD do u-BLOX NINA W106 no RXD do MODEM U-BLOX

5)  Vá agora em Tools > Board > Boards Manager e Selecione o ESP32 Dev Module, neste caso, o u-BLOX NINA W106


6) Compile, transfira e Execute


u-BLOX NINA W106 enviando

AT+CFUN=16
AT
AT
AT
AT+CPIN?
AT+CMGF=1
AT+UDCONF=1,1
AT+CTZU=1
AT+UDTMFD=1,2
AT+CREG?
AT+CREG?
AT+CREG?
AT+CREG?
AT+CREG?
AT+CREG?
AT+CREG?
AT+CREG?
AT+UCALLSTAT=1
AT+CGATT=1
AT+UPSD=0,1,"claro.com.br"
AT+UPSD=0,2,"claro"
AT+UPSD=0,3,"claro"
AT+UPSD=0,7,"0.0.0.0"
AT+UPSDA=0,3
AT+UPSND=0,8
AT+USOCR=6
AT+USOCO=0,"example.org",80
AT+USOWR=0,4,"47455420"
AT+USOWR=0,1,"2F"
AT+USOWR=0,9,"20485454502F312E31"
AT+USOWR=0,2,"0D0A"
AT+USOWR=0,6,"486F73743A20"
AT+USOWR=0,11,"6578616D706C652E6F7267"
AT+USOWR=0,2,"0D0A"
AT+USOWR=0,17,"436F6E6E656374696F6E3A20636C6F7365"
AT+USOWR=0,2,"0D0A"
AT+USOWR=0,2,"0D0A"
AT+USORD=0,512
AT+USORD=0,512
AT+USORD=0,512
AT+USORD=0,512
AT+USORD=0,512
AT+USORD=0,512
AT+USORD=0,512
AT+USOCL=0

u-BLOX NINA W106 recebendo

AT+CFUN=16

OK

+UUPSDD: 0
AT

OK
AT

OK
AT

OK
AT+CPIN?

+CPIN: READY

OK
AT+CMGF=1

OK
AT+UDCONF=1,1

OK
AT+CTZU=1

OK
AT+UDTMFD=1,2

OK
AT+CREG?

+CREG: 0,0

OK
AT+CREG?

+CREG: 0,0

OK
AT+CREG?

+CREG: 0,0

OK
AT+CREG?

+CREG: 0,0

OK
AT+CREG?

+CREG: 0,0

OK
AT+CREG?

+CREG: 0,0

OK
AT+CREG?

+CREG: 0,0

OK
AT+CREG?

+CREG: 0,0

OK
AT+CREG?

+CREG: 0,1

OK
AT+UCALLSTAT=1

OK
AT+CGATT=1

OK
AT+UPSD=0,1,"claro.com.br"

OK
AT+UPSD=0,2,"claro"

OK
AT+UPSD=0,3,"claro"

OK
AT+UPSD=0,7,"0.0.0.0"

OK
AT+UPSDA=0,3

OK
AT+UPSND=0,8

+UPSND: 0,8,1

OK
AT+USOCR=6

+USOCR: 0

OK
AT+USOCO=0,"example.org",80

OK
AT+USOWR=0,4,"47455420"

+USOWR: 0,4

OK
AT+USOWR=0,1,"2F"

+USOWR: 0,1

OK
AT+USOWR=0,9,"20485454502F312E31"

+USOWR: 0,9

OK
AT+USOWR=0,2,"0D0A"

+USOWR: 0,2

OK
AT+USOWR=0,6,"486F73743A20"

+USOWR: 0,6

OK
AT+USOWR=0,11,"6578616D706C652E6F7267"

+USOWR: 0,11

OK
AT+USOWR=0,2,"0D0A"

+USOWR: 0,2

OK
AT+USOWR=0,17,"436F6E6E656374696F6E3A20636C6F7365"

+USOWR: 0,17

OK
AT+USOWR=0,2,"0D0A"

+USOWR: 0,2

OK
AT+USOWR=0,2,"0D0A"

+USOWR: 0,2

OK
AT+USORD=0,512

+USORD: 0,0,""

OK

+UUSORD: 0,1610
AT+USORD=0,512

+USORD: 0,512,"485454502F312E3120323030204F4B0D0A4167653A203239343839360D0A43616368652D436F6E74726F6C3A206D61782D6167653D3630343830300D0A436F6E74656E742D547970653A20746578742F68746D6C3B20636861727365743D5554462D380D0A446174653A2053756E2C2032352041707220323032312032333A34313A323920474D540D0A457461673A2022333134373532363934372B6964656E74220D0A457870697265733A2053756E2C203032204D617920323032312032333A34313A323920474D540D0A4C6173742D4D6F6469666965643A205468752C203137204F637420323031392030373A31383A323620474D540D0A5365727665723A2045435320286167622F41343331290D0A566172793A204163636570742D456E636F64696E670D0A582D43616368653A204849540D0A436F6E74656E742D4C656E6774683A20313235360D0A436F6E6E656374696F6E3A20636C6F73650D0A0D0A3C21646F63747970652068746D6C3E0A3C68746D6C3E0A3C686561643E0A202020203C7469746C653E4578616D706C6520446F6D61696E3C2F7469746C653E0A0A202020203C6D65746120636861727365743D227574662D3822202F3E0A202020203C6D65746120687474702D65717569763D22436F6E74656E742D747970652220636F6E74656E743D22746578742F68746D6C3B20636861727365743D"
OK

+UUSORD: 0,1098
AT+USORD=0,512

+USORD: 0,512,"7574662D3822202F3E0A202020203C6D657461206E616D653D2276696577706F72742220636F6E74656E743D2277696474683D6465766963652D77696474682C20696E697469616C2D7363616C653D3122202F3E0A202020203C7374796C6520747970653D22746578742F637373223E0A20202020626F6479207B0A20202020202020206261636B67726F756E642D636F6C6F723A20236630663066323B0A20202020202020206D617267696E3A20303B0A202020202020202070616464696E673A20303B0A2020202020202020666F6E742D66616D696C793A202D6170706C652D73797374656D2C2073797374656D2D75692C20426C696E6B4D616353797374656D466F6E742C20225365676F65205549222C20224F70656E2053616E73222C202248656C766574696361204E657565222C2048656C7665746963612C20417269616C2C2073616E732D73657269663B0A20202020202020200A202020207D0A20202020646976207B0A202020202020202077696474683A2036303070783B0A20202020202020206D617267696E3A2035656D206175746F3B0A202020202020202070616464696E673A2032656D3B0A20202020202020206261636B67726F756E642D636F6C6F723A20236664666466663B0A2020202020202020626F726465722D7261646975733A20302E35656D3B0A2020202020202020626F782D7368"
OK

+UUSORD: 0,586
AT+USORD=0,512

+USORD: 0,512,"61646F773A20327078203370782037707820327078207267626128302C302C302C302E3032293B0A202020207D0A20202020613A6C696E6B2C20613A76697369746564207B0A2020202020202020636F6C6F723A20233338343838663B0A2020202020202020746578742D6465636F726174696F6E3A206E6F6E653B0A202020207D0A20202020406D6564696120286D61782D77696474683A20373030707829207B0A2020202020202020646976207B0A2020202020202020202020206D617267696E3A2030206175746F3B0A20202020202020202020202077696474683A206175746F3B0A20202020202020207D0A202020207D0A202020203C2F7374796C653E202020200A3C2F686561643E0A0A3C626F64793E0A3C6469763E0A202020203C68313E4578616D706C6520446F6D61696E3C2F68313E0A202020203C703E5468697320646F6D61696E20697320666F722075736520696E20696C6C757374726174697665206578616D706C657320696E20646F63756D656E74732E20596F75206D61792075736520746869730A20202020646F6D61696E20696E206C69746572617475726520776974686F7574207072696F7220636F6F7264696E6174696F6E206F722061736B696E6720666F72207065726D697373696F6E2E3C2F703E0A202020203C703E3C6120687265663D2268747470733A2F2F7777772E69616E"
OK

+UUSORD: 0,74
AT+USORD=0,512

+USORD: 0,74,"612E6F72672F646F6D61696E732F6578616D706C65223E4D6F726520696E666F726D6174696F6E2E2E2E3C2F613E3C2F703E0A3C2F6469763E0A3C2F626F64793E0A3C2F68746D6C3E0A"
OK

+UUSOCL: 0
AT+USORD=0,512

Modem LISA U200 utilizado

Modem LISA-U200

Questoes: suporte@smartcore.com.br


Sobre a Smartcore

A SmartCore fornece módulos para comunicação wireless, biometria, conectividade, rastreamento e automação.
Nosso portfó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

domingo, 14 de março de 2021

NINA B302 ACESSANDO BLYNK VIA GSM - SARA G350

NINA B302 ACESSANDO BLYNK VIA GSM - SARA G350


O objetivo deste BLOG é demonstrar como é possível utilizar o ARDUINO para programar o módulo U-BLOX NINA B302 para ter acesso a INTERNET via GSM via G350 e assim se comunicar com servidor Blynk.

+

SARA G350

A série SARA-G3 de módulos GSM / GPRS apresenta consumo de energia extremamente baixo e um fator de forma LGA em miniatura. Os módulos SARA-G3 são intercambiáveis ​​e foram projetados tendo em mente as diversas necessidades dos clientes M2M. Diferentes funcionalidades e conjuntos de recursos estão disponíveis para atender aos diferentes requisitos do cliente e da aplicação. SARA-G340 / G350 são módulos GSM / GPRS completos com um conjunto abrangente de recursos, incluindo um amplo conjunto de protocolos de internet (TCP, UDP, HTTP, FTP e SMTP). Elas têm acesso totalmente integrado a chips de posicionamento GNSS u-blox e módulos, junto com a funcionalidade A-GNSS (AssistNow On line e AssistNow Off-line) incorporada. SARA-G350 é o versão quad-band para conectividade global e SARA-G340 (900/1800 MHz) é a versão de banda dupla para otimização de custos uso na Europa e na Ásia. Seu rico conjunto de recursos permite que os clientes desenvolvam facilmente uma ampla gama de dispositivos M2M com desenvolvimento mínimo de software no processador host. SARA-G340 ATEX e SARA-G350 ATEX são ATEX / IECEx variantes certificadas que complementam ainda mais a série de produtos oferecendo a solução ideal para o desenvolvimento de dispositivos inteligentes implantados em ambientes potencialmente explosivos. Módulos celulares u-blox são certificados e aprovados pelo principal órgãos reguladores e operadoras. Software RIL para Android está disponível gratuitamente. Os módulos SARA-G3 são fabricados em locais com certificação ISO / TS 16949. Cada módulo é testado e inspecionado durante a produção. Os módulos são qualificados de acordo com a ISO 16750 - Condições ambientais e testes elétricos para equipamentos elétricos e eletrônicos para rodovias veículos.

BLYNK

Junte-se à plataforma IoT mais popular para conectar seus dispositivos à nuvem, projetar aplicativos para controlá-los e gerenciar seus produtos implantados em escala! Crie sua APP rapidinho e depois porte Blynk para seu próprio servidor.


INSTALE O APP DO BLYNK

Instale um APP do BLYNK e crie uma conta. Crie um projeto de um  FRONT END para acesso ao NINA B302


Então um TOKEN será gerado para o seu e-mail com instruções

Auth Token : xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Happy Blynking!
-
Getting Started Guide -> https://www.blynk.cc/getting-started
Documentation -> http://docs.blynk.cc/
Sketch generator -> https://examples.blynk.cc/

Latest Blynk library -> https://github.com/blynkkk/blynk-library/releases/download/v0.6.1/Blynk_Release_v0.6.1.zip
Latest Blynk server -> https://github.com/blynkkk/blynk-server/releases/
-
https://www.blynk.cc
twitter.com/blynk_app
www.facebook.com/blynkapp

Instalando Arduino Adafruit no NINA B302

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

Gravando bootloader da Adafruit

Use o gravador SEGGER JLINK para gravar o BREAKOUT com módulo NINA B302, conecte nos pinos do SWCLK (pino 7) e SWDIO (pino 9) do SEGGER JLINK nos pinos  SWDCLK e SWDIO do BREAKOUT (pinos nas laterais, próximo à antena). Não esquecer de ligar os GND do BREAKOUT no GND do SEGGER JTAG, bem como alimentar o BREAKOUT com 3.3V.



Ligue os pinos SWD DIO e CLK ...
...nestes pinos da placa BREAKOUT

Você pode também usar o ST-LINK V2



Abra J-FLASH lite e grave o bootloader da Adafruit




O mesmo se encontra em 

....\packages\adafruit\hardware\nrf52\0.19.0\bootloader\feather_nrf52840_express

Compile depois para o NINA B302
https://github.com/adafruit/Adafruit_nRF52_Bootloader

Com ele, você poderá transferir programas via DFU USB. Maiores detalhes sobre este bootloader

https://learn.adafruit.com/introducing-the-adafruit-nrf52840-feather/update-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.

ATENÇÃO, o bootloader usa USB para gravação do NINA 302, OU SEJA, CRIA UMA COMM VIRTUAL, TAMBÉM PARA SER A SERIAL PADRÃO DO ARDUINO

INSTALE OS DRIVERS
https://github.com/adafruit/Adafruit_Windows_Drivers

Conecte na USB + e USB - um cabo USB, AGUARDE INSTALAR OS DRIVERS




ÓTIMA REFERÊNCIA PARA PINOS DO ARDUINO E PINOS (GPIOS) DO NINA B302


Consulte

https://www.u-blox.com/sites/default/files/NINA-B3_DataSheet_%28UBX-17052099%29.pdf

1) Baixe e instale a última versão da IDE do Arduino para o seu NINA.

2) Instale a LIB TINYGSM

https://github.com/khoih-prog/GSM_Generic

Veja o README e atualize Packages para o NINA B302


3) Abra o projeto GSM_BLYNK


  1.  Habilite o modem da U-BLOX em defines.h
  2.  Defina sua APN e User/Pass em defines.h
  3.  Defina o Token do Servidor Blynk em gsm_blynk
  4.  Coloque as credenciais da Operadora de Celular em defines.h

4) Conexões

Conecte o TXD do NINA no TXD do MODEM U-BLOX
Conecte o RXD do NINA no RXD do MODEM U-BLOX

5)  Vá agora em Tools > Board > Boards Manager



6) Selecione o NINA, neste caso, NINA B302




7) Compile e Execute



Comandos enviados pelo NINA via TINYGSM e recebidos

ENVIADOS PELO NINA B302

AT+CFUN=16
AT
AT
AT
AT
AT+CPIN?
AT+CMGF=1
AT+UDCONF=1,1
AT+CTZU=1
AT+UDTMFD=1,2
AT+CREG?
AT+CREG?
AT+CREG?
AT+CREG?
AT+CREG?
AT+CREG?
AT+CREG?
AT+CREG?
AT+UCALLSTAT=1
AT+CGATT=1
AT+UPSD=0,1,"claro.com.br"
AT+UPSD=0,2,"claro"
AT+UPSD=0,3,"claro"
AT+UPSD=0,7,"0.0.0.0"
AT+UPSDA=0,3
AT+UPSND=0,8
AT+UPSND=0,0
AT+USOCR=6
AT+USOCO=0,"blynk-cloud.com",8080
AT+USORD=0,512
AT+USOWR=0,37,"1D0001002042634575644E6F58776376506C437464615149546D4357733074413135746659"
AT+USORD=0,512
AT+USORD=0,512
AT+USORD=0,512
AT+USORD=0,512
AT+USORD=0,512
AT+USOWR=0,92,"110002005776657200302E362E3700682D6265617400363000627566662D696E00323536006465760041726475696E6F00636F6E0047534D5F47454E45524943006275696C64004D617220313420323032312030393A34373A323400"
AT+USORD=0,512
AT+USORD=0,512
AT+USORD=0,512
AT+USORD=0,512
AT+USORD=0,512
AT+USORD=0,512
AT+USORD=0,512
AT+USORD=0,512

RECEBIDOS PELO NINA B302

AT+CFUN=16

OK
AT

OK
AT

AT+CPIN?

+CPIN: READY

OK
AT+CMGF=1

OK
AT+UDCONF=1,1

OK
AT+CTZU=1

OK
AT+UDTMFD=1,2

OK
AT+CREG?

+CREG: 0,0

OK
AT+CREG?

+CREG: 0,0

OK
AT+CREG?

OK
AT+CREG?

+CREG: 0,0

OK
AT+CREG?

+CREG: 0,1

OK
AT+UCALLSTAT=1

OK
AT+CGATT=1

OK
AT+UPSD=0,1,"claro.com.br"

OK
AT+UPSD=0,2,"claro"

OK
AT+UPSD=0,3,"claro"

OK
AT+UPSD=0,7,"0.0.0.0"

OK
AT+UPSDA=0,3

OK
AT+UPSND=0,8

+UPSND: 0,8,1

OK
AT+UPSND=0,0

+UPSND: 0,0,"100.110.76.248"

OK
AT+USOCR=6

+USOCR: 0

OK
AT+USOCO=0,"blynk-cloud.com",8080

OK
AT+USORD=0,512

+USORD: 0,0,""

OK
AT+USOWR=0,37,"1D0001002042634575644E6F58776376506C437464615149546D4357733074413135746659"

+USOWR: 0,37

OK
AT+USORD=0,512

+USORD: 0,0,""

OK
AT+USORD=0,512

+USORD: 0,0,""

OK
AT+USORD=0,512

+USORD: 0,0,""

OK

+UUSORD: 0,5
AT+USORD=0,512

+USORD: 0,5,"00000100C8"
OK
AT+USORD=0,512

+USORD: 0,0,""

OK
AT+USOWR=0,92,"110002005776657200302E362E3700682D6265617400363000627566662D696E00323536006465760041726475696E6F00636F6E0047534D5F47454E45524943006275696C64004D617220313420323032312030393A34373A323400"

+USOWR: 0,92

OK
AT+USORD=0,512

+USORD: 0,0,""

OK
AT+USORD=0,512

+USORD: 0,0,""

Lado do NINA B302

TERMINAL

Start GSM_Blynk on NINA_B302_ublox
GSM_Generic v1.2.3
[2485] 
    ___  __          __
   / _ )/ /_ _____  / /__
  / _  / / // / _ \/  '_/
 /____/_/\_, /_//_/_/\_\
        /___/ v0.6.7 on Arduino

[GSM] begin: UART baud = 115200
[GSM] GSMClient::handleUrc: usr = +UUPSDD: 0
[GSM] GSMClient::handleUrc: usr = +UUSOCL: 0
[GSM] begin: Check autosense
[GSM] begin: Modem OK
[GSM] GSM::begin: _gsmData._state = GSM_ERROR
Connect GPRS failed, try = 1
[GSM] begin: UART baud = 115200
[GSM] begin: Check autosense
[GSM] GSMClient::handleUrc: usr = OK
[GSM] begin: Modem OK
[GSM] GSM::begin: _gsmData._state = GSM_IDLE

Connected to GPRS. IP address = 10.52.37.49
nect: host = blynk-cloud.com, port = 8080
[GSM] GSMClient::connect: OK
[GSM] GSMClient::connected: OK
[GSM] GSMClient::connected: OK
[GSM] GSMClient::connected: OK
[GSM] GSMClient::connected: OK
[28840] Ready (ping: 551ms).
[GSM] GSMClient::connected: OK
[GSM] GSMClient::connected: OK
[GSM] GSMClient::handleUrc: usr = +UUSORD: 0,5
[GSM] GSMClient::connected: OK
[GSM] GSMClient::connected: OK
[GSM] GSMClient::connected: OK
[GSM] GSMClient::connected: OK
[GSM] GSMClient::connected: OK
[GSM] GSMClient::connected: OK
[GSM] GSMClient::connected: OK

Circuito



Modem SARA G350
Blynk APP conectado com END DEVICE (GSM)

8) Código


#include "defines.h" #define USING_NON_BLOCK_BLYNK_CONNECT true ////////////////////////////////////////////////////// // Please enter your sensitive data in the Secret tab or arduino_secrets.h // PIN Number const char PINNUMBER[] = SECRET_PINNUMBER; // APN data const char GPRS_APN[] = SECRET_GPRS_APN; const char GPRS_LOGIN[] = SECRET_GPRS_LOGIN; const char GPRS_PASSWORD[] = SECRET_GPRS_PASSWORD; ////////////////////////////////////////////////////// GSMClient gsmClient; GPRS gprs; GSM gsmAccess; // connection state bool connected = false; bool GSM_CONNECT_OK = false; // BaudRate to communicate to GSM/GPRS modem. If be limit to max 115200 inside modem unsigned long baudRateSerialGSM = 115200; ////////////////////////////////////////////////////// // You should get Auth Token in the Blynk App. // Go to the Project Settings (nut icon). char auth[] = "BcEudNoXwcvPlCtdaQITmCWs0tA15tfY"; bool connectToGPRS() { #define NUMBER_OF_CONNECTION_TRIES 10 uint8_t tryNumber = 1; // After starting the modem with GSM.begin() // attach the shield to the GPRS network with the APN, login and password while ((gsmAccess.begin(baudRateSerialGSM, PINNUMBER) != GSM_READY) || (gprs.attachGPRS(GPRS_APN, GPRS_LOGIN, GPRS_PASSWORD) != GPRS_READY)) { // failed, retry Serial.print("Connect GPRS failed, try = "); Serial.println(tryNumber); if (++tryNumber > NUMBER_OF_CONNECTION_TRIES) { Serial.println("\nCan't connected to GPRS."); connected = false; return false; } delay(1000); } connected = true; //Get IP. IPAddress LocalIP = gprs.getIPAddress(); Serial.print("\nConnected to GPRS. IP address = "); Serial.println(LocalIP); return true; } void setup() { // Open serial communications and wait for port to open: Serial.begin(115200); while (!Serial); delay(200); Serial.print(F("\nStart GSM_Blynk on ")); Serial.println(BOARD_NAME); Serial.println(GSM_GENERIC_VERSION); #if USING_NON_BLOCK_BLYNK_CONNECT Blynk.config(gsmAccess, gprs, gsmClient, auth, blynk_server, BLYNK_HARDWARE_PORT); //GSM_CONNECT_OK = Blynk.connectNetwork(gsmAccess, gprs, PINNUMBER, GPRS_APN, GPRS_LOGIN, GPRS_PASSWORD); GSM_CONNECT_OK = connectToGPRS(); if (GSM_CONNECT_OK) Blynk.connect(); #else Blynk.begin(auth, gsmAccess, gprs, gsmClient, PINNUMBER, GPRS_APN, GPRS_LOGIN, GPRS_PASSWORD); #endif } void loop() { if (gsmAccess.status() != GSM_READY || gprs.status() != GPRS_READY) { connectToGPRS(); } if (connected) { Blynk.run(); } else { delay(10000); } }

Questões: suporte@smartcore.com.br


Sobre a Smartcore

A SmartCore fornece módulos para comunicação wireless, biometria, conectividade, rastreamento e automação.
Nosso portfó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