quarta-feira, 24 de novembro de 2021

NB-IoT - UDP ou TCP ?

Imagine a seguinte situação:

Operador 1: Estamos prontos para ligar 1.000 novos sensores de temperatura hoje?

Operador 2: Tudo pronto! Já temos 1.000 sensores de temperatura existentes. Dobrar os sensores deve ser moleza!

Operador 1: OK ligando 1.000 novos sensores ... Espere, temos um erro ... CONEXÃO RECUSADA ... SERVIDOR MQTT MUITO OCUPADO

Operadora 2: Que estranho ... Esses sensores estão apenas se conectando ao servidor MQTT pela rede móvel 5G, enviando uma mensagem curta de dados do sensor periodicamente, enquanto mantém a conexão ativa. O que poderia ter dado errado?

Operadora 1: O QUÊ ??? Por que não usamos 4G LTE com NB-IoT? Não tem conexão e pode lidar com mais sensores!

Operadora 2: Mas a entrega da mensagem não é garantida com NB-IoT! Então, novamente, talvez não precisemos realmente receber todas as mensagens do sensor ...

Operador 1: TODOS os nossos sensores de temperatura estão DESCONECTADOS! Os aquecedores estão acelerando e soprando AR QUENTE em nossas plantações! Nossos tomates frescos estão fritando! OOOO NÃO!


Vamos enfrentá-lo - NB-IoT é difícil! Mas podemos não perceber que a NB-IoT (ou Internet das coisas de banda estreita ) é difícil porque requer uma mudança de mentalidade ...

Quando os telefones foram criados, seu objetivo era conectar pessoas a outras pessoas para que pudéssemos conversar. Hoje, nossas redes 4G LTE ainda carregam os mesmos conceitos orientados à conexão, mas apresentam uma nova reviravolta: um novo método sem conexão chamado NB-IoT ...

O NB-IoT se concentra especificamente na cobertura interna, baixo custo, longa duração da bateria e alta densidade de conexão . O NB-IoT usa um subconjunto do padrão LTE, mas limita a largura de banda a uma única banda estreita de 200 kHz.

Você está conectado? Ou sem conexão?

Como alcançamos “baixo custo, longa vida útil da bateria e alta densidade de conexão” com o NB-IoT? Da próxima vez que você for a uma festa, tente isto ...

Junte-se ao máximo de pessoas que puder. Ouça o que TODOS têm a dizer.

Quando uma conversa se torna chata, apenas saia sem dizer nada.

Não se sinta obrigado a continuar nenhuma conversa. É seu direito ouvir o quanto quiser. Você NÃO tem o compromisso de permanecer CONECTADO a nenhuma pessoa na festa.

Sim, seus amigos vão achar você estranhamente anti-social. Você perderá algumas ótimas histórias de seus amigos, mas, novamente, eles provavelmente estão repetindo as mesmas velhas histórias.

MAS você aprenderá muito mais, com mais pessoas . E me sinto menos esgotado .

Essa é a melhor maneira ... a maneira SEM CONEXÃO!

Temos usado TCP (Transmission Control Protocol) desde o início da Internet para conectar nossos gadgets ( HTTP e MQTT são dois protocolos populares baseados em TCP). No entanto, o TCP é orientado à conexão - quando dois dispositivos são conectados via TCP, eles precisam permanecer conectados ... ou serão penalizados .

Se algum pacote for descartado (devido à cobertura insuficiente da rede ou congestionamento) ou atrasado, ambos os dispositivos precisarão sincronizar novamente suas janelas TCP retransmitindo seus pacotes. O que pode levar a problemas graves, como o congestionamento do servidor MQTT.

The Connectionless Way: Change TCP to UDP

Em uma rede sem conexão, não há compromisso de permanecer conectado a qualquer dispositivo: basta transmitir ou receber uma mensagem. E siga em frente . (Como nossa festa sem conexão!)


Em vez de estabelecer uma conexão TCP, transmitimos um pacote UDP (User Datagram Protocol) sem esperar a confirmação . Mas, como não têm conexão, os pacotes UDP não têm entrega garantida .

A maioria dos pacotes UDP é entregue corretamente, mas se algum pacote for descartado (devido à cobertura insuficiente da rede ou congestionamento), os dispositivos UDP não tentam ressincronizar e retransmitir os pacotes perdidos.

Não é um problema sério quando os pacotes desaparecem em nossa rede IoT? Bem, realmente precisamos receber todas as leituras do sensor? Em vez de sofrer uma falha de servidor ou congestionamento de rede, poderíamos nos comprometer descartando algumas mensagens do sensor ? É assim que alcançamos alta densidade de conexão no NB-IoT!

Quando vamos sem conexão, nossos gadgets se tornam muito mais simples de construir ... nada de protocolos de janela deslizante bagunçados e esperando para sempre! Portanto, nossos gadgets NB-IoT são de baixo custo e desfrutam de longa vida útil da bateria!

UDP

No seu computador, abra um emulador de terminal (como ). Conecte-se à porta UART a 9600 bps, 8 bits de dados, sem bit de paridade, 1 bit de parada.

Ao inserir os comandos AT abaixo, certifique-se de que seu emulador de terminal envie CR (Ctrl-M ou ) e LF (Ctrl-J ou ) no final da linha.

Rever Profiles

NINA ACESSANDO REDE CELULAR: uBlox SARA-R410M - Primeiros passos (nina-gsm.blogspot.com)

AT+CFUN=1Enable full functionality
OKNow we may start attaching to the network
AT+CGATT=1Attach to the NB-IoT network
OKAttach operation begins
AT+CEREG?Are we registered to the NB-IoT network?
=+CEREG:0,1
OK
0,1 means we have been registered
0,2 means we should wait a few seconds then recheck via AT+CEREG?
AT+CGATT?Are we attached to the NB-IoT network?
=+CGATT:1
OK
1 means we are attached to the NB-IoT net


Enviando pacote UDP

Quando você enviar um desses comandos, o modem responderá com OK ou com um erro. Para saber o que deu errado e causou uma resposta de erro, podemos ativar informações extras usando este comando:

AT+CMEE=1

O valor 1 permite a saída numérica.

por exemplo: CMEE error 4 é valor numérico para "Operação não suportada"

Você pode encontrar a lista desses códigos de erro no manual de configuração de comando.

Quando este valor for definido como 2, ele permitirá a representação "verbose".

Configurações de modem

Em seguida é definir os valores do NCONFIG, esta é uma operação única por modem. Vamos começar com uma reinicialização limpa:

AT+NRB

Lendo os valores:

AT+NCONFIG=?

Precisamos verificar se a conexão automática está ativada. Se este não for o caso, habilite-o!

AT+NCONFIG="AUTOCONNECT", "TRUE"

Para nossa rede (proximus) também habilitamos esses parâmetros:

AT+NCONFIG="CR_0354_0338_SCRAMBLING", "TRUE"

AT+NCONFIG="CR_0859_SI_AVOID", "TRUE"

E estamos prontos para nos conectar à rede!

Sequência de inicialização

Eu sempre começo uma conexão reiniciando o modem. (AT+NRB)

Em seguida, autenticamos para a rede proximus definindo o APN:

AT+CGDCONT=1,"IP","m2minternet.proximus.be"

Em seguida, pesquisamos o status de anexo para a rede usando este comando:

AT+CGATT?

Fazemos isso a cada segundo até que o modem retorne "+CGATT: 1", isso significa que estamos conectados.

Para verificar nossa qualidade de sinal usamos o comando CSQ:

AT+CSQ

Para converter esse valor para o formato dBm, você pode usar a seguinte fórmula

-113 + 2 * csq_value

Enviando uma mensagem UDP

Vamos abrir um soquete no modem:

AT+NSOCR="DGRAM",17,14000

17 significa UDP, 14000 é o porto local.

Agora vamos enviar uma mensagem UDP para um IP disponível público!
AT+NSOST=0,"12.34.56.78",44444,3,"AABBCC"
44444 é a porta do servidor UDP externo e 12.34.56.78 é o IP.

A mensagem é um "AABBCC" de hex-string e você precisa definir o tamanho do pacote que é 3 bytes no nosso caso (0xAA, 0xBB e 0xCC).

Parabéns! Estamos agora falando de UDP sobre NB-IoT!

Fontes:


DÚVIDAS BÁSICAS

suporte@smartcore.com.br

Sobre a SMARTCORE

A SmartCore fornece módulos para comuniçã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

quinta-feira, 30 de setembro de 2021

Visão geral das tecnologias LPWAN


Visão geral das tecnologias LPWAN  - incluindo NBIoT, CAT-M1

Desenvolvimentos recentes nas tecnologias LPWAN preencheram a lacuna dos requisitos de rede no cenário da Internet das Coisas (IoT). Essas tecnologias permitem conectividade de longo alcance, mantendo o consumo de energia e as características de custo mínimas. Normalmente, seus intervalos de comunicação são de até 10 - 40 km em áreas rurais e 1-5 km em áreas urbanas  Seu baixo consumo de energia pode permitir uma vida útil da bateria de 1 a 10 anos, dependendo da aplicação . Isso os torna ideais para casos de uso internos e externos para uma ampla variedade de aplicações de IoT. Entre essas tecnologias IoT, Sigfox, LoRa, NB-IoT, CAT-M1 e NB-Fi são as mais procuradas.

