Starting a Wiki!

This is a short post to let you know that I’ve just begun creating a wiki that I will use to keep track of and share information/code snippets/programs/tools and more. There currently is not that much available yet but that will change as time goes by ;).

you can find the wiki here.

RRD Graph Generation Details

In this post I’ll try and give an overview of the different graphs the script will generate, including hints/tips to improve the graphs or add extra ones.

First off, the default graphs;


 

The Signal graph

The signal graph shows you the mean signal power (in green)  and peak signal power (in blue) of the messages you have received. It is measured in dBFS. I’m planning on making an alternative signal graph that displays a relative value (from 0 to 100) instead of the negative dB values as it can be somewhat counterintuitive. Below is an example of the default signal graph.

The graph

Signal graph

 

The code

Tweaks

Currently, there are no real changes/tweaks for this graph available.


 

The Message rate graph

The message rate graph is very usefull to see how many messages per second your receiver is processing (dark blue, left vertical axis), how many messages you have received per hour that were stronger than  -3dBFS (red, right vertical axis) and how many aircraft positions you have received per hour (light blue, right vertical axis).

The graph

Message rate graph

The code

 

Tweaks

When comparing multiple receivers/antenna’s it can be easier to define an upper-limit as well for the graphs and have these lower and upper limits identical for the different make-graphs.sh scripts. (Assuming you are running two seperate pi’s that you want to compare). This can be achieved by adding the following line after line #10 (the lower-limit line).

And change the value to whatever suits your situation.


 

The Aircraft position/seen graph

This graph shows you the number of aircraft that your receiver tracked (in green). This does not mean that you have received actual position information for an aircraft. It could be the case that you have only received a single altitude/speed message and then never heard of the aircraft again. The blue line shows you how many aircraft with position information you have tracked. This graph is also quite usefull when comparing two different setups!

The graph

Aircraft seen graph

The Code

Tweaks

When comparing multiple receivers/antenna’s it can be easier to define an upper-limit as well for the graphs and have these lower and upper limits identical for the different make-graphs.sh scripts. (Assuming you are running two seperate pi’s that you want to compare). This can be achieved by adding the following line after line #10 (the lower-limit line).

And change the value to whatever suits your situation.


 

The aircraft tracks graph

The tracks graph gives you an idea of the amount of tracks, or paths you have decoded or triangulated. The graph is split in two parts, one displaying the number of single message tracks. This are tracks with only one position report. The other part shows you the number of tracks with more than one message. The idea behind this graph is the less red and the more green you can see the better it is as you are receiving many multiple message tracks.

The graph

Aircraft tracks graph

The Code

Tweaks

Currently, there are no real changes/tweaks for this graph available.


The max range graph

This graph shows the maximum received range for each time period collectd measures data. The Idea behind having it this way (instead of just an overall running maximum) is that you can see how the maximum range changes during the day with more or less traffic in certain directions. I’m planning on adding some more information to this graph which includes a line that will show you the overall running maximum to compare the relative max range to. In addition to that I’m planning on making a polar-plot like graph that shows you the “directional” range for the receiver. There are two versions of this graph, (which I’m planning on upgrading to three to include nautical miles as well, for now that is added as a tweak below.) one showing kilometers and the other showing statute/land-miles.

The graph

max range graph

The code

 Tweaks

If you want to have the graph show nautical miles instead of statute miles, change line 29 to match the following line below:

 


The CPU usage graph

This graph shows the cpu-usage from dump1090 split up in three parts. Firstly there is the amount of cpu used to read data over usb from the receiver, secondly the amount of cpu used to demodulate the received packets/data and finally some other small things inside dump1090 using cpu.

The graph

CPU usage graph

The code

 Tweaks

Currently, there are no real changes/tweaks for this graph available.


The CPU temperature graph

This graph displays the cpu temperature of your raspberry pi. It is an easy way to quickly check if your system is not running too hot or if there are any large fluctuations. It is available in both a metric and an imperial version.

The graph

core temperature graph

The code

 Tweaks

The default lower and upper limits are set to 0 and 100 degrees Celsius (and their Fahrenheit counterparts). You can change this to values closer to your average value to make it easier to see smaller fluctuations during the day.


Now for the more interesting part, the extra graphs with cool prediction-lines and more!

The following graphs were created by member caius over at the planefinder forum, his original post can be found here.


 

Message rate graph with trailing average

The first graph is an adaption of the message rate graph with the addition of a seven-day trailing average. Quoting caius:

“I added a trailing 7 day average. This is the mean average of the preceding 7 days message rate, not including the current day. The yellow area is the range of the data over those 7 days. This is pretty useful for comparing a change to receiver configuration – you can immediately see if the current days data falls within the previously established norms. This obviously works best if you make a change after a stable period of at least 7 days, and you will see greater variance if you make a lot of changes in quick succession.”

The graph

Message rate with trailing average

The code

Note that I had to remove the comments and blank lines in between the code to make the graph work in collectd. But I’ve left them in so that you can understand what the idea behind the graph/adapted code is and remove the comments if it you need to. Again, quoting caius: “If you just modify the existing script with this, then you will get the overlaid bits for a short section on the week, month and year graphs as well. It looks a bit odd, so you might want to create a separate script to draw this one.”


Message rate forecast graph

Caius also made a message rate forecast graph that I will share here as well. Quoting caius: “I also found in the RRD tool documentation that it is possible to make predictions based on past data. This graph shows 7 days of real data, and a prediction for 3 days ahead. It also shows a confidence interval of +/- 2 standard deviations. The prediction is based on the last 14 days of data. You can see the confidence interval starts wide and gets closer – that is because the first few days are still using some data from before I switched receivers to the R820T2, which has better performance than the old one. The highlighted areas are where the data falls outside the confidence interval.”

The graph

Message rate forecast graph

The code

The code for this graph is run in a separate .sh file. Be aware that it has hard-coded paths for the file output (line 5) and where it reads the data from (line 13). You might have to change these lines to reflect your personal setup/configuration. I’m planning on making this script part of my collectd package to enable easier installation.

dump1090 Collectd graphs and automated Installation script

Hello everyone,

This is my first post on my new blog! I’m happy to announce that I have an alpha-version of my automated installation script available. The purpose of this script is to make the progress of installing collectd and generating data from dump1090 to be used in rrd graphs. it can be quite a hassle but by using my script you should get a good base from where you can continue to customize it to fit to your personal needs.

this script allows you to make graphs like this:
Raspberry pi graphs raspberry pi graphs

(for more graphs see this page)

If you cannot get it to work/get stuck at any point, drop me a post/message in this thread over at planefinder.net.

The script/program is in a what I call “volatile” state. This means that I will be updating it quite often to make some fixes or expand the functionality!

This first version of the script makes some basic assumptions (a more versatile/flexible script is already being made):
1. you have a raspberry pi which has the home directory named as /home/pi
2. you have dump1090-mutability running, installed with the sudo apt-get package method.


 

Installation

this should start the installation process, printing some information along the way.
if it goes according to plan it will ask you to check if the graphs are showing/working, so go to your browser and check if that is the case.

if you can see the graphs, enable automatic graph generation by running:

that’s it for installation! (Note, it can say “no crontab for root” if you run the crontab command once, if that is the case, just rerun it and it should not display that message anymore)

Updating/Reverting: