# TTNmon: Node monitoring

**URL:** <https://www.thethingsnetwork.org/forum/t/ttnmon-node-monitoring/11829>\
**Category:** End Devices (Nodes)\
**Created:** [January 17, 2018, 6:18pm UTC](https://www.thethingsnetwork.org/forum/t/ttnmon-node-monitoring/11829 "2018-01-17T18:18:10Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![SmartNOOB](https://www.thethingsnetwork.org/forum/user_avatar/www.thethingsnetwork.org/smartnoob/32/25844_2.png) [@SmartNOOB](https://www.thethingsnetwork.org/forum/u/SmartNOOB)\
**Post date:** [January 17, 2018, 6:18pm UTC](https://www.thethingsnetwork.org/forum/t/ttnmon-node-monitoring/11829/1 "2018-01-17T18:18:10Z")

</div>

Hello,  
I’m building a platform (TTNmon) for storing and visualizing the link quality between a node and a TTN gateway. The goal is to collect information about the fluctuation of parameters like SNR or RSSI. This way I want to find out more about environmental influences on LoRa communication.  
The data is collected using the TTN HTTP Integration. It is stored in a database and available through an API and thereby by a web frontend. Furthermore I’m working on publishing database dumps to offer all data for own research purposes.  
As a member of the TTN Community in Aachen I have currently only a few devices connected to my platform. These devices are mostly near to gateways so the significance of the collected data is low. However I want to give you an [example](https://ttnmon.meis.space/console/#device-2) of the data visualization. By clicking on the gateway you will get more information about the connection between the device and the specific gateway.  
If you want to support my project please consider to register your node on my platform. You find the full instructions on [https://ttnmon.meis.space/console/#](https://ttnmon.meis.space/console/#). There are also details about which data is stored and what is public.  
Please note that the platform is currently under development. I expect that there will be problems (under some circumstances). If you experience problems it would be great if you could inform me.

The project is open source and available on GitHub ([Frontend](https://github.com/RobinMeis/TTNmon-Frontend), [Backend](https://github.com/RobinMeis/TTNmon-Backend)). If you have any question please feel free to open an issue on GitHub or reply to this thread.

Thanks for your support  
Robin

---

<div class="post-metadata">

**Author:** ![pe1mew](https://www.thethingsnetwork.org/forum/user_avatar/www.thethingsnetwork.org/pe1mew/32/48520_2.png) [@pe1mew](https://www.thethingsnetwork.org/forum/u/pe1mew)\
**Post date:** [January 17, 2018, 7:00pm UTC](https://www.thethingsnetwork.org/forum/t/ttnmon-node-monitoring/11829/2 "2018-01-17T19:00:20Z")

</div>

Hi,

Sounds interesting! I have here a node for similar purposes that I have added to your system.

This node has specific behaviour for propagation observation. It is fixed to SF7 without ADR and Linkcheck at an interval of 5 minutes. Every 60 minutes it sends a transmission at SF12.

See what it brings.

---

<div class="post-metadata">

**Author:** ![pe1mew](https://www.thethingsnetwork.org/forum/user_avatar/www.thethingsnetwork.org/pe1mew/32/48520_2.png) [@pe1mew](https://www.thethingsnetwork.org/forum/u/pe1mew)\
**Post date:** [January 18, 2018, 9:25am UTC](https://www.thethingsnetwork.org/forum/t/ttnmon-node-monitoring/11829/3 "2018-01-18T09:25:10Z")

</div>

Ok, I have added some more nodes to the system and I observed some curious behaviour.  
Two nodes using Microchip RN2483 ware stuck on SF12. After a reset of the nodes ADR started working again.  
One node using LMIC is stuck on SF12 too. I will have to reset that one to see how behaviour will be than.  
You can very nicely see that the RN2483 is using pseudo random channel selection while LMIC is sequentially stepping trough all channels.

Preliminary conclusion: Your tool is a welcome asset in learning about LoRaWAN, understanding behaviour of various stacks and implementations and a good aid with optimizing behaviour.

One suggestion: Is it possible to add a graph of the number of gateways over time that receive the node?

---

<div class="post-metadata">

**Author:** ![SmartNOOB](https://www.thethingsnetwork.org/forum/user_avatar/www.thethingsnetwork.org/smartnoob/32/25844_2.png) [@SmartNOOB](https://www.thethingsnetwork.org/forum/u/SmartNOOB)\
**Post date:** [January 18, 2018, 7:42pm UTC](https://www.thethingsnetwork.org/forum/t/ttnmon-node-monitoring/11829/4 "2018-01-18T19:42:25Z")

</div>

Thanks for adding some nodes. Having a graph for the number of gateways sounds great. I just implemented the graph and added it below the other graphs.

---

<div class="post-metadata">

**Author:** ![Verkehrsrot](https://www.thethingsnetwork.org/forum/user_avatar/www.thethingsnetwork.org/verkehrsrot/32/46588_2.png) [@Verkehrsrot](https://www.thethingsnetwork.org/forum/u/Verkehrsrot)\
**Post date:** [January 18, 2018, 8:02pm UTC](https://www.thethingsnetwork.org/forum/t/ttnmon-node-monitoring/11829/5 "2018-01-18T20:02:47Z")

</div>

The TTN mapping taxi from TTN community Berlin now feeds your database 24/7.

---

<div class="post-metadata">

**Author:** ![Verkehrsrot](https://www.thethingsnetwork.org/forum/user_avatar/www.thethingsnetwork.org/verkehrsrot/32/46588_2.png) [@Verkehrsrot](https://www.thethingsnetwork.org/forum/u/Verkehrsrot)\
**Post date:** [January 18, 2018, 8:08pm UTC](https://www.thethingsnetwork.org/forum/t/ttnmon-node-monitoring/11829/6 "2018-01-18T20:08:15Z")

</div>

Which rights are to be granted with the access key? (setting/devices/messages)

---

<div class="post-metadata">

**Author:** ![SmartNOOB](https://www.thethingsnetwork.org/forum/user_avatar/www.thethingsnetwork.org/smartnoob/32/25844_2.png) [@SmartNOOB](https://www.thethingsnetwork.org/forum/u/SmartNOOB)\
**Post date:** [January 18, 2018, 8:32pm UTC](https://www.thethingsnetwork.org/forum/t/ttnmon-node-monitoring/11829/7 "2018-01-18T20:32:09Z")

</div>

Thanks for the data.

There is only access to devices required. This is used to verify that the webhook was actually called by TTN. Otherwise anybody could register DevEUIs he doesn’t own. After the first message, your device is registered to the Auth Token. If you don’t want to add more devices, you could then also remove access to devices.

---

<div class="post-metadata">

**Author:** ![arjanvanb](https://www.thethingsnetwork.org/forum/user_avatar/www.thethingsnetwork.org/arjanvanb/32/46626_2.png) [@arjanvanb](https://www.thethingsnetwork.org/forum/u/arjanvanb)\
**Post date:** [January 18, 2018, 8:42pm UTC](https://www.thethingsnetwork.org/forum/t/ttnmon-node-monitoring/11829/8 "2018-01-18T20:42:53Z")

</div>

> [@SmartNOOB](#):
>
> Otherwise anybody could register DevEUIs he doesn’t own.

…but TTN would not pass any messages then, as an access key would only grant access to data of nodes one really owns? Or maybe that’s related to using the HTTP Integration rather than MQTT?

---

<div class="post-metadata">

**Author:** ![SmartNOOB](https://www.thethingsnetwork.org/forum/user_avatar/www.thethingsnetwork.org/smartnoob/32/25844_2.png) [@SmartNOOB](https://www.thethingsnetwork.org/forum/u/SmartNOOB)\
**Post date:** [January 18, 2018, 9:14pm UTC](https://www.thethingsnetwork.org/forum/t/ttnmon-node-monitoring/11829/9 "2018-01-18T21:14:51Z")

</div>

> [@arjanvanb](#):
>
> …but TTN would not pass any messages then, as an access key would only grant access to data of nodes one really owns? Or maybe that’s related to using the HTTP Integration rather than MQTT?

It is because of the HTTP Integration. As the webhook needs to be public, anybody could register devices without acutally owning them. Thus I thought it might be better to check the device.

As far as I understand MQTT I would need a MQTT connection for each Application I want to monitor? This could grow to many idling connections. So it isn’t really usable for this case.

---

<div class="post-metadata">

**Author:** ![arjanvanb](https://www.thethingsnetwork.org/forum/user_avatar/www.thethingsnetwork.org/arjanvanb/32/46626_2.png) [@arjanvanb](https://www.thethingsnetwork.org/forum/u/arjanvanb)\
**Post date:** [January 18, 2018, 9:20pm UTC](https://www.thethingsnetwork.org/forum/t/ttnmon-node-monitoring/11829/10 "2018-01-18T21:20:39Z")

</div>

> [@SmartNOOB](#):
>
> I would need a MQTT connection for each Application I want to monitor?

Good point, I guess. Now wondering how difficult it would be to create a dedicated integration 😉

---

<div class="post-metadata">

**Author:** ![SmartNOOB](https://www.thethingsnetwork.org/forum/user_avatar/www.thethingsnetwork.org/smartnoob/32/25844_2.png) [@SmartNOOB](https://www.thethingsnetwork.org/forum/u/SmartNOOB)\
**Post date:** [January 22, 2018, 5:50pm UTC](https://www.thethingsnetwork.org/forum/t/ttnmon-node-monitoring/11829/11 "2018-01-22T17:50:35Z")

</div>

> [@arjanvanb](#):
>
> Good point, I guess. Now wondering how difficult it would be to create a dedicated integration 😉

I think there is a lack of documentation

---

<div class="post-metadata">

**Author:** ![SmartNOOB](https://www.thethingsnetwork.org/forum/user_avatar/www.thethingsnetwork.org/smartnoob/32/25844_2.png) [@SmartNOOB](https://www.thethingsnetwork.org/forum/u/SmartNOOB)\
**Post date:** [January 23, 2018, 8:19pm UTC](https://www.thethingsnetwork.org/forum/t/ttnmon-node-monitoring/11829/12 "2018-01-23T20:19:04Z")

</div>

I just added a map showing the nodes and gateways. Furthermore it shows the link between the node and the gateways which received the packets. The lines color indicates the SNR. If there is no link between a node and a gateweay within 7 days the line is removed.  
Of course nodes can only be shown if coordinates are specified. So it would be great if all of you could consider to enter the nodes (approximate) coordinates in the TTN console.

![map](https://www.thethingsnetwork.org/forum/uploads/default/original/2X/f/f6f859adf4886898ac73061c583a889aa90ceccd.png)

---

<div class="post-metadata">

**Author:** ![Verkehrsrot](https://www.thethingsnetwork.org/forum/user_avatar/www.thethingsnetwork.org/verkehrsrot/32/46588_2.png) [@Verkehrsrot](https://www.thethingsnetwork.org/forum/u/Verkehrsrot)\
**Post date:** [January 23, 2018, 11:35pm UTC](https://www.thethingsnetwork.org/forum/t/ttnmon-node-monitoring/11829/13 "2018-01-23T23:35:00Z")

</div>

interesting nodes location 🕶

---

<div class="post-metadata">

**Author:** ![pe1mew](https://www.thethingsnetwork.org/forum/user_avatar/www.thethingsnetwork.org/pe1mew/32/48520_2.png) [@pe1mew](https://www.thethingsnetwork.org/forum/u/pe1mew)\
**Post date:** [April 9, 2018, 1:43pm UTC](https://www.thethingsnetwork.org/forum/t/ttnmon-node-monitoring/11829/14 "2018-04-09T13:43:09Z")

</div>

Today I captured a packet sent from a node in Apeldoorn at 65 meters high being received by a gateway in Utrecht over a distance of aproximately 60 km using TTNMon. The same packet was received in Delft over a distance of more than 112 km:  
Below a composite of the registrations:

Because of this I have a feature request: please add the distance to the gateway with the gateway location, and altitude.

Utrecht registration in TTNMon  
 ![afbeelding](https://www.thethingsnetwork.org/forum/uploads/default/original/2X/7/786484023b695081d50e17b8feb43e743cb04fd1.png)

Delft registration in TTNMon:  
 ![afbeelding](https://www.thethingsnetwork.org/forum/uploads/default/original/2X/8/8eb3a2ce8a360e537b9ab6e44fb00d0fc4cdb841.png)

Thanks.

---

<div class="post-metadata">

**Author:** ![SmartNOOB](https://www.thethingsnetwork.org/forum/user_avatar/www.thethingsnetwork.org/smartnoob/32/25844_2.png) [@SmartNOOB](https://www.thethingsnetwork.org/forum/u/SmartNOOB)\
**Post date:** [April 11, 2018, 9:00pm UTC](https://www.thethingsnetwork.org/forum/t/ttnmon-node-monitoring/11829/15 "2018-04-11T21:00:55Z")

</div>

I added the distance next to the coordinates. Unfortunately your node didn’t send it’s coordinates with this packet. This is why TTNmon will show the gateway distance only starting with 10.04.2018 for your node.

I also fixed the map. It broke with a server migration. Links will be shown of the past seven days. However it currently only shows the links of a few hours as I didn’t record the data before. Previously it was generated from the data tables every 10 minutes which caused high server load and took a quite long time. Link information are now instantly updated.  
Additionally gateways will now be removed from the map if they haven’t been heard within the last two weeks. This is the reason why some gateways disappeared in Amsterdam which were online during the TTN conference.

---

<div class="post-metadata">

**Author:** ![pe1mew](https://www.thethingsnetwork.org/forum/user_avatar/www.thethingsnetwork.org/pe1mew/32/48520_2.png) [@pe1mew](https://www.thethingsnetwork.org/forum/u/pe1mew)\
**Post date:** [April 12, 2018, 6:59am UTC](https://www.thethingsnetwork.org/forum/t/ttnmon-node-monitoring/11829/16 "2018-04-12T06:59:13Z")

</div>

Hi,

> [@SmartNOOB](#):
>
> I added the distance next to the coordinates. Unfortunately your node didn’t send it’s coordinates with this packet. This is why TTNmon will show the gateway distance only starting with 10.04.2018 for your node.

The node was in test until last friday. Then it was installed at the final location and in the weekend I added the location because I found that is was not set.

The rest of your information makes perfect sense. I will study the coming weeks behavior and will keep you posted.

Thanks.

---

<div class="post-metadata">

**Author:** ![SmartNOOB](https://www.thethingsnetwork.org/forum/user_avatar/www.thethingsnetwork.org/smartnoob/32/25844_2.png) [@SmartNOOB](https://www.thethingsnetwork.org/forum/u/SmartNOOB)\
**Post date:** [April 26, 2018, 6:06pm UTC](https://www.thethingsnetwork.org/forum/t/ttnmon-node-monitoring/11829/17 "2018-04-26T18:06:12Z")

</div>

I have some updates on TTNmon

Gateways SNR and RSSI values are now sperated by their channel. This way high noise on a single channel can be easily identified.

![image](https://www.thethingsnetwork.org/forum/uploads/default/original/2X/a/af3f9a8196582c12a2ef618f20b0687a15370f0a.png)

Checking the map I noticed a few nodes with very long and still pretty good links. It seems that the nodes where moved. Can the owner verify this? I think I will have to implement a check for moved nodes to hide old links.  
 ![image](https://www.thethingsnetwork.org/forum/uploads/default/original/2X/c/cf309e6caad91429ca1bfd12c55e245d5cd9169d.png)

---

<div class="post-metadata">

**Author:** ![Verkehrsrot](https://www.thethingsnetwork.org/forum/user_avatar/www.thethingsnetwork.org/verkehrsrot/32/46588_2.png) [@Verkehrsrot](https://www.thethingsnetwork.org/forum/u/Verkehrsrot)\
**Post date:** [April 26, 2018, 7:57pm UTC](https://www.thethingsnetwork.org/forum/t/ttnmon-node-monitoring/11829/18 "2018-04-26T19:57:58Z")

</div>

“Device 34” ist my node.  
And, indeed, it moved temporary from Berlin to Frankfurt.  
And is currently moving back, while writing these lines 😉

---

<div class="post-metadata">

**Author:** ![pe1mew](https://www.thethingsnetwork.org/forum/user_avatar/www.thethingsnetwork.org/pe1mew/32/48520_2.png) [@pe1mew](https://www.thethingsnetwork.org/forum/u/pe1mew)\
**Post date:** [April 27, 2018, 6:13am UTC](https://www.thethingsnetwork.org/forum/t/ttnmon-node-monitoring/11829/19 "2018-04-27T06:13:12Z")

</div>

Hi, when I had a look the site shows the same RSSI graph for a gateway and a node for both RSSI and SNR.  
Seems a bug to me:

![afbeelding](https://www.thethingsnetwork.org/forum/uploads/default/original/2X/0/02e2f8b862acbfe4f19e9a4b3a6f818a9fe9557f.png)

---

<div class="post-metadata">

**Author:** ![SmartNOOB](https://www.thethingsnetwork.org/forum/user_avatar/www.thethingsnetwork.org/smartnoob/32/25844_2.png) [@SmartNOOB](https://www.thethingsnetwork.org/forum/u/SmartNOOB)\
**Post date:** [April 27, 2018, 7:22am UTC](https://www.thethingsnetwork.org/forum/t/ttnmon-node-monitoring/11829/20 "2018-04-27T07:22:19Z")

</div>

Thanks for your bug report. I fixed the problem.

[Next page](https://www.thethingsnetwork.org/forum/t/ttnmon-node-monitoring/11829.md?page=2)
