Comunicação LoRa com Arduino Ponto a Ponto (P2P) - MakerHero

Comunicação LoRa com Arduino Ponto a Ponto (P2P) 52

Apesar da disponibilidade das tecnologias Wi-Fi, Bluetooth e redes de comunicação celular (GPRS/3G/4G) em diferentes soluções em Internet das Coisas (IoT), surgiu a necessidade por um tipo de comunicação de longo alcance com baixo de consumo de energia. Assim, um novo grupo de tecnologias de comunicação, as LPWAN (do inglês Low Power Wide Area Networks), apresentam como principais características alto alcance de transmissão e baixo consumo de energia. As duas redes LPWAN mais conhecidas são a rede Sigfox e redes LoRa, sendo esta última baseada na tecnologia LoRa e procotolo LoRaWAN. Essas tecnologias também estão disponíveis para comunicação LoRa com Arduino.

A tecnologia LoRa trata-se de um tipo de modulação patenteado pela empresa SEMTECH e disponível como comunicação de radiofrequência (RF) nas frequências 433, 868 e 915 MHz. As faixas de operação do LoRa fazem parte da banda ISM (Industrial Sientific and Medical), onde diferentes intervalos são reservadas internacionalmente para o desenvolvimento Industrial, científico e médico. Um exemplo de um módulo de comunicação que também faz parte da banda ISM é o nRF24L01.

O transceiver LoRa SX1276

Considerando as alternativas para desenvolvimento de soluções em sistemas embarcados e projetos makers e DIY de baixo custo com a tecnologia LoRa, um módulo em especial se destaca, o SX1276. O módulo SX1276 é um transceiver, dispositivo responsável pela comunicação sem fio, oferecendo comunicação de espectro disperso de alcance ultra longo e alta imunidade a interferências e minimizando o consumo de energia.

O transceiver SX1276 é um circuito integrado muito pequeno e que necessita diferentes circuitos de proteção a interferências e ruídos, assim diversos fabricantes têm disponibilizado o SX1276 em módulos com comunicação serial para diversas plataformas de desenvolvimento, como Arduino e Raspberry Pi. Assim, torna-se importante conhecer os diferentes módulos LoRa baseado no SX1276.  A figura abaixo ilustra três dos principais módulos LoRa baseados no SX1276 que podem ser conectados com plataformas como Arduino e Raspberry Pi.

Módulos LoRa

Da esquerda para direita temos o módulo LoRa mini, e LoRaF 30, ambos da niceRF. A diferença entre os dois primeiros corresponde a potência de transmissão, o LoRa mini permite transmissao com 100mW e LoRaF 30 com 500mW. O terceiro módulo corresponde ao RFM95W da HopeRF. Vale destacar que você já encontra o LoRa mini disponível para venda na loja virtual da MakerHero.

Em comum a todos os três módulos listados acima tem-se a pinagem para conexão com as placas de desenvolvimento, baseado na comunicação seria pelo protocolo SPI, onde será detalhada na seção a seguir.

A pinagem para comunicação com Arduino e outras plataformas

Como descrito anteriormente, o tipo de comunicação serial utilizado pelos diferentes módulos baseados no SX1276 é o protocolo SPI. Assim, faz-se necessária a identificação dos pinos principais para o estabelecimento da comunicação. Do protocolo SPI temos os pinos: SCK, MISO, MOSI e NSS (que atua como Chip Select). Os pinos responsáveis pela alimentação do módulo são o VCC (com funcionamento exclusivamente na tensão de 3.3V!) e o GND (terra). Para a conexão com antena, seja esta helicoidal, wire (baseada em fio) ou com algum conector específico, o pino ANT. Outros pinos exclusivos do módulo são: DIO0, DIO1, DIO2, e NRESET.  A tabela abaixo mostra a descrição completa (também ilustrada na Figura) e resumida.

Módulo LoRa

Tabela Pinagem para comunicação LoRa com Arduino

Comunicação Ponto a Ponto (P2P) e comunicação LoRaWAN