SIGFOX

A Sigfox é uma operadora de rede francesa LPWAN que oferece uma solução para aplicações LPWAN que suportam a faixa de cobertura da rede em quilômetros, consumindo muito pouca energia. Sua infraestrutura é baseada na tecnologia patenteada da empresa e depende da implantação de estações base proprietárias onde quer que seja necessário. 

A conexão entre dispositivos finais e estações base faz uso de bandas ISM (Industrial, Científico e Médico) sub-GHz não licenciadas. O uso da banda de frequência é limitado a apenas 100 Hz, tornando-o muito insensível a ruídos e extremamente eficiente em termos de energia. Inicialmente, o Sigfox suportava apenas comunicação de uplink, ou seja, do dispositivo final para a estação base, e o suporte para comunicação bidirecional foi introduzido posteriormente. Mas a comunicação de downlink, isto é, das estações base para os dispositivos finais, pode seguir apenas após uma comunicação de uplink. 

O Sigfox permite apenas até 140 mensagens de uplink por dia e o comprimento máximo da carga útil para essas mensagens é restrito a 12 bytes. Além disso, apenas 4 mensagens de downlink são permitidas por dia, com o comprimento máximo da carga útil limitado a 8 bytes. Além disso, a taxa de transferência máxima da rede não pode exceder 100 bps. Os intervalos máximos suportados pela Sigfox são de até 10 km em áreas urbanas e até 40 km em áreas rurais.

LoraWAN

LoRa LoRa é uma tecnologia de modulação de espectro de espalhamento de camada física, inovada pela Semtech, que é baseada no esquema de modulação Chirp Spread Spectrum (CSS). A LoRa surgiu como uma LPWAN operando nas bandas de frequência ISM não licenciadas, ou seja, 868 MHz na Europa, 433 MHz na Ásia e 915 MHz na América do Norte. 

LoRa implementa comunicação bidirecional e espalha um sinal de banda estreita para uma largura de banda muito mais ampla, o que torna o sinal extremamente resistente a ruídos e interferências. Isso também reduz o risco de detecção e bloqueio do sinal de saída. O LoRa fornece seis fatores de distribuição que variam de SF7 a SF12, o que permite aos usuários fazer uma compensação adequada entre seu alcance e taxa de dados de acordo com os requisitos da aplicação. O fator de espalhamento é diretamente proporcional ao intervalo e inversamente proporcional à taxa de dados. Isso significa que o SF12 oferece suporte ao intervalo mais longo com a taxa de dados mais baixa e o SF7 oferece suporte ao intervalo mais curto com a taxa de dados mais alta. No geral, o limite inferior da taxa de dados LoRa é 300 bps e o limite superior é 50 kbps. A carga útil máxima permitida para um pacote LoRa é de 243 bytes. 

Enquanto LoRa é o esquema de modulação da camada física, LoRaWAN é um protocolo de comunicação completo construído sobre LoRa que foi padronizado pela primeira vez em 2015 sob LoRa-Alliance. Uma rede LoRaWAN típica consiste em topologia estrela-de-estrelas em que os gateways atuam como um meio-termo entre os dispositivos finais LoRa e uma rede 26 Servidor que transmite os pacotes dos dispositivos finais para um servidor de aplicativos. LoRaWAN funciona sobre LoRa, portanto, a vida útil da bateria de qualquer nó, a qualidade do serviço (QoS), a capacidade da rede e os recursos de segurança disponíveis dependem do protocolo e da arquitetura da rede. Este protocolo e arquitetura junto com suas várias camadas são mostrados na figura abaixo. 

No LoRaWAN, os dispositivos finais não estão associados a um gateway específico. Isso significa que um dispositivo final pode enviar pacotes de dados para vários gateways. Em seguida, cada gateway irá rotear esse pacote de dados para o servidor de rede por meio de algum tipo de conexão de celular, ethernet ou wi-fi legado. Este servidor de rede é projetado de forma inteligente para que possa lidar com pacotes de dados redundantes, enviar confirmações por meio do gateway ideal, lidar com a taxa de dados adaptável e pode fazer algumas verificações de segurança antes de manipular os dados para o servidor de aplicativos.


Outro aspecto importante do LoRaWAN é que ele fornece classes diferentes para dispositivos finais. Essas classes podem ajudar a otimizar a vida útil da bateria do dispositivo final, diferenciando a latência de comunicação de downlink da rede. 

(Classe A) Dispositivos finais bidirecionais: Os dispositivos finais da Classe A oferecem suporte à comunicação bidirecional de forma que, após a transmissão de uplink de cada dispositivo, haja um acompanhamento 27 de duas janelas curtas de recepção de downlink. Este é o modo de operação mais eficiente em termos de energia para dispositivos finais LoRa, pois a comunicação de downlink pode acontecer apenas por um curto período de tempo após uma transmissão de uplink, aumentando assim a latência. 

