Airplane Tracking: Difference between revisions

From NURDspace
No edit summary
 
(26 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{outdated}}
{{Project
{{Project
|Name=Airplane Tracking
|Name=Airplane Tracking
|Skills=Raspberry pi, Linux, airplanes, radio, rtl-sdr,
|Skills=Linux, airplanes, radio, rtl-sdr,
|Status=Active as fuck
|Status=Active as fuck
|Purpose=Use for infra
|Purpose=Use for infra
Line 8: Line 10:
}}
}}
== What ==
== What ==
https://sdr-enthusiasts.gitbook.io/ads-b/useful-extras/managing-a-remote-station


<gallery>
<gallery>
Line 13: Line 17:
</gallery>
</gallery>


A VM running on Coherence (sdr.dhcp.nurd.space / 10.208.42.113) tracking airplanes, in total there are 3 RTL-SDR dongles connected while only one is being used for ADS-B. The other two remain available for any other SDR purposes. The ADSB decoder used is [https://github.com/Mictronics/readsb ReadSB] some of the services are running under Docker. The setup is heavily based upon this [https://github.com/mikenye/docker-readsb/wiki/Guide-to-ADS-B-Data-Receiving%2C-Decoding-and-Sharing%2C-Leveraging-RTLSDR-and-Docker guide].
An LXC running on Coherence (sdr.lan.nurd.space / 10.208.1.88) tracking airplanes, in total there are 3 RTL-SDR dongles connected while only one is being used for ADS-B. The other two remain available for any other SDR purposes. The ADSB decoder used is [https://github.com/Mictronics/readsb ReadSB] some of the services are running under Docker. The setup is heavily based upon this guide [https://mikenye.gitbook.io/ads-b/].


For the time being, until we restart Coherence (to enable nesting) the following services are still not running:
The antenna is located above the bar under the skylight. As of right now, we are using a PCB-based 1090Mhz antennae, however, performance remains poor and a better antenna is very much desired.  
* RBfeeder
* https://github.com/mikenye/docker-adsbhub
* https://github.com/mikenye/docker-rawflight


The following services still need to be setup:
=== mlat ===
* https://github.com/mikenye/adsbexchange-stats
I still want to see if we can improve mlat reception. Previously, when the project was running in a VM we barely did any mlat calculations being likely because the timing in the VM was off. After it was moved to an LXC container, mlat receptions improved. What I would love to experiment with is moving the receiver itself to an embedded device such as a Raspberry Pi instead, to see if this causes any sort of improvement in mlat calculations. This should be fairly simple as it only means we need to move readsb and possibly mlathub to physical hardware instead. A better antenna will very likely also improve our mlat reception.  
* https://www.flightairmap.com/
 
Unclaimed feeders are (have to be done from inside the space):
* Piaware feeder
* Planefinder (?)
 
The antenna is located above the bar under the skylight.


=== How ===
=== How ===
Automatic Dependent Surveillance Broadcast (ADS-B) is a surveillance technology in which an aircraft determines its position via satellite navigation and periodically broadcasts it, enabling it to be tracked. The information can be received by air traffic control ground stations as a replacement for secondary surveillance radar, as no interrogation signal is needed from the ground. It can also be received by other aircraft to provide situational awareness and allow self-separation. ADS–B is "automatic" in that it requires no pilot or external input. It is "dependent" in that it depends on data from the aircraft's navigation system. This signal is transmitted at 1090Mhz and 978Mhz.
Automatic Dependent Surveillance Broadcast (ADS-B) is a surveillance technology in which an aircraft determines its position via satellite navigation and periodically broadcasts it, enabling it to be tracked. The information can be received by air traffic control ground stations as a replacement for secondary surveillance radar, as no interrogation signal is needed from the ground. It can also be received by other aircraft to provide situational awareness and allow self-separation. ADS–B is "automatic" in that it requires no pilot or external input. It is "dependent" in that it depends on data from the aircraft's navigation system. This signal is transmitted at 1090Mhz and 978Mhz.
The decoder software (Dump1090) takes in the raw data from the SDR and parses it, we are running the forked version made by Flightradar24, which means the feeder also sends data to Flightradar24. We are also feeding this data to Flightaware and Planefinder.


=== Hardware ===
=== Hardware ===
Line 49: Line 40:
* Range: Over 300 nm/550 km depending on installation quality
* Range: Over 300 nm/550 km depending on installation quality
* Performance: 10-20% more Mode S messages in installations where filtering is beneficial
* Performance: 10-20% more Mode S messages in installations where filtering is beneficial
===== Installed SDR dongles =====
<pre>
Found 3 device(s):
  0:  Generic RTL2832U OEM
  1:  Generic RTL2832U
  2:  Generic RTL2832U OEM < IN USE
0:
__________________________________________
Vendor ID:              0x0bda
Product ID:            0x2838
Manufacturer:          Realtek
Product:                RTL2838UHIDIR
Serial number:          143.831 ppm
Serial number enabled:  yes
IR endpoint enabled:    yes
Remote wakeup enabled:  no
__________________________________________
1:
__________________________________________
Vendor ID:              0x0bda
Product ID:            0x2832
Manufacturer:          Realtek
Product:                RTL2832U
Serial number:          flaw-ppm-0.939
Serial number enabled:  yes
IR endpoint enabled:    no
Remote wakeup enabled:  no
__________________________________________
2: < IN USE
__________________________________________
Vendor ID:              0x0bda
Product ID:            0x2838
Manufacturer:          Realtek
Product:                RTL2838UHIDIR
Serial number:          1354980354
Serial number enabled:  yes
IR endpoint enabled:    yes
Remote wakeup enabled:  no
__________________________________________
</pre>


=== Feeds ===
=== Feeds ===
We are currently feeding to the following services
We currently are feeding to the following services
{| class="wikitable"
{| class="wikitable"
|-
|-
! Name !! Link
! Name !! Link
|-
|-
| Adsbexchange ||  
| Adsbexchange || https://adsbx.org/sync/feeder.html?4A&Nurdspace
|-
|-
| Fr24feed ||  
| Flightaware || https://uk.flightaware.com/adsb/stats/site/165985
|-
|-
| Planefinder||  
| Flightradar24 || https://www.flightradar24.com/account/feed-stats/?id=34863
|-
|-
| Opensky ||
| Radarbox || https://www.radarbox.com/stations/EXTRPI015576
|-
| Planefinder || https://planefinder.net/coverage/receiver/228977
|-
| ADSBHub || https://www.adsbhub.org/statistic.php (@ space only)
|-
| Opensky || https://opensky-network.org/receiver-profile?s=-1408232256
|-  
|-  
| Piaware ||  
| Piaware ||  
|-
| Planewatch || Feeder 204
|-
| NurdSpace || https://alpha.radarvirtuel.com/stations/NURD
|-
| feed.adsb.fi  ||
|}
|}


=== Ports ===
=== Ports ===
List of all then ports, whom they belong to, and their function.
List of open ports, whom they belong to, and their function.


{| class="wikitable"
{| class="wikitable"
Line 75: Line 121:
! Port !! Service !! Description
! Port !! Service !! Description
|-
|-
| 80 || Tar1090|| PiAware info
| 80 || organizr || Handy dashboard that has easy access to the services
|-
| 8080 || Readsb || Webinterface
|-
| 8081 || Piaware || Piaware interface
|-
|-
| 8078 || Tar1090|| Dump1090 improved map
| 8082 || tar1090 || Improved Visualization
|-
|-
| 8079 || Graphs1090 || Some ADS-B graphs
| 8754 || fr24 || Fr24 feeder status
|-
|-
| 8080 || FlightAirMap|| A very complex interface
| 8888 || Dozzle || Docker logs
|-
|-
| 8081 || VirtualRadar || A neat looking web interface
| 9000 || Portainer || Allow you to control Docker
|-
|-
| 8082 || Readsb || Interface
| 30001 || Readsb || TCP Raw Input
|-
|-
| 8754 || Flightradar24 || Status interface
| 30002 || Readsb || TCP Raw Output
|-
|-
| 9000 || Portainer || Allow some control over Docker
| 30003 || Readsb || TCP BaseStation Output
|-
|-
| 30003 || Readsb || Mode-S?
| 30005 || Readsb || TCP Beast output
|-
|-
| 30005 || Readsb || Beast
| 30053 || Planefinder || Planefinder client
|}
|}


== Todo ==
[[Category:Radio]]
* Make a different antenna/remake the current antenna
* Claim feeds
* Write down some more info

Latest revision as of 10:35, 21 September 2024

Outdated IMPORTANT: The content of this section is outdated. Please update this section if you can. If you have checked or updated this section and found the content to be suitable, please remove this notice.


Airplane Tracking
Adsb pi.jpg
Participants Melan
Skills Linux, airplanes, radio, rtl-sdr
Status Active as fuck
Niche
Purpose Use for infra
Tool No
Location
Cost
Tool category

Airplane Tracking

adsb_pi.jpg {{#if:No | [[Tool Owner::{{{ProjectParticipants}}} | }} {{#if:No | [[Tool Cost::{{{Cost}}} | }}

What

https://sdr-enthusiasts.gitbook.io/ads-b/useful-extras/managing-a-remote-station

An LXC running on Coherence (sdr.lan.nurd.space / 10.208.1.88) tracking airplanes, in total there are 3 RTL-SDR dongles connected while only one is being used for ADS-B. The other two remain available for any other SDR purposes. The ADSB decoder used is ReadSB some of the services are running under Docker. The setup is heavily based upon this guide [1].

The antenna is located above the bar under the skylight. As of right now, we are using a PCB-based 1090Mhz antennae, however, performance remains poor and a better antenna is very much desired.

mlat

I still want to see if we can improve mlat reception. Previously, when the project was running in a VM we barely did any mlat calculations being likely because the timing in the VM was off. After it was moved to an LXC container, mlat receptions improved. What I would love to experiment with is moving the receiver itself to an embedded device such as a Raspberry Pi instead, to see if this causes any sort of improvement in mlat calculations. This should be fairly simple as it only means we need to move readsb and possibly mlathub to physical hardware instead. A better antenna will very likely also improve our mlat reception.

How

Automatic Dependent Surveillance Broadcast (ADS-B) is a surveillance technology in which an aircraft determines its position via satellite navigation and periodically broadcasts it, enabling it to be tracked. The information can be received by air traffic control ground stations as a replacement for secondary surveillance radar, as no interrogation signal is needed from the ground. It can also be received by other aircraft to provide situational awareness and allow self-separation. ADS–B is "automatic" in that it requires no pilot or external input. It is "dependent" in that it depends on data from the aircraft's navigation system. This signal is transmitted at 1090Mhz and 978Mhz.

Hardware

Flightaware Pro Stick Plus
  • Chip: R820T2
  • Amplifier: 19dB with 0.4dB noise figure and OIP3 +39dB
  • TCXO: 0.5 ppm
  • Filter: 1,075 MHz to 1,105 MHz pass band with insertion loss of 2.3 dB; 30 dB attenuation on other frequencies
  • Power Draw: 300 mA
  • Weight: 17 g / 0.6 oz
  • Dimensions: 95 mm x 32 mm x 13 mm
  • Antenna Port: SMA female (requires SMA antenna cable and optionally N-male adapter for large antenna)
  • Range: Over 300 nm/550 km depending on installation quality
  • Performance: 10-20% more Mode S messages in installations where filtering is beneficial
Installed SDR dongles
Found 3 device(s):
  0:  Generic RTL2832U OEM
  1:  Generic RTL2832U
  2:  Generic RTL2832U OEM < IN USE

0:
__________________________________________
Vendor ID:              0x0bda
Product ID:             0x2838
Manufacturer:           Realtek
Product:                RTL2838UHIDIR
Serial number:          143.831 ppm
Serial number enabled:  yes
IR endpoint enabled:    yes
Remote wakeup enabled:  no
__________________________________________

1:
__________________________________________
Vendor ID:              0x0bda
Product ID:             0x2832
Manufacturer:           Realtek
Product:                RTL2832U
Serial number:          flaw-ppm-0.939
Serial number enabled:  yes
IR endpoint enabled:    no
Remote wakeup enabled:  no
__________________________________________

2: < IN USE
__________________________________________
Vendor ID:              0x0bda
Product ID:             0x2838
Manufacturer:           Realtek
Product:                RTL2838UHIDIR
Serial number:          1354980354
Serial number enabled:  yes
IR endpoint enabled:    yes
Remote wakeup enabled:  no
__________________________________________

Feeds

We currently are feeding to the following services

Name Link
Adsbexchange https://adsbx.org/sync/feeder.html?4A&Nurdspace
Flightaware https://uk.flightaware.com/adsb/stats/site/165985
Flightradar24 https://www.flightradar24.com/account/feed-stats/?id=34863
Radarbox https://www.radarbox.com/stations/EXTRPI015576
Planefinder https://planefinder.net/coverage/receiver/228977
ADSBHub https://www.adsbhub.org/statistic.php (@ space only)
Opensky https://opensky-network.org/receiver-profile?s=-1408232256
Piaware
Planewatch Feeder 204
NurdSpace https://alpha.radarvirtuel.com/stations/NURD
feed.adsb.fi

Ports

List of open ports, whom they belong to, and their function.

Port Service Description
80 organizr Handy dashboard that has easy access to the services
8080 Readsb Webinterface
8081 Piaware Piaware interface
8082 tar1090 Improved Visualization
8754 fr24 Fr24 feeder status
8888 Dozzle Docker logs
9000 Portainer Allow you to control Docker
30001 Readsb TCP Raw Input
30002 Readsb TCP Raw Output
30003 Readsb TCP BaseStation Output
30005 Readsb TCP Beast output
30053 Planefinder Planefinder client