É importante diferenciar o tipo de comunicação a ser utilizada com o módulo LoRa. A tecnologia torna-se possível para comunicação de maneira direta entre módulos, comunicação ponto a ponto (P2P) e o uso dos módulos para caracterizar um dispositivo conectado com o protocolo LoRaWAN. Como o objetivo inicial deste post é introduzir a comunicação do módulo com Arduino, irei abordar apenas a comunicação P2P, por enquanto.

Circuito LoRa Mini com Arduino UNO

Para a conexão do modulo LoRa mini com o Arduino faz-se necessário o uso de conversor de nível lógico 3.3-5V Bidireccional, visto que o Arduino UNO opera em 5V e o nível lógico do modulo LoRa mini é 3.3V. Assim, segue a lista dos componentes necessários (para a comunicação LoRa com Arduino entre dois módulos):

Componentes utilizados

  • 2x Arduino UNO R3
  • 2x Módulo LoRa Mini 915MHz
  • 4x Conversor de Nível Lógico 3.3-5V Bidireccional ou 2x PCBs adaptadoras do módulo LoRa

Antes de começar qualquer passo da montagem do circuito note que o módulo LoRa mini não possui conexão direta com os tradicionais pinos da protoboard. Assim faz-se necessária uma conexão com protoboard ou pinos para ligação com Arduino UNO. Duas opções tornam-se possíveis (mostradas na figura abaixo): soldar diretamente o jumper a ser utilizado na placa ou utilizar uma placa de circuito (PCB) de modo a adaptar a ligação do módulo.  O leitor que optar pela segunda opção pode utilizar esta placa open-source hardware desenvolvida anteriormente para conexão.

Montagem Módulo LoRa

Considerando o uso com Arduino UNO (também válido para o Mega e placas baseadas no Atmega32u4 como Arduino Leonardo) segue abaixo a tabela para comunicação.

Tabela Ligação Arduino

Programação para Comunicação LoRa com Arduino

Considerando as bibliotecas disponíveis para a operação do LoRa como comunicação RF direta entre sistemas embarcados, a biblioteca Arduino LoRa, do Sandeep Mistry, torna-se uma solução bastante interessante para comunicação LoRa com Arduino pelo fato da mesma implementar o endereçamento de dispositivos, ao anexar um cabeçalho no payload da mensagem. A mesma está disponível no GitHub e também pode ser adicionada pela IDE Arduino, como mostrado a seguir.

O código a ser utilizado pela biblioteca possui alguns parâmetros de configuração, como o endereço do dispositivo, o endereço do destino da mensagem e o intervalo de tempo entre o envio de mensagens. O código comentado e explicado, pode ser encontrado a seguir:

// Comunicação LoRa com Arduino 
// Definicao das bibliotecas a serem utilizadas no projeto
#include <SPI.h>             
#include <LoRa.h>

// Definicacao de constantes
const int csPin = 10;         // Chip Select (Slave Select do protocolo SPI) do modulo Lora
const int resetPin = 0;       // Reset do modulo LoRa
const int irqPin = 4;         // Pino DI0

String outgoing;              // outgoing message

byte localAddress = 0xBB;     // Endereco deste dispositivo LoRa
byte msgCount = 0;            // Contador de mensagens enviadas
byte destination = 0xFF;      // Endereco do dispositivo para enviar a mensagem (0xFF envia para todos devices)
long lastSendTime = 0;        // TimeStamp da ultima mensagem enviada
int interval = 5000;          // Intervalo em ms no envio das mensagens (inicial 5s)

// Setup do Microcontrolador
void setup() 
{
  // inicializacao da serial 
  Serial.begin(9600);                   
  while (!Serial);

  Serial.println(" Comunicacao LoRa Duplex - Ping&Pong ");

  // override the default CS, reset, and IRQ pins (optional)
  LoRa.setPins(csPin, resetPin, irqPin);// set CS, reset, IRQ pin

  // Inicializa o radio LoRa em 915MHz e checa se esta ok!
  if (!LoRa.begin(915E6)) 
  {             
    Serial.println(" Erro ao iniciar modulo LoRa. Verifique a coenxao dos seus pinos!! ");
    while (true);                      
  }

  Serial.println(" Modulo LoRa iniciado com sucesso!!! :) ");
}