(Classe B) Dispositivos finais bidirecionais com slots de recebimento programados: Em horários programados, os dispositivos finais de Classe B podem permitir janelas de recebimento extras para comunicação de downlink, além das janelas de recepção de Classe A. A abertura dessas janelas de recebimento agendadas são controladas por um beacon do gateway, para que o servidor de rede saiba quando o dispositivo final está pronto para a comunicação de downlink. 

(Classe C) Dispositivos finais bidirecionais com slots máximos de recepção: Os dispositivos finais desta classe têm janelas de recepção abertas o tempo todo, a menos que quando o dispositivo estiver transmitindo mensagens de uplink. Aqui, a latência é minimizada à custa de uma vida útil muito menor da bateria do dispositivo final. Ao contrário do Sigfox, LoRaWAN não tem nenhuma limitação na quantidade máxima de mensagens de uplink ou downlink. Normalmente, a faixa de cobertura da rede LoRaWAN é de até 5 km em áreas urbanas e de até 20 km em áreas rurais.

NB-IoT 

O NB-IoT surgiu na versão 13 do 3rd Generation Partnership Program (3GPP) em junho de 2016 como uma tecnologia celular de banda estreita projetada para atender aos requisitos de aplicação de IoT. O NB-IoT foi projetado de forma que possa coexistir com outros padrões de celular, como Long-Term Evolution (LTE) e Global System for Mobile Communications (GSM) em bandas de frequência licenciadas. 

O NB-IoT é baseado no protocolo de comunicação LTE e empresta algumas funcionalidades LTE e faz os ajustes necessários para os casos de uso do aplicativo IoT. Assim, podemos visualizar o NB-IoT como um novo protocolo construído especificamente para aplicações LPWAN, mas tem uma base estrutural sólida na forma de LTE. O NB-IoT pode suportar até 100K dispositivos finais por estação base. A taxa de dados é limitada a 20 kbps para a transmissão de uplink e 200 kbps para a transmissão de downlink. Em termos de tamanho da carga útil, o tamanho máximo da carga útil permitido para uma única mensagem é 1600 bytes. Semelhante ao LoRaWAN, o NB-IoT não tem nenhum limite na transmissão de uplink 28 e downlink de mensagens por dia. Em termos de alcance, o NB-IoT pode ter cobertura de até 1 km em áreas urbanas e 10 km em áreas rurais. 

Além da configuração normal do NB-IoT, na qual o modem do dispositivo final deve manter continuamente um link com a estação base LTE, o NB-IoT também oferece suporte a duas configurações diferentes, ou seja, Modo de economia de energia (PSM) e recepção descontínua estendida (eDRX). 

Configuração PSM: A configuração PSM torna mais fácil minimizar o consumo de energia do dispositivo NB-IoT e pode ajudar a atingir a vida útil da bateria de 10 anos. Antes do PSM, era possível desligar o módulo de rádio de um dispositivo para economizar bateria, mas o dispositivo precisava se reconectar à rede LTE na próxima inicialização. Reconectar à rede pode consumir energia considerável e o efeito cumulativo de todas as reconexões ao longo do ciclo de vida de um aplicativo pode ser enorme. A configuração PSM elimina a necessidade de reconexões e ainda permite o desligamento completo do módulo de rádio para economizar bateria. 

O PSM pode ser solicitado fornecendo dois temporizadores (T3324 e T3412) que a rede pode aceitar como estão ou com modificações. Esses valores são então retidos pela rede e o dispositivo permanece registrado na rede. Este registro é válido desde que o dispositivo acorde e envie alguns dados para a rede antes do término desses temporizadores. Um ciclo PSM típico pode ser visto na figura abaixo.

Na configuração PSM, o limite máximo para um dispositivo hibernar é 413 dias (definido por T3412) e o limite máximo para um dispositivo acessível é 186 minutos (definido por T3324).

Configuração eDRX: eDRX é a extensão de um recurso de recepção descontínua (DRX) LTE para dispositivos IoT para ajudar a reduzir o consumo de energia. O DRX permite que os smartphones desliguem momentaneamente o receptor do módulo de rádio para estender a vida útil da bateria. O eDRX pode estender muito o intervalo de tempo durante o qual o dispositivo NB-IoT não pode ser acessado pela rede. O eDRX não é tão eficaz quanto o PSM para reduzir o consumo de energia, mas oferece um equilíbrio entre a acessibilidade do dispositivo e o consumo de energia. O ciclo eDRX típico pode ser visto na figura abaixo.

