Encrypted Long-Range Radio Communication , Powered by Raspberry Pi and the LoRa protocol, this project enables secure, offline communication between two nodes using various encryption algorithms, security techniques, and the LoRa radio protocol. Access the secure web interface via local-nework when connected to the Raspberry Pi's personal hotspot. This setup ensures data privacy and integrity over long distances, making it ideal for scenarios requiring private communication without traditional internet infrastructure.
To implement this project, each node should have the following hardware. While you can adapt this concept to suit other devices, here's the most cost-effective and widely supported setup:
- Raspberry Pi: Raspberry Pi Zero WH (With headers) / Raspberry Pi Zero 2 W (With headers) / Raspberry Pi 3B
- LoRa HAT: SX1268 LoRa HAT for Raspberry Pi (433MHz) (docs)
Note: For a basic point-to-point communication system, you'll need two of each items above (I'm using a Raspberry Pi Zero WH).
You will need two nodes as described above. Once both nodes are set up, you can either use a pre-created image or follow the setup guide.
If you prefer to complete the setup manually or encounter issues with the installer, please refer to the manual setup guide. For the installer, you must first enable the serial ports. To do so, run the command sudo raspi-config
, then navigate to: Interfacing Options → Serial → No → Yes.
Once you have enabled the serial port hardware and disabled the login shell over serial, your LoRa component will be ready for communication after properly configuring the SX1268 LoRa HAT jumpers. First, remove all yellow jumpers from the UART selection jumpers (10) and LoRa mode selection jumpers (11). Next, add jumpers to B on the UART selection jumpers (10). You do not need to reconnect any of the LoRa mode selection jumpers (11), as the board will be powered via the Raspberry Pi's GPIO pins. The attached image provides a clear visual guide for the jumper configurations.
Next, you need to install the software. Below is an automatic installer that is ideally suited for use on a fresh OS image. If you prefer manual installation steps, they are available here.
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/NotReeceHarris/rpi-lora-comms/HEAD/system/raspberry-pi-installer.sh)"
- Raspberry PI: Setting up your own node.
- LoRa Protocol: What is the LoRa protocol.
- Security Conciderations: How secure is this, what are the potential vulnerabilities?
Write up: If your intreseted in my journey creating this project please read my blog post. (Beware alot of content)