Ferramentas utilizadas:
- Arduino IDE
- Arduino C
- C++
- Heltec Wifi Lora 32 V2
- EspLoRa
- Wi-Fi
- AdafruitSSD3306
- AdafruitGFX
- SPI
Na pasta LoRa_send, módulo de envio, se encontram 3 arquivos: "LoRa_send.ino", "RandomDelay.hpp" e "RandomDelay.cpp".
- RandomDelay.hpp
- Este arquivo contém a declaração do namespace RandomDelay que contém a função randomDelay, que retorna um número aleatório dados os limites inferior e superior.
- RandomDelay.cpp
- Este arquivo contémm a definição da função randomDelay, apesar de muito simples, serve como exemplo de como implementar código C++ puro a qualquer projeto Arduino.
- LoRa_send.ino
- Esse é o arquivo mais importante da pasta, claro. O sketch traz consigo, por exemplo, inicialização do Wi-Fi, inicialização do display OLED e do LoRa, no display é possível ver algumas informações: o pacote que está sendo enviado, o contador de envios, o tempo corrido desde a inicialização e o tempo até o próximo pacote
No módulo receptor (pasta LoRa_recv) há apenas o arquivo LoRa_recv.ino
- LoRa_recv.ino
- O código trata das inicializações, como no emissor, e aguarda a emissão de pacotes, caso receba, este é mostrado no display OLED, bem como o RSSI, que é a força do sinal, e a "latência", que é a diferença de tempo entre o último pacote e o atual. Caso o receptor esteja aguardando por um período de tempo estabelecido no programa, ele mostra uma tela de aguardo, que mostra o último pacote recebido e um texto que mostra que o receptor está esperando por mais pacotes.