Na configuração eDRX, os comprimentos de ciclo mínimo e máximo permitidos são 20,48 segundos e 10485,76 segundos (~ 175 minutos), respectivamente.

CAT-M1 

O CAT-M1 foi introduzido na versão 13 do 3GPP e também visava a aplicativos LPWAN. Como o NB-IoT, o CAT-M1 foi construído para coexistir com os protocolos LTE e GSM na banda de frequência licenciada. Os provedores de rede podem fornecer suporte para CAT-M1 na infraestrutura LTE existente por meio de uma atualização de software. 

A comunicação CAT-M1 utiliza largura de banda de 1,40 MHz e pode fornecer taxas de dados de até 1 Mbps em ambas as direções. Comparado com o NB-IoT, o CAT-M1 é ideal para dispositivos de movimentação rápida, pois pode lidar com a comutação eficiente entre as torres de celular de maneira semelhante ao LTE. Além disso, inclui suporte para voz sobre LTE também.

As especificações CAT-M1 ficam em algum lugar entre LTE e NB-IoT e tem como alvo dispositivos IoT que são mais complexos em comparação com NB-IoT, que é ideal para aplicações IoT mais simples.

Comparação de tecnologias LPWAN

A Tabela abaixo resume as especificações técnicas importantes das tecnologias LPWAN discutidas acima. Para esta aplicação, Sigfox não é ideal por causa de suas duas limitações principais. O primeiro sendo o limite de mensagem do uplink para 140 mensagens por dia, e o segundo sendo a restrição do tamanho do pacote do uplink para 12 bytes. Embora 12 bytes seja mais do que a carga útil do sensor ultrassônico de 8 bytes, ele não deixa nenhuma sobrecarga para cabeçalhos de pacote e metadados. LoRa parece ser uma boa solução, pois o tamanho da carga útil e o intervalo com suporte são suficientes para o aplicativo de monitoramento UDS. Além disso, ele pode ser otimizado para baixo consumo de energia, alternando entre diferentes classes de dispositivos, se necessário. Em tecnologias LTE, o NB-IoT parece ser ideal com tamanho de carga útil significativamente alto e alcance decente, além de suportar configurações de potência extremamente baixa. CAT-M1, por outro lado, não pode ser considerado para prototipagem e teste porque sua implantação é limitada na Estônia a partir de agora. NB-Fi tem tamanho de carga suficiente e o limite no 31 As mensagens de uplink e downlink são bastante generosas, mas não oferecem suporte a configurações adicionais para adaptar a solução para uso de baixa potência.


Fontes:
Master Thesis de Haris Ahmed
(TRADUÇÃO)

DÚVIDAS BÁSICAS

suporte@smartcore.com.br

Sobre a SMARTCORE

A SmartCore fornece módulos para comuniçã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

uBlox SARA-R410M - Primeiros passos

uBlox SARA-R410M - Primeiros passos

 

Introdução


Para ajudar os desenvolvedores a começar com o módulo LTE-M " uBlox SARA-R410M ", você pode usar o kit de desenvolvedor (devkit)  Arduino Form Factor (AFF) R410M.

RESUMO DO SARA R410M

SARA-R4 series (u-blox.com)

Para atualizar o devkit, siga o roteiro abaixo:

FIRMWARE UPDATE SARA R410


The SARA-R410M-02B firmware can be downloaded using the following link:

https://ricardoadulis.sharepoint.com/:f:/r/sites/smartcore/Shared%20Documents/---%20SmartCore%20-%20tecnico%20publico?e=5%3a6396277ec56145b3b38423e6275a6f19&at=9

 

The EasyFlash utility can be downloaded using the following link:

https://ricardoadulis.sharepoint.com/:f:/r/sites/smartcore/Shared%20Documents/---%20SmartCore%20-%20tecnico%20publico?e=5%3a6396277ec56145b3b38423e6275a6f19&at=9

 

Please make sure you have following driver also installed:

https://ricardoadulis.sharepoint.com/:f:/r/sites/smartcore/Shared%20Documents/---%20SmartCore%20-%20tecnico%20publico?e=5%3a6396277ec56145b3b38423e6275a6f19&at=9

 

Instructions on performing the update using the EasyFlash utility are as follows:

1.) Please be sure to place the *.DOF file in the EasyFlash installation folder before starting EasyFlash.

2.) Please make sure the SARA-R4 module is powered OFF/disconnected before starting EasyFlash.

3.) Please make sure to run EasyFlash using the “run as administrator” option.

4.) Select the SARA-R4 in the EasyFlash Product selection.

5.) Select USB as the EasyFlash Port selection.

6.) Press the Start button in the EasyFlash program.

7.) Power on the SARA-R4 module and connect it with the PC using USB within 30 seconds (use the USB port, not UART).

