Introduction: LoRa Messenger for Two Devices for Distances Up to 8km
Connect the project to your laptop or phone and then chat between the devices without internet or SMS using just LoRa.
Hey, what's up guys? Akarsh here from CETech.
Today we are going to make a project which can be connected to your smartphone or any computer and it makes that device LoRa-enabled messenger. Now when that will be done you would be able to message any other device using the same LoRa messenger. This all is done without presence of 4G/LTE/3G/GSM/WiFi/SMS.
Step 1: Parts
To make this you will need an ESP8266 board, I suggest to use a NodeMCU style board, I used Firebeetle board from DFRobot as it has onboard battery charging and monitoring solution.
For the LoRa purpose, I used an RYLR896 . I highly suggest this module as it is very easy to use over UART using AT commands.
Step 2: Get PCBs for Your Project Manufactured
You must check out JLCPCB for ordering PCBs online for cheap!
You get 10 good quality PCBs manufactured and shipped to your doorstep for 2$ and some shipping. You will also get a discount on shipping on your first order. To design your own PCB head over to easyEDA , once that is done upload your Gerber files onto JLCPCB to get them manufactured with good quality and quick turnaround time.
Step 3: Understanding the Reyax Module and How to Use It. (OPTIONAL : You May Skip Reading This Step If Not Interested About the Working)
1. The LoRa module we have is a UART module which is configured using AT commands.
2. The module houses a STM32 MCU which does all the talking to the SPI LoRa module onboard the RYLR896.
3. The commands in the picture are basic ones you may refer to this document for more: REYAX-Lora-AT-COMMAND-GUIDE
4. I still strongly recommend you to go through my YouTube video where I explain this properly.
Step 4: Connections of the Modules
Step 5: 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 http://arduino.esp8266.com/versions/2.5.0/package_esp8266com_index.json the Additional Boards Manager URLs.
4. Go to Tools > Board > Boards Manager
5. Search for ESP8266 and then install the board.
6. Restart the IDE.
Step 6: Coding the Project
1. Download the repository: https://github.com/akarsh98/LRM
2. Extract the downloaded folder and open Stage1.ino file in Arduino IDE.
3. Navigate to Tools > Board. Select the appropriate board that you are using NodeMCU(12E) works in most of the cases.
4. Select the correct comm. port by going to Tools > Port.
5. Hit the upload button.
6. When the tab says Done Uploading you are ready to use the device.
After uploading open the serial monitor to view the following details
Step 7: Playing With the Device
1. Connect the devices using USB cables to two different devices on which you need to do the messaging. In my case, I connected one module to my laptop and the other one to my phone using OTG cable.
2. Move over to the serial monitor and start texting instantly!
3. CONGO! the device is working as expected.
7 Comments
1 year ago on Step 5
The ESP8266 Arduino Board Library has been updated to this URL
https://arduino.esp8266.com/stable/package_esp8266com_index.json
Question 3 years ago on Introduction
Hello,
i like this project and i want to build up a Lora Mesh Messenger, but i am new in this.
I have those devices:
2 Pieces ESP32 Development Board 2.4GHz Dual-Mode WiFi + Bluetooth Dual Cores ESP32s Antenna Module Board for Arduino IDE
2 Pieces lorawan transceiver RF LoRa module SX1276 chip nrf52832 radio comunicador de longo alcance communication Receiver and Transmitter
I don't want to use an ESP32 Board with OLED Display. I want to use the Ripple App to chat.
But i don't know how to wire it correctly and also i have not really an idea how to set up the right software.
Could you help me?
Many thanks and best regards
Answer 2 years ago
i like your idea, you dont need esp32, sx127x+nrf51/52 is sufficient enough, you also able to achieve really small form factor by this combination, simply use nordic softdevice BT stack with some code implementation(check sdk examples, and some of register setting for sx127x), then find/ or write a android app to communication through nrf52 BT connection. nrf52 basically act as a lora BT gateway. this combination also good on power saving.
4 years ago
Interesting. I think the most amazing part of this may be that you connected the device to the phone via USB cable, right? What is that Android Terminal software (Android app) you are using on the phone? Can you please supply a link to the Android App (in the Google Play store) or to the code of that app if you wrote the Android Terminal app? Thanks
Reply 4 years ago
The OTG (On The Go) cable he's mentioned is popular & widely available for a few $ -they're normally used for reading USB memory sticks. Android terminal software abounds - check perhaps the likes of "USB Serial Console" from the Play Store.
Reply 4 years ago
Hello manuka
I have added the link in the reply. And yes you are right about the OTG cable.
Probably I should add a product link for the same in the instructable.
Thanks
Reply 4 years ago
Sorry for the late reply.
The link: https://play.google.com/store/apps/details?id=de.kai_morich.serial_usb_terminal&hl=en_IN
Thanks