Could someone please explain why the elevation of this plane is so low on the azimuth/elevation chart, when the elevation vs distance chart shows it accurately?
Should I be interpreting the elevation in the azimuth/elevation chart as
the angle of elevation from the ADSB, or
the height of the plane above sea level
(if you look carefully you’ll see the trace begins at 35,000 feet. PS I have reset timelapse1090 in order to just capture a simple plane, to reduce confusion)
Elevation is an angle, altitude is a distance. A small elevation means that the aircraft is close to the horizon as viewed from your site, not that it’s close to the ground.
Is it possible? Yes - the json data contains time stamps which could be used to filter by date/time.
Can the current script do it? No, and it’s not something I’m likely to add at the moment. If you want to try it yourself, then I’d point you in the direction of the documentation for jq, which is the tool used to extract the data from the jsons, and jqplay, which is very useful for testing filters.
Depending on the interval you are saving data at and how busy your site is, be aware that you might run into problems with memory limitations processing a weeks worth of data at a time.
Much easier to set timelapse for a day and then letting the polar script save the data.
There is even a setting for that.
Then you just make different directories with the polar script.
Let it run every day (in every directory).
One directory you delete the data after every run or just disable the setting in regards to saving the data.
That will be your daily plot.
Other directories you only delete the data if the timeframe you want has elapsed.
The script still runs every day but as it saves the data, more data accumulates.
You’ll of course have to also take care of the pictures.
Edit: Removed a remark, this thread is too nice for flames.
I don’t think there’s any need for any hostility. Just bear in mind that not everyone is writing in their first language and that written communication can be easily misinterpreted - give people the benefit of the doubt. This is a remarkably friendly forum compared to many and it would be good if it stayed that way.
That aside, I updated the script to add the range ring to the map plot as requested by @keithma. I’ll be adding some airport data to it as well as soon as I’ve decided how to display it.
Demanding an answer to a question like that isn’t the best tone in my opinion.
You have been asking for custom solutions since you started writing in this thread.
But my previous remark wasn’t useful, i’ll try again without the tone:
Think for yourself, show a little initiative, that goes a long way.
Added airport data. Data is public domain from Ourairports, so not guaranteed to be accurate - fortunately you can just edit it on the website if you see a problem. Azimuths are shown on the elevation plot, ranges on the altitude plot and locations of airports on the map plots.
Position and altitude are now taken from the heywhatsup data file - this should help reduce problems people have had where the locations don’t match exactly. I’ll probably tidy this up further in future, as it effectively makes the location settings in the script unnecessary.
Some tidying up to hopefully make things a bit more resilient in conjunction with the above. Should avoid some bugs with rendering things like horizons.
Airports are currently labelled with IATA codes as they are a bit more human readable than ICAO codes. The data is present for both however, so can easily be changed if required.
Using config file
HWT OK
ADS-B and MLAT aircraft will be plotted
Using tmpfs : /tmp/tmp.cwmQRZkL2K
Using local archive:
Unpacking compressed data:
.....................................
Retrieving recent history:
...............................................................................
Processing heywhatsthat.com data:
Setting receiver position from heywhatsthat data. If these values do not match what you are expecting, please check the heywhatsthat ID is correct and that it was generated with the correct location
Latitude: 48.54764
Longitude: 2.42108
Height: 85.344
Number of data points collected: 1413434
Calculating Range, Azimuth and Elevation data:
Filtering altitudes
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 8178k 100 8178k 0 0 682k 0 0:00:11 0:00:11 --:--:-- 846k
Generating all altitudes heatmap...
Generating high altitude heatmap...
Generating low altitude heatmap...
Generating close range heatmap
"/dev/stdin" line 65: undefined variable: reset
I generally remove the upintheair.json file before I run the script as I seem to remember that it needed to be regrabbed after making some changes. I’ve just done that, downloaded the latest polar.sh and now I get this error:
Using config file
HWT OK
ADS-B aircraft only will be plotted
Using disk : /home/pi/heatmap
Using local archive:
Unpacking compressed data:
.....................................
Retrieving recent history:
.........................................................................................................................................................................
Processing heywhatsthat.com data:
jq: error: Could not open file /home/pi/heatmap/upintheair.json: No such file or directory
It looks as though it hasn’t tried to grab it.
/edit - I’ve put upintheair.json back manually, re-run the script and it appears to have completed successfully - Results here.
Number of data points collected: 2765974
Calculating Range, Azimuth and Elevation data:
Filtering altitudes
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 8178k 100 8178k 0 0 2055k 0 0:00:03 0:00:03 --:--:-- 2054k
Generating all altitudes heatmap...
Generating high altitude heatmap...
Generating low altitude heatmap...
Generating close range heatmap
Generating elevation heatmap...
Generating Range/Altitude plot...
Generating Close Range altitude plot
Generating low heatmap with map overlay
Graphs available at :
http://192.168.1.182/dump1090-fa/plots/
Graphs rendered in 1522 seconds
@caius, the enhancements you are making to this project are great but if it’s not too much to ask…
Given that Hey What’s That is so important to the process, would it be possible to move the validation steps to the beginning of the script so they take place before the data collection phase rather than afterwards?
It does check that an ID has been entered right at the start, and will stop if one isn’t present. The script will stop if an invalid ID is entered as the download will throw up an error, but that won’t happen until after data is collected atm. I could rearrange things so that the ID is processed before data collection starts I suppose, but I need to add some more error checking first.
Hmm i’m thinking if it would be possible to do the plots without the HWT stuff in case it’s not working.
But dynamically modifying the gnuplot scripts seems to be a pain.
Maybe just give it some default data to chew on in case the HWT stuff doesn’t work out?
I guess bailing out before doing any real work also makes sense.
Yeah I’ve been thinking about how best to do it for a while - someone before had a problem because HWT only covers to latitude 60 (data originates from a shuttle mission, and that’s the orbit it had). The options are to have an alternate gnuplot block without the hwt stuff in it, but I think that means everything has to be duplicated and makes it unnecessarily complicated.
I think generating some dummy data files that are empty would work OK - gnuplot should just throw up an error, but still produce output on the data it has. It’s next on the list of things to do, so I’ll have a play with it later.