8.) The process will take around three minutes to complete. Wait for the green SUCCESS message on the bottom left of the EasyFlash window.

9.) Power down the SARA-R4 module and close EasyFlash when done.

A seguir, descreverei como configurar seu devkit para que seja capaz de enviar comandos AT diretamente de seu computador para o modem ublox. Para fazer isso você precisa

  1. conecte seu devkit com seu computador via USB;
  2. execute comandos AT no seu devkit pela primeira vez.

Conecte seu devkit com seu computador

Partes do SODAQ SARA AFF 410M

Seu devkit será conectado ao seu computador usando mini USB e pode ser acessado com um programa de terminal como "putty" no Windows ou "screen" ou "minicom" no Linux.

Caso você esteja trabalhando com Linux, você tem sorte. Os drivers USB / Serial já devem estar disponíveis em seu sistema e você não precisa instalar mais nada.
Depois de conectar seu devkit via USB com seu computador, você deve encontrar o arquivo de dispositivo
/dev/ttyACM0 (ou /dev/ttyUSB0; /dev/ttyUSB1). Ele é criado automaticamente quando você conecta seu devkit com seu computador e se você o desconectar, seu devkit desaparecerá novamente.

Infelizmente não posso te dizer como habilitar a conexão de terminal serial via USB no Windows ou Mac porque estou trabalhando apenas com Linux. Desculpe : desapontado:.

Execute comandos AT no seu devkit pela primeira vez.

Para executar comandos AT em seu devkit, você precisa iniciar em seu computador um programa de terminal como o putty no Windows ou minicom ou a tela no Linux e conectá-lo ao seu devkit através da linha serial USB. Depois disso, você pode enviar comandos AT para o modem do seu devkit.

A seguir, explicarei como fazer isso no Linux usando o minicom e como enviar esses comandos AT ao modem para consultar informações sobre o produto do dispositivo e IMEI.

Conecte seu devkit com seu computador Linux através do programa de terminal minicom

Caso o minicom ainda não esteja instalado em seu computador, você pode instalá-lo com

$ sudo apt-get install minicom

Depois disso, você pode configurar o minicom executando

$ sudo minicom -s

Menu de configuração principal do minicom.Menu de configuração principal do minicom.

Menu de configuração principal do minicom.

🚧

É importante que você execute a configuração do minicom como root porque o arquivo de configuração resultante será armazenado no diretório / etc / minicom no qual o root possui apenas permissões de gravação.

No menu de configuração do minicom, altere as seguintes configurações:

  • Entrar na configuração da porta serial
    • Defina o dispositivo serial para /dev/ttyACM0
    • Defina a taxa de transmissão ( Bps / Par / Bits ) para 115200 8N1
  • Entrar na tela e no teclado
    • Defina o eco local para Sim
  • Entre em Salvar configuração como
    • Dê r410m como o nome para salvar a configuração
  • Digite a saída do Minicom

Depois de configurar o minicom para seu devkit , você pode iniciar o minicom com a configuração * r410m '* que acabou de criar.

$ minicom refrigerante

📘

Caso você tenha algum problema para acessar o arquivo do dispositivo / dev / ttyACM0 porque você não tem privilégios de acesso suficientes para este arquivo execute o seguinte comando

$ sudo usermod -a -G dialout SEU NOME DE USUÁRIO

Como primeiro comando AT, você deve inserir o comando AT . Este comando deve sempre retornar OK . Se não, algo está errado.

AT

OK

👍

Parabéns

Se você atingiu este ponto, você equipou seu SARA AFF R410M com a capacidade de passar seus comandos AT da interface do terminal USB serial diretamente para o modem ublox.

Agora a diversão começa! :risonho: :risonho:

Comandos AT para obter IMEI, IMSI e outras informações do produto do seu devkit

A seguir, vários comandos AT são mostrados para consultar o IMEI e outras informações do produto de seu devkit.

📘

Se você lida com comandos AT para a série Ublox SARA R4, sempre recomendo usar a https://www.u-blox.com/sites/default/files/SARA-R4_ATCommands_%28UBX-17003787%29.pdf

# Request IMEI AT+CGSN=1 356726101344240 OK # Request IMSI of the SIM card AT+CIMI 901405700025364 OK # Request SIM card identification number AT+CCID +CCID: 89882280000008986545 OK # Request manufacturer identification AT+CGMI u-blox OK # Rquest model identification AT+CGMM SARA-R410M OK # Request firmware version identification AT+CGMR L0.0.00.00.05.08 [Apr 17 2019 19:34:02] OK # Request prodct type number ATI Manufacturer: u-blox Model: SARA-R410M-02B Revision: L0.0.00.00.05.08 [Apr 17 2019 19:34:02] SVN: 03 IMEI: 356726101344240 OK # Request the version of the modem and the application ATI9 L0.0.00.00.05.08,A.02.04 OK

