Skip to content
Craig Hesling edited this page Sep 26, 2017 · 20 revisions

This tutorial will show you how to add a LoRa Gateway using a RHF0M301 LoRa Gateway Concentrator Module and a RaspberryPi3 to OpenChirp.

Create an OpenChirp Device and Generate the Device Token

Please follow the Devices Tutorial to create an OpenChirp Device and Generate a Device Token. You will need the device id, endpoint, and the device token later for configuring the lora-gateway-bridge.

Install the Raspbian operating system

Use the raspberrypi.org website to download the latest Raspbian Stretch Lite operating system and flash it to the SD card. After booting into the operating system used the raspi-config command to enable the SPI interface. Reboot the OS.

Adjusting the Clock

# Setting the Time Zone, Date, and Time
ln -fs /usr/share/zoneinfo/America/New_York /etc/localtime

# Install the NTP package
sudo apt install ntp

# Add local ntp servers to /etc/ntp.conf and restart the service
# (Use a list of ntp server close the LoRa Gateway)
server 0.debian.pool.ntp.org iburst
server 1.debian.pool.ntp.org iburst
server 2.debian.pool.ntp.org iburst
server 3.debian.pool.ntp.org iburst
server new-parsley.srv.cs.cmu.edu  iburst
server new-sage.srv.cs.cmu.edu     iburst
server new-rosemary.srv.cs.cmu.edu iburst
server coriander.srv.cs.cmu.edu    iburst
server fennel.srv.cs.cmu.edu       iburst
server paprika.srv.cs.cmu.edu      iburst

# Restart the service
sudo systemctl restart ntp

# Check if the servers are used and if the time has been adjusted 
ntpq -pn
date

# Update the hardware clock (if present)
hwclock -u -w

Install the LoRa Packet Forwarder

Download the latest release of the precompiled Packet Forwarder installer (.deb) from the Openchirp repo. Install the package (sudo dpkg -i lora-gateway-pf_*_armhf.deb) and start the service (sudo systemctl start lora-gateway-pf). Confirm that the service is running (systemctl status lora-gateway-pf)

Install the LoRa Gateway Bridge

Download the latest release of the precompiled LoRa Gateway Bridge (lora-gateway-bridge_x.x.x-x_armhf.deb) from the OpenChirp lora-gateway-bridge releases page. Install the package (sudo dpkg -i lora-gateway-bridge_x.x.x-x_armhf.deb)

Configure the gateway bridge service by modifying /etc/default/lora-gateway-bridge. Please set the following parameters as indicated:

  • MQTT_SERVER="tls://openchirp.andrew.cmu.edu:1883"
  • MQTT_PREFIX="<your_openchirp_device_endpoint>"
  • MQTT_USERNAME="<your_openchirp_device_id>"
  • MQTT_PASSWORD="<your_openchirp_device_generated_token>"

<your_openchirp_device_endpoint>, <your_openchirp_device_id>, and <your_openchirp_device_generated_token> should be replaced based on your OpenChirp device you created earlier.

Start the service and confirm that it is running properly (sudo systemctl start lora-gateway-bridge; sudo systemctl status lora-gateway-bridge)

Other Configurations

After starting the service a new gateway_ID is generated based on the Ethernet MAC address. It is stored in the local configuration file (/etc/lora-gateway-pf/local_conf.json). Remember it for future use.

Clone this wiki locally