Easily get started with LoRa Radios without much wiring. This is possible by using stackable modules from DFRobot.
Story
Hey, what's up guys? Akarsh here from CETech.
Today we are going to make a project which is basically about setting up LoRa radios to talk with each other in the easiest way possible.
Here the microcontroller that I have used is the ESP32, which is connected to LoRa boards of 915MHz, I have also attached an OLED display to one of the Radio so that the packet information is visible. All the modules used in this project are from DFRobot as the pin compatibility is there for these modules, So I do not recommend using modules of different manufacturers. So let's get started!
I have also made a video about building this project in detail, I recommend watching that for better insight and detail.
Step 1: Parts
To make this you will need an ESP32 board or an ESP8266 and you can also add a battery if you want.
I used firebeetle LoRa board of 915MHz frequency. DFRobot offers 3 types of boards depending on the frequency that is legal in your area:
1) 433MHz
2) 868MHz
3) 915MHz
For the display I used an OLED shield.
I suggest to use a boards from DFRobot with this module as the pinout will be compatible and you will face no issues anywhere.
I would also recommend using a PCB to make some project using this module so that adding battery/OLED display/switch/esp8266 doesnt remain difficult. You can order your PCBs from PCBWAY as they offer 10 PCBs for just 5$. Check out their online Gerber viewer function.
Step 2: Download and set up the Arduino IDE
Download the Arduino IDE from here.
1. Install the Arduino IDE and open it.
2. Go to File > Preferences
3. Add https://dl.espressif.com/dl/package_esp32_index.json to the Additional Boards Manager URLs.
4. Go to Tools > Board > Boards Manager
5. Search for ESP32 and then install the board.
6. Restart the IDE.
Step 3: Connections and soldering
1. Solder the modules with the stackable headers.
2. You will need to connect both the LoRa modules to the ESP32 modules according to the wiring diagram.
3. Gather all the 5-6 modules that you will be using and stack them according to your need of the Radio. For these steps I highly recommend watching my video as this part is explained in detail there.
Step 4: Coding the module
1. Download the github repository: https://github.com/akarsh98/DFRobot-LoRa-Firebeetle-Code
2. Extract the downloaded repository.
3. Copy the libraries from the downloaded repository to the Library folder in arduino sketch folder.
4. Open the Transmitter sketch in the Arduino IDE.
5. Navigate to Tools > Board. Select the appropriate board that you are using, Firebeetle ESP32 in my case.
6. Select the correct comm. port by going to Tools > Port.
7. Hit the upload button.
8. When the tab says Done Uploading you should repeat the above steps with the receiver module to upload the code.
Step 6: Playing with the LoRa Radios
As soon as power is given to both the modules the OLED on the transmitter starts showing the packet number that is being sent, on the other hand the Serial monitor connected to the Receiver shows the received packet with the signal power
Schematics
Circuit Diagram
The article was first published in Hackster, March 17, 2019
cr: https://www.hackster.io/akarsh98/lora-esp32-radios-easy-getting-started-tutorial-78c759
author: Akarsh Agarwal