Conecte-se à rede LTE-M


Este capítulo explica como você pode conectar seu devkit SARA AFF R410M à rede LTE-M. Recomendo a leitura do capítulo "Configuração do SARA AFF R410M" primeiro.

🚧

Se você está interessado apenas na conclusão dos comandos AT para configurar a rede, vá para o capítulo Somente comandos AT

❗️

Atualmente, ainda estamos trabalhando em um servidor de suporte LTE-M, o que significa que você não pode enviar nenhuma mensagem para a Visão geral do Starterkit, como normalmente acontece com um dispositivo NB-IoT.

Algumas suposições e notas antes de começar com este manual

  • Você deve ser capaz de enviar comandos AT para o seu devkit com um programa de terminal, como putty, screen, minicom, etc.
  • Seu dispositivo está com o firmware mais recente
  • Seja gentil com o seu dispositivo e tenha um pouco de paciência. Após cada comando AT, ele / ela precisa de alguns segundos para executar o comando e responder

A seguir, examinaremos juntos os comandos AT com os quais você pode realizar as seguintes ações:

  • Configure a configuração de rede do seu devkit.
  • Conecte-se à rede e verifique sua configuração de rede.
  • Faça ping em um endereço IP.

Configurar configuração de rede

Leia antes o capítulo 7 e 8 (até 8.5)

Seleção de operadora de rede móvel (MNO)
 
Use o comando AT + UMNOPROF para alterar perfis para um Operador de rede móvel (MNO) específico:

AT+UMNOPROF? - mostrar perfil atual
AT+UMNOPROF=? - lista perfis suportados
AT+UMNOPROF=<n> - defina o perfil como<n>

Notas:

Não modifique parâmetros individuais no perfil, como a seleção do operador, pois isso pode quebrar a compatibilidade com o seu operador. 
  • você deve se desregistrar da rede antes de alterar o MNO (AT+COPS=2) 
  • você deve fazer um reset após alterar o MNO (AT+CFUN=15 emite um reset silencioso com uma desconexão da rede e salvando os parâmetros NVM); 
  • Definir o perfil para o perfil definido atualmente não redefine os parâmetros. 
  • Para redefinir os parâmetros, defina um perfil diferente do atual e, em seguida, defina o perfil de volta ao original (como 0).
at "AT+COPS=2" # deregister from network
at "AT+UMNOPROF=0" # set MNO to auto
at "AT+UMNOPROF=45" # set MNO to TIM

at "AT+CFUN=15" # de-register from network, save NVM, and reset modem

Defina um perfil de Operador de rede móvel pré-configurado com o comando.+UMNOPROF

AT+UMNOPROF=XX OK




Defina o URAT para LTE-M com o comando.+URAT

AT+URAT=7 OK

Defina o APN dos criadores de IoT com para m2m.public.nl.+CGDCONT

AT+CGDCONT=0,"IP","m2m.public.nl" OK

Defina o status de registro da rede EPS com o comando.+CEREG

AT+CEREG=3 OK

Selecione a operadora de rede de sua escolha com o comando manualmente (1), dada a identificação numérica (2) da operadora ("26201", "20416", "26002", etc.)+COPS

AT+COPS=1,2,"26201" OK
AT+COPS=1,2,"20416" OK
AT+COPS=1,2,"26002" OK

👍

: +1:Excelente! Sua configuração de rede está concluída agora.

A próxima etapa é testar se está correto e se o seu devkit é capaz de se conectar à rede com ele.

Boa sorte :sorriso pretensioso:

A seguir, verificaremos se o seu devkit está realmente conectado à rede e verificaremos a configuração da rede com mais alguns comandos AT.


Conecte-se à rede e verifique sua configuração de rede

Depois de reiniciar seu devkit, a pergunta mais interessante é se seu devkit obteve um endereço IP atribuído pela rede.
Você pode consultar o endereço IP atribuído de seu devkit com o comando.+CGPADDR

AT+CGPADDR +CGPADDR: 0,"10.128.1.157" OK

Como resultado, seu devkit retorna o endereço IP atual. Nesta amostra é10.128.1.157

📘

:nervoso: O que fazer se não funcionar :criança levada:

Se você não conseguir estabelecer um anexo de rede, verifique o seguinte

  • Você configurou o APN correto?
  • Você configurou a operadora de rede móvel correta em seu país?
  • Você se certificou de que seu cartão SIM possui roaming ativo, caso você não esteja no país de origem da operadora de rede?

Comandos AT para consultar informações de rede