// Loop do microcontrolador - Operacoes de comunicacao LoRa
void loop() 
{
  // verifica se temos o intervalo de tempo para enviar uma mensagem
  if (millis() - lastSendTime > interval) 
  {
    String mensagem = " Ola mundo! :O ";    // Definicao da mensagem 
    sendMessage(mensagem);
    Serial.println("Enviando " + mensagem);
    lastSendTime = millis();            // Timestamp da ultima mensagem
  }

  // parse for a packet, and call onReceive with the result:
  onReceive(LoRa.parsePacket());
}

// Funcao que envia uma mensagem LoRa
void sendMessage(String outgoing) 
{
  LoRa.beginPacket();                   // Inicia o pacote da mensagem
  LoRa.write(destination);              // Adiciona o endereco de destino
  LoRa.write(localAddress);             // Adiciona o endereco do remetente
  LoRa.write(msgCount);                 // Contador da mensagem
  LoRa.write(outgoing.length());        // Tamanho da mensagem em bytes
  LoRa.print(outgoing);                 // Vetor da mensagem 
  LoRa.endPacket();                     // Finaliza o pacote e envia
  msgCount++;                           // Contador do numero de mensagnes enviadas
}

// Funcao para receber mensagem 
void onReceive(int packetSize) 
{
  if (packetSize == 0) return;          // Se nenhuma mesnagem foi recebida, retorna nada

  // Leu um pacote, vamos decodificar? 
  int recipient = LoRa.read();          // Endereco de quem ta recebendo
  byte sender = LoRa.read();            // Endereco do remetente
  byte incomingMsgId = LoRa.read();     // Mensagem
  byte incomingLength = LoRa.read();    // Tamanho da mensagem

  String incoming = "";

  while (LoRa.available())
  {
    incoming += (char)LoRa.read();
  }

  if (incomingLength != incoming.length()) 
  {   
    // check length for error
    Serial.println("erro!: o tamanho da mensagem nao condiz com o conteudo!");
    return;                        
  }

  // if the recipient isn't this device or broadcast,
  if (recipient != localAddress && recipient != 0xFF)
  {
    Serial.println("This message is not for me.");
    return;                             // skip rest of function
  }

  // Caso a mensagem seja para este dispositivo, imprime os detalhes
  Serial.println("Recebido do dispositivo: 0x" + String(sender, HEX));
  Serial.println("Enviado para: 0x" + String(recipient, HEX));
  Serial.println("ID da mensagem: " + String(incomingMsgId));
  Serial.println("Tamanho da mensagem: " + String(incomingLength));
  Serial.println("Mensagem: " + incoming);
  Serial.println("RSSI: " + String(LoRa.packetRssi()));
  Serial.println("Snr: " + String(LoRa.packetSnr()));
  Serial.println();
}

Funcionamento dos módulos LoRa conectados

Para realizar uma comunicação LoRa com Arduino entre dois módulos basta programar cada respectivo Arduino com seu endereço e o endereço do módulo a ser enviado. Por exemplo, programe um módulo condereco 0x01 e com envio de mensagens para o módulo 0x05. Em seguida, programe um Arduino com o endereço 0x05 e envio para 0x01.

Gostou de aprender mais sobre comunicação LoRa com Arduino? Ajude-nos a melhorar o blog comentando abaixo sobre este tutorial.

Faça seu comentário

Acesse sua conta e participe

