Get Started with Altium Upverter, Sign Up Now.
When it comes to IoT devices, most designers and engineers focus on Bluetooth, cellular, WiFi, or Zigbee for wireless communication. However, LoRa (long range) is a great option for creating a low power wireless device for use in IoT networks. Currently maintained by the LoRa alliance, the specifications are easier to work with compared to other RF devices while providing up to 6 miles of communication range on a mesh or multilevel star network.
A LoRa IoT sensor node on a LoRaWAN network
This sub-GHz protocol is actually quite simple to implement in a PCB compared to other protocols that operate at higher frequencies. The required components are readily available and there are plenty of open source projects you can use to get started. Many organizations and individual programmers have developed open-source code to support your LoRa IoT sensor node and the LoRaWAN backhaul architecture, which will help get your new device online quickly.
Why Use a LoRa IoT Sensor Node?
Many companies already use LoRaWAN to offer long range connectivity for IoT devices. The Things Network is an active member of the LoRa Alliance and aims to support developers in building IoT products for use in LoRaWAN solutions. In addition to The Things Network and big companies like Microsoft and Google, individual developers have made their designs and their code publicly available to support LoRa developers. LoRa operates on unlicensed bands (433 MHz, 868 MHz in Europe, and 915 MHz in the US), so you can build, run, and/or join a LoRa network without a special license.
LoRa is great for low power, long range communication, but your device will not be able to connect to the internet directly. LoRa IoT sensor nodes can be built with small footprint and connectivity to other analog or digital sensors, as long as your LoRa IoT sensor node contains the right components. You don’t need full-scale SBC-grade processing power to create a LoRa IoT sensor node, so you can create some innovative solutions at low cost.
Prototype Arduino Nano LoRa IoT sensor node for a LoRa network
LoRa Network Gateways
Although LoRa devices were intended to be used for star or multilevel star (i.e., star-of-stars) networks, you can easily construct a mesh LoRa network for IoT devices with Google’s OpenThread software. If you want a device on a LoRaWAN network to connect to the internet on the traditional star network, then you will need to build a LoRa gateway device to support your LoRa IoT sensor node. The gateway connects to the internet wirelessly or over copper and facilitates communication with other remote LoRa devices via the LoRaWAN protocol.
Note that, if you are building a single LoRa IoT sensor node or similar device to connect to an existing network, then you won’t need to build your own gateway. As an example, you could use a gateway on The Things Network, which is a popular network for LoRa devices. You can also select a different LoRa network operator from the list of LoRa Network Alliance members and build your own node, or even your own LoRa network gateway.
Component Selection for a LoRa Network
The exact components you need will depend on whether you are building a gateway or a node:
- Building a LoRa Network Gateway
If you’re looking to build a gateway, then your best bet is to use an inexpensive single board computer (Raspberry Pi is one popular choice). Note that you’ll need to use some extra components to ensure your gateway can connect to the LoRa network, such as a USB/Ethernet converter (for a Raspberry Pi board). You’ll also need to include an antenna that operates in your intended frequency band. A rubber ducky antenna is usually a good choice for a LoRa network gateway.
LoRa network gateway on a Raspberry Pi board
If you’re a serious designer and you want to create a smaller form factor gateway, you can consider importing a Raspberry Pi, BeagleBone, or other module into your PCB design software and place the components you need to operate the gateway directly on your board.
2. Building a LoRa IoT Sensor Node
Although you can certainly take an 8-bit microcontroller board (see the Arduino example above) and add an external antenna, you can make your form factor much more compact by placing an inverted F antenna on your board. The ATMega328p 8-bit MCU is a great choice for running your sensor node as it only costs a couple dollars. One great open source example LoRa IoT sensor node project is shown below.
Custom board for a LoRa IoT sensor node. Image credit: cernohorsky on GitHub
The exact MCU you should use and the communication options you need, the number of sensors you’ll interface with, costs, and desired form factor. Note that you’ll also need to place a sub-GHz RF transceiver unit on your board. As Semtech maintains the physical layer protocol for LoRa devices, they offer a wide range of LoRa products you can use to create a custom node. The RF transceiver unit shown above is from Hope Microelectronics.
The online PCB design environment from Upverter® provides a complete PCB design solution for any application. You’ll have the PCB layout tools and extensive component library you need to take your design from start to finish and prepare for manufacturing. Upverter continuously updates the platform with new features and capabilities that are demanded by the community, and you can make your LoRa IoT sensor node accessible from anywhere with Upverter’s GitHub-style sharing features.