I created a basic LoRa network using the following components:
- Arduino as a microcontroller
- LoRa Dragino Shield
- Raspberry Pi
- Raspberry Pi LoRa GPS HAT 868MHz
- Node-RED as the backend server
- iOS application as the control interface
The Arduino devices communicate with each other using LoRa technology. Data is stored in an SQLite database on the Raspberry Pi. Communication between the iOS application and the Raspberry Pi is handled via API requests through Node-RED.
- Arduino code: https://github.com/dragino/Lora
- Raspberry Pi HAT code: https://github.com/dragino/rpi-lora-tranceiver/archive/master.zip
After downloading the Pi HAT code:
- Change directory to
rpi-lora-tranceiver/dragino-lora-app-w1 - Run the following commands:
If no text is entered, the Raspberry Pi will operate in receiving mode.
Important: Ensure that the Raspberry Pi and all Arduino devices are configured with the same frequency and spreading factor (SF).


