In a previous blog, we set up and registered a RAK7243 LPWAN Developer Gateway with The Things Network (TTN) and verified that the gateway properly forwarded LoRa packets from a node to an application owned by Cardinal Peak.
In this blog, we describe how to set up and work with a LoRa GPS-tracker node device. These LoRa devices, among other functions, typically keep track of their location via GPS and send their data through gateways onto the LoRaWAN network. LoRa GPS trackers are used for several applications, such as asset and commercial vehicle tracking and for accident detection (e.g., falls, crashes).
We wanted an open-source and customizable device, so we picked the Dragino GPS Tracker LGT92 kit, available through RobotShop.
The LGTG92 is available in two variants:
We ordered the LI variant.
This section documents the steps we followed to set up the LGT-92, starting from the contents in the box to configure the device to work with an application hosted at The Things Network.
Documentation is available at Dragino’s LGT-92 download page, where we can also find various LGT-92 firmware images.
Source code can be found on GitHub.
The LGT-92 was preloaded with firmware and configured with over-the-air (OTAA) keys, as well as device and application EUIs, making it ready to activate and join a LoRaWAN network.
A good configuration tutorial video is available here.
The keys and EUIs were posted on a sticker in the LGT-92’s box:
Again, only the device ID, device EUI and app key were required to register the device. The device address and the session keys were generated during the secure activation process.
Power the LoRa device on using the on/off switch, and if the EUIs and keys were entered correctly, the device will activate, join the network through our local Cardinal Peak gateway and begin transmitting data. This can be verified by looking at the device’s data page:
With out-of-the-box firmware, the LGT-92 transmits as follows:
The screenshot above was taken after pressing the alarm, so we see the data come in every minute.
At this point, the payload data appears as hex characters in the device’s data page. TTN offers a way to add a JavaScript function to have the application decode the data into a friendly format. To do this, go to the “Payload Formats” tab in the applications page, select the decoder option and add the code snippet.
For our device, we found decoders in the LGT-92 downloads page, where we picked the latest decoder version, hoping that it would correspond to the version of the firmware in our device:
Looking at the device’s data stream, we can see both the raw and decoded data. For example, in the screenshot that follows, the last two payloads show the correct device GPS coordinates, battery voltages and alarm status.
In this blog, we described Dragino’s LGT-92 device and showed how to connect it to an application running on The Things Network.
If you have any questions about setting up and working with a LoRa GPS-tracker node device or if your next project requires our LoRa device expertise, contact us today!