A seguir, mostrarei mais alguns comandos AT com os quais você pode consultar outras informações sobre o status da conexão móvel.

# Query the configured MNO (Mobile Network Operator) AT+COPS? +COPS: 0,2,"26201" OK # Query the configured APN AT+CGDCONT? +CGDCONT: 0,"IP","m2m.public.nl",,0,0,,,,,0 OK # Query signal power and quality # Power should be between 0-31 and NOT 99. 99 means "no network detactable" # Quality should be between 0-9. 99 means not know or not detactable. AT+CSQ +CSQ: 9,99 OK

Apenas comandos AT (rede)

####################################################################### # Network attach ####################################################################### #Set a MNO profile AT+UMNOPROF=1 # Set the APN AT+CGDCONT=0,"IP","m2m.public.nl" # Set URAT AT+URAT=7 # EPS network registration status AT+CEREG=3 # select an operator DE:"26201", NL:"20416" AT+COPS=1,2,"26201" ####################################################################### # Network attach verification ####################################################################### # Check IP address AT+CGPADDR # Check MNO AT+COPS? # Check APN AT+CGDCONT? # Check signal strength and qualitay AT+CSQ # Extended error report AT+CEER #######################################################################

Comunique-se com um broker MQTT


Nos capítulos a seguir, explicarei como é possível definir um broker MQTT com comandos AT e como enviar e receber mensagens de ou para um tópico.

🚧

Se você estiver interessado apenas na conclusão dos comandos AT para definir e se comunicar com um broker MQTT, vá para o capítulo "Apenas comandos AT

Defina um broker MQTT e conecte-se a ele

Bem-vindo a esta etapa do tutorial. Você provavelmente acabou aqui porque conseguiu conectar seu devkit à rede com sucesso.
Antes de continuar, certifique-se de que seu dispositivo possui um endereço IP atribuído. Você pode verificar isso com o comando.+CGPADDR

AT+CGPADDR +CGPADDR: 0,"10.128.4.109" OK

Nas próximas etapas, você aprenderá como

  • definir o broker MQTT com o qual deseja se comunicar
  • definir seus dados de usuário (se você precisar de uma autenticação para o acesso ao servidor)
  • conecte-se ao servidor e desconecte-se do servidor

Configure as configurações do broker MQTT

Essas configurações definem o corretor com o qual você deseja se comunicar. Você definirá o nome do corretor, o endereço IP e seu IMEI com comandos.+UMQTT

Set your IMEI AT+UMQTT=0,"356726101344240" Set the Port AT+UMQTT=1,1883 Set server name AT+UMQTT=2,"your_broker_url" Set server IP and its port (e.g. 1883) AT+UMQTT=3,"your_broker_IP",1883


Defina seus dados de login

No caso de você precisar de uma autenticação para obter acesso ao seu broker MQTT, você precisará definir seu nome de usuário e senha antes de obter uma conexão.

AT+UMQTT=4,"your_username","your_password" AT+UMQTT: 4,1 OK

Conecte-se e desconecte-se do seu broker

Depois de definir seu corretor e configurar seus dados de acesso, você pode iniciar e interromper uma conexão com o comando.+UMQTTC

AT+UMQTTC=1 +UMQTTC: 1,1 OK
AT+UMQTTC=0 +UMQTTC: 0,1 OK

Publique uma mensagem em um tópico

Depois de se conectar com sucesso ao broker usando o comando, você o usará novamente para publicar uma mensagem em um tópico específico.+UMQTTC

AT+UMQTTC=2,0,0,"your_topic",Hello World" +UMQTTC: 2,1 OK

Inscreva-se em um tópico e receba mensagens dele

Bem-vindo de volta ao tutorial : +1:.
Nesta etapa, explicarei como você pode receber uma mensagem de downlink "Hello Device" de um tópico.

Neste tutorial, você aprenderá como:

  • inscreva-se em um tópico do qual deseja receber mensagens
  • leia a (s) mensagem (ns)


Assine o tópico do qual deseja receber a mensagem

Basta usar o comando mais uma vez e definir o tópico que deseja inscrever.+UMQTTC

AT+UMQTTC=4,0,"your_topic" +UMQTTC: 4,1 OK

Você também pode cancelar a assinatura de um tópico com o comando.

AT+UMQTTC=5,0,"your_topic" +UMQTTC: 5,1 OK

Depois você pode ler a (s) mensagem (ns) deste tópico.

AT+UMQTTC=6,1 +UMQTTC: 6,0,31,13,"your_topic",18,"Hello Device" OK
Conectando ao ThingSpeak


Fontes:

DÚVIDAS BÁSICAS

suporte@smartcore.com.br

Sobre a SMARTCORE

A SmartCore fornece módulos para comuniçã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