The Things Network is a global, community driven LoRaWAN network, that is free to use and has a great web interface. It is ideal for trialling the SensorData LoRaWAN, using either your own gateways, or community gateways in your area. Every gateway connected to TTN routes traffic from both your own devices and public devices, so the network coverage can be expected to expand rapidly as IoT projects begin rolling out. Both the SensorData and TTN support all 800 and 900 MHz regions. However the Indian 865 MHz region is still experimental on TTN, and is not covered here.
1. Sign up for a TTN account
Browse to The Things Network front page, and click 'Sign Up' button in the top right. Follow the prompts, and complete the email verification step.
2. Open the TTN console
The console is where you configure you gateway, create an application, register your devices, and set up forwarding to the demo application. It is usually accessed at https://console.thethingsnetwork.org. However Australian customers should use https://console.thethings.meshed.com.au.
3. Add your gateway
This step can be skipped if you are using community gateways in your area. Browse to the Gateways screen in the console, and click 'register gateway'. Most gateways will be using the Semtech packet forwarder protocol, which forwards packets on UDP port 1700. So unless you have installed TTN specific software on your gateway, you should select 'I'm using the legacy packet forwarder', and type your gateway's 16 digit EUI / MAC address into the top field:
Pick the appropriate frequency plan, and a nearby router. For example, Europe and ttn-router-eu, United States and ttn-router-us-west, or Australia and meshed-router. After registering your gateway, you must configure the packet forwarder on your gateway to send to the router that you chose. Please see your gateway documentation for the correct procedure.
The server addresses visible in the Router drop-down are for TTN specific gateway software. If you are using the normal Semtech packet forwarder on port 1700, you should point your gateway to one of the following addresses instead:
- router.au.thethings.network (Australia, 915 MHz)
- router.as1.thethings.network (Southeast Asia, 920-923 MHz - 'AS923' low)
- router.as2.thethings.network (Southeast Asia, 923-925 MHz - 'AS923' high)
- router.eu.thethings.network (Europe, 868 MHz)
- router.us.thethings.network (America, 902-928 MHz)
- router.kr.thethings.network (Korea, 920-923 MHz)
If you need more help with gateway setup, please see the TTN documentation here. Some gateways require special tweaks to their configuration files. If you are having difficulty with the setup, try searching the forums here for a solution.
Once your gateway is set up and turned on, you should be able to see any LoRaWAN traffic it sends or receives in the Data page for your gateway. It will however remain encrypted on this page.
4. Add an application
Applications are groups of devices that speak the same protocol, and whose data must be forwarded to the same destination. An application is identified by its AppEUI, which must be known to each of the participating devices. The SensorData LoRaWAN has a configurable AppEUI, but the default value is 70B3D57050000002. Here we will create a single application that will contain all of your SensorData's, and forward their data to the DM demo application. If you like, you can create several separate applications to further group your devices. On TTN, they are allowed to share the same AppEUI.
Click Applications in the top right of the console, then click add application. Fill in a name and description, and choose a handler that is physically close to the router your gateway is using. In this example, we use the meshed-handler, which is appropriate for Australia:
When you create the application, TTN will generate a new AppEUI for it. To avoid programming this AppEUI into each SensorData individually, you can reconfigure your application to use the default AppEUI. Select your application, and navigate to the Settings tab. Add the default AppEUI (70B3D57050000002), then remove the old one:
5. Add an HTTP Integration to the Digital Matter Demo Application
Select your application, the click Integrations, and add integration. Select HTTP Integration:
If HTTP Integration is not on the list, you may be using the wrong console URL. Australian customers using the Meshed handler for their application should use https://console.thethings.meshed.com.au instead of https://console.thethingsnetwork.org. On the HTTP Integration setup page, fill in the Demo Application details shown below (URL: https://oem-connector-functions.azurewebsites.net/api/TTNIngest).
Once the integration is set up, your application will forward all of its decrypted data to the DM demo application. Devices will automatically get added when they transmit data.
6. Add devices to your application
Select your application, then click Devices, and register device. Choose a name, and enter the DevEUI and AppKey printed on the SensorData's box. Unlike the DevEUI, the AppKey is not printed on the SensorData itself, as it must remain secret. You can however read or change the AppKey and AppEUI using a configuration cable. The default AppEUI is 70B3D57050000002. If the values are not available, the DevEUI/AppEUI/AppKey can be read using the configuration tool.
Once a device is added to your application, it should be able to join the TTN network when turned on, and its data should be visible in the application's Data page. The SensorData should join after a few seconds when first powered up, and should also send a short payload shortly afterwards.
If you see data in the gateway's Data page, but don't see any in the application's Data page, it means the data is being received by TTN, but can't be recognized or decrypted. Please recheck your AppEUIs, AppKeys, and DevEUIs.
If you see Join requests on the application's Data page, but the device never manages to finish the Join procedure and start sending real data, you may have a gateway or network problem. Possible causes include:
- Excessive ping time between the TTN servers and your gateway. You need a good ping, or the replies from the network arrive too late to transmit. Anything above 250 ms may cause problems.
- A mis-configured or faulty gateway. If your gateway is unable to transmit, it won't be able to service Join requests. One possible culprit is the transmit power lookup table that is commonly configurable. If the network asks for a transmit power that is not in the configured table, the gateway will often refuse to transmit. See you gateway manufacturer for help debugging this and similar issues, or try searching the TTN forums here.
- If your region is America or Australia, be sure the SensorData's channel mask is configured to the correct value (using a configuration cable). TTN's channel mask is 02000000000000FF00. If the device is using a different channel mask, the network may still occasionally receive a packet, but most communication will fail.
If you don't see anything in the Data page for your gateway, please recheck your gateway configuration, and make sure that your SensorData has been set up with the correct region and channel mask, as mentioned above. Also try refreshing the browser page, as the Data page may become unresponsive if left open for too long. Please note that the Data page only shows transmissions that arrive after the page is opened. It will never show historical data.
7. View device data on the demo application
Open the Demo Application website http://sensordemo.digitalmatter.com/. From here, enter the DevEUI in the device serial section. Watch out - it's case sensitive. Select the desired parameter, and data range, then click 'Submit'. Any data that has been received will show up on the graph, and a list of all the data (with time stamps) below.