52 Comentários

  1. MISTÉRIO!!!!!….MEU Lora (RA-02) esta funcionando sem o terra (GND) conectado…e quando conecto ele fica pirado e imprime caracteres ilegíveis, alguém tem explicação para isso?

    1. Olá,

      Pode ser que o GND esteja atuando como uma antena para ruído externo de alguma forma.

      Todos os GND estão interconectados?
      Diferentes níveis de referência são um dos possíveis motivos para este problema.

      Abraços,
      Vinícius – Equipe MakerHero

  2. Bom dia, Tudo bem ?

    Por acaso existe algum vídeo tutorial ou algum produto semelhante e pronto para que eu possa comprar ?

    Outra dúvida, será que essa solução poderia ser utilizada para capturar imagens de uma aeronave acrobática cuja distância varia em um raio de 3-5km e 1km de altura ?

    Muito Obrigado

  3. Bom dia

    Tenho muito pouca experiencia em programação, gostaria se puder me desse a informação de como acoplar o E 32 em um transmissor e receptor de portão ( aproveitando somente o CI transcoder MC145026 e o decoder MC 145028 ) para que eu possa aumentar o alcanse.

    OBRIGADO

  4. Ola Bom dia,

    Preciso usar a frequencia 433,42 MHZ é possivel?

    Obrigado,

    1. Leandro,

      Aí você precisa de receptor e transmissor com essa frequência.

      Abraços!
      Diogo – Equipe MakerHero

  5. Quais são os pinos que devo conectar o conversor de nível lógico no arduíno e no Modulo Lora ?

    1. Gustavo,

      Aqui um link para te ajudar a utilizar: https://www.arduinoecia.com.br/2015/11/conversor-de-nivel-logico-33-5v-Arduino.html
      Você deve utilizar apenas nos pinos que necessitam da conversão (então os que estiverem ligados ao arduino devem ser convertidos).

      Abraços!
      Diogo – Equipe MakerHero

  6. Boa tardem, então, não entendi quais são as portas que devo utilizar o conversor de nível lógico pois há varias entrada que ligam no arduino? outra dúvida é, eu possuo um esp 32 com módulo lora eu consigo fazer a comunicação entre o arduino com o chip da lora enviar os dados para o esp 32 com Lora ?

    1. Gustavo

      Como já tens o LoRa embutido no ESP32, é para ser possível fazer a comunicação com o Arduino sim.

      Abraços!
      Diogo – Equipe MakerHero

  7. Como fazer para ler varios lora com arduino conectados via wireless , por exemplo , sistema de monitoramento de solo?

  8. Boa tarde, Gostaria de saber se vcs podem disponibilizar a PCB criada na Figura 3 para soldar o módulo. Obrigado

    1. Gustavo,

      O módulo utilizado é este: https://www.makerhero.com/produto/modulo-rf-wireless-lora-915-mhz-mini/

      Abraços!
      Diogo – Equipe MakerHero

  9. Olá!
    É um pouco ingenuo, mas, há a possibilidade de ligar um E32 (915Mhz) em um Arduino nano? Pois com essa sketch, e alterando apenas alguns pinos, ainda sim não consigo evoluir meu projeto 🙁

    1. Marcus,

      O que acontece com seu projeto? Pode detalhar melhor?

      Abraços!
      Diogo – Equipe MakerHero

  10. Olá Eron,
    Parabéns pelo artigo.
    Algumas considerações:
    1. Vc selecionou o exemplo com callback. Por algum motivo especial?
    2. No exemplo, já após a inicialização ambos os rádios enviam “Olá mundo!”, um ao outro. Pode haver conflito pela possível superposição das transmissões?
    3. Para uma comunicação mestre-escravo multiponto além da possibilidade do uso de lorawan que você citou, imaginei o mestre fazendo um pooling nos endereços de todos os escravos, perguntando sem eles tem algo à enviar, aguardando a resposta do escravo que, quando negativa, o mestre passaria a perguntar ao próximo e, quando positiva, receberia a mensagem desse escravo. Bem como quando o mestre tivesse dados à mandar à um escravo, interromperia o pooling, enviaria o pacote, aguardaria a resposta dele e depois prosseguiria com o pooling. Nessa configuração, o escravo nunca transmite a não ser que seja questionado com seu endereço específico pelo mestre. O que acham?

  11. Boa tarde. Estou desenvolvendo um projeto de monitoramento de temperatura em um ambiente e, para tanto, preciso coletar três valores distintos de temperatura e envia-los, cada qual com seu módulo de transmissão, à um único módulo receptor de radiofrequência.
    Sei que com os modelos MX-FS-03V e MX-0.5V de RF 433Mhz é possivel realizar esta operação via Arduino. Minha dúvida é se o LoRa também permite esse tipo de comunicação (E se a biblioteca aqui apresentada também suporta). Por se tratar de um projeto simples, não gostaria de implementar nenhum tipo de protocolo. O reconhecimento de canal de transmissão poderia se dar simplesmente por um ID vinculado ao corpo da mensagem enviada.

    Caio Henrique Loureiro Guimaraes
    1. Olá, Caio,

      Sugiro que leve seu projeto lá no nosso fórum, lá é possível ajudar melhor 🙂

      Abraços!
      Diogo – Equipe MakerHero

  12. Se a alimentação do módulo LORA é 3v3, NÃO PODE SE CONECTAR DIRETO COM O ARDUINO cujos niveis lógicos são 5v.

    1. Sim, JLuiz, estás correto.

      Por isso é usado um conversor de sinal lógico.

      Abraços!
      Diogo – Equipe MakerHero

  13. Posso fazer uma comunicação LoRa de um Moteino (já vem com o módulo LoRa) com uma Raspberry PI? Outra dúvida é como programar o moteino na IDE do arduino, se isso seria possível.

    1. Olá, Lucas,

      É possível fazer o Moteino se comunicar com a Pi, no entanto não sei como fazê-lo através do LoRa. Sobre programar o com a IDE do Arduino, a própria fabricante do Moteino oferece um tutorial: https://lowpowerlab.com/guide/moteino/programming-libraries/

      Abraços!
      Diogo – Equipe MakerHero

  14. Olá, td bem ?
    Estou tentando fazer a comunicação de alguns sensores como acelerômetro, alguns potenciômetros, entre outros, seria possível?
    Obrigado

    1. E aí, Pedro, tudo certo?

      Então, sugiro você levar esse tipo de dúvida (como projetos e afins) para nosso fórum! Lá é mais tranquilo prestar um suporte mais detalhado e o pessoal pode te ajudar 😉

      Abraços!
      Diogo – Equipe MakerHero

  15. Bom dia !
    Existe algum aparelho para funcionar junto com arduino ou raspberry para transmissão de dados de longa distância ?
    Para receber dados de um balão meteorológico (acima de 19 km de altitude) ?
    Agradeço informações sobre o projeto .!

    1. Olá Carlos,

      Sugiro que você poste sua dúvida no nosso fórum.
      Lá o pessoal pode te ajudar nisso!

      Abraço!
      Rosana – Equipe MakerHero

    2. Este requisito de distancia ja fica nos limites da tecnologia LoRa, acredito que pode funcionar, mas vai depender muito do setup de antenas utilizado.

  16. Bom dia!

    Antes da minha pergunta, gostaria de dizer que gostei bastante do texto!

    Preciso desenvolver um projeto onde 3 dispositivos LoRa precisam se conversar (de forma endereçada). Não preciso externar essas informações, ou seja, não preciso de um Gateway (acredito que, por isso, o LoRaWAN não se aplique). Vale ressaltar que, no mesmo ambiente, provavelmente existirá outros conjuntos de 3 dispositivos LoRa se conversando. Mas é importante que não exista colisão entre as mensagens (caso duas mensagens sejam enviadas ao mesmo tempo).

    Gostaria de saber se alguém conhece alguma biblioteca para microcontroladores embarcados (preferencialmente em C para os micros da ST Microeletronics) para esse tipo de aplicação ou se conhecem algum projeto semelhante que possa me ajudar.

    Muito obrigado!
    Abraços!

    1. Oi Tiago, tudo certo?

      Tem sim, a biblioteca LMIC funciona para devices LoRaWAN. Tanto para algumas placas Arduino e tambem para o STM32.

      Da uma olhada em https://github.com/lmic-lib/lmic

      E pesquisa sobre LMIC: LoRAWAN MAC IN C.

      abcs

  17. Bom dia,
    Se usar um conversor de nível lógico como este do link abaixo, ainda assim é necessário utilizar 4 unidades?
    https://www.4hobby.com.br/Conversor-de-Nivel-Logico-Bidirecional-3v3-5V-200203

    Teria o esquema de conexões utilizado?

    1. Olá Ronaldo,

      Para a conexão de um Lora com um Arduino é necessário fazer a conversão lógica de 5 pinos. Por isso, são necessários 4 conversores.

      Abraço!
      Rosana – Equipe MakerHero

  18. Preciso realizar uma leitura de dados em tempo real através de sensores em um Arduíno e transmitir isso diretamente para um computador a uma distância de até 100 metros. Economia de energia é fundamental no sistema.
    O LoRa resolve o problema?
    Preciso de um para enviar e outro para receber?
    O sensor também estará em movimento, isso é um problema?
    Alguma sugestão caso o LoRa não resolva?

    1. Olá Everson,

      O LoRa resolve o problema? Sim, o módulo RF Wireless Lora 915MHz possui baicxo consumo de energia (10,3 mA no modo receptor e 100 mA no modo emissor)
      Preciso de um para enviar e outro para receber? Sim.
      O sensor também estará em movimento, isso é um problema? Não, desde que esteja dentro do raio de alcance (aproximadamente 4km)

      Abraço!
      Rosana – Equipe MakerHero

    2. Resolve sim. Acredito que o efeito do movimento tambem nao ira afetar, ja realizei testes com objetos em movimentom com o LoRa.

      abcs

  19. Olá, posso implementar esta biblioteca em um arduino mega?

    1. Olá Elcio,

      Sim, também válido para o Mega e placas baseadas no Atmega32u4 como Arduino Leonardo.

      Abraço!
      Rosana – Equipe MakerHero

  20. Fala Eron! Tudo certo?

    É possível fazer uma comunicação de áudio, como se fosse uma conferência de voz?

    Quero montar algo parecido com aqueles comunicadores que colocam em capacete de moto para viajar e se comunicar, porém utilizando o LoRa. No caso, preciso enviar o audio por um microfone que será plugado nele, e receber do outros simultaneamente, sem pressionar botões (como ocorria com um Nextel, por exemplo).

    Não quero atingir grandes distâncias… minha dificuldade na realidade é em como fazer para o LoRa receber o audio do microfone e transmitir para o outro lado transmitir pelo fone.

    Talvez precisaria montar um servidor que recebesse e enviasse os áudios, mas se não precisasse de um, seria mais interessante (não que isso seja um problema).

    Consegui fazer essa comunicação via WiFi usando linux, mas não queria depender de sinal de WiFi…

    1. Olá Edmilson,

      você conseguiu fazer algo ou postou no fórum? Pois estou querendo fazer a mesma coisa.

  21. Muito bom este material que postou; foi importante para min que estou terminando Gestão de tecnologia da informação.
    Tenho um projeto a desenvolver voltado para segurança pública por inciativa própria, onde será implementado com várias tecnologia. conhecimento mais profundo sobre IOT tem haver com meu projeto, especificamente o esp32 wifi lora e os demais da linha voltados para área de comunicação; onde penso aplicar estas tecnologias.
    Obrigado pela colaboração adquirida.
    desejo sucesso.

    1. Olá Souza!

      É sempre bom saber que nosso trabalho ajuda as pessoas!
      Abraços!

      André – Equipe MakerHero

  22. Muito bom esse post para começar a brincar com LoRa, na cidade onde moro temos uma infraestrutura pública para testes e estou ansioso para testar!
    Só ficou um pouco confuso quais os pinos que precisam da conversão bidirecional, pois o módulo LoRa tem 12 pinos e na lista de materiais pede 4 conversores de nível lógico, que só têm 2 canais bidirecionais, totalizando 8 pinos… Tens um esquemático mais detalhado? Ou devo procurar algo na documentação do SPI? Só preciso usar os pinos referenciados naquela tabela?
    Obrigado!

    1. Oi Cristian, voce podera utilizar os conversores para os sinais descritos tabela, como cada conversor tem apenas 04 entradas, voce precisara de dois.

      Os pinos utilizados sao o do protocolo SPI (MISO, MOSI, SCLK e um CS) alem dos outros digitais do modulo

  23. Boa tarde Eron!
    Parabéns pelo post! Muito interessante.
    O que eu mais gostaria de saber é quais distancias os modelos aqui apresentados conseguem atingir?
    Preciso transmitir RS232.
    Poderia me dar uma dica do que usar para distância entre 2 a 4 Km.
    Muito obrigado!
    Abraço!

    1. Esse tipo de pergunta vai depender de muitos fatores como:

      – casamento de impedancia do modulo;
      – tipo de antena.

      Em geral, algumas antenas externas omni de 3dBi ja apresentam bons resultados. Como o modulo apresentado apresenta a possibilidade de soldar o conector da antena em uma PCB, ou diretamente no modulo, existem grandes chances de acontecer perdas, ocasioanando em um alcance nao tao grande.

  24. Olá boa tarde,ótimo texto,gostaria de fazer uma comunicação p2p com lora e seria tipo assim
    2 chave de toque de um lado , e do outro lado,1 led pra cada chave,você pode me ajudar? Sou leigo

  25. Ola Eron,

    Estou querendo fazer um payload com uma combinacao de data de 4 sensores

    1 – Acelerometro: que funciona basicamente como um contator de free fall
    2- Sensor de distancia: que vai retornar um bool ou char, caso um certo range de distancia seja atigindo
    3- Sensor de carga/ou um FRS: que vai detectar a presenca de um objeto ou nao no sistema.

    A logica eh a seguinte:

    Case 1: objeto seja detectado AND a queda desse objeto for detectada = dispatch a lora message
    Case 2: objeto seja detectado AND a queda desse objeto for detectada OR distacia de seguranca for atingida = dispatch a lora message

    Gostaria de saber como poderia configurar essas mensagens usando esses sensores?

    Voce poderia me ajudar?

    1. Oi Paola, voce pode definir um vetor (do tipo float, por exemplo) com as variaveis que voce deseja enviar e depois fazer a conversao para string para ser mandando como mensagem na String.

      https://playground.arduino.cc/Main/FloatToString

  26. Melhor texto sobre Lora que encontrei ate agora. Tem como mandar ou postar um desenho do equema de pinagens que fez entre o lora e o arduino?

    Não entendi quais pinos passam pelo conversor bidirecional.

    Obrigado.

    1. Oi Thiago, vou melhorar essa comunicacao em breve com uma imagem do Fritizing. Em resumo os pinos que voce deve utilizar sao os do barramento SPI (MOSI, MISO e SCLK) mais o RESET (NSS)

  27. Oi Edmundo , tudo certo?

    Voce pode realizar este tipo de comunicacao a partir de um gateway. Que poderia ser configurado com um Raspberry Pi, ou qualquer placa com linux embarcado. Outra alternativa tambem, seria o uso de um ESP32 ou ESP8266.

    Em breve irei abordar sobre a montagem de um gateway LoRa a partir do Raspberry Pi.

  28. Bom dia .
    É possivel uma comunicação entre esses módulo tipo um com varios (como se fosse um servidor e cinco clientes) ?
    Se sim quantos módulos eu precisaria ?

    Se não qual o tipo de comunicação que você recomendaria ?

    Obrigado pela ajuda

    1. Oi Edmundo , tudo certo?

      Voce pode realizar este tipo de comunicacao a partir de um gateway. Que poderia ser configurado com um Raspberry Pi, ou qualquer placa com linux embarcado. Outra alternativa tambem, seria o uso de um ESP32 ou ESP8266.

      Em breve irei abordar sobre a montagem de um gateway LoRa a partir do Raspberry Pi.