Erneut: ADS-B-Empfang, diesmal mit neuem USB-Stick

Ich hatte vor einiger Zeit schon einmal ADS-B-Empfangsexperimente gemacht, ihr erinnert euch? Heute habe ich meinen Raspberry Pi 2 mal mit dem neuen DVB-T-Stick angeworfen und unter Windows das adsbScope noch einmal aktiviert. Hierbei hat sich nach wenigen Minuten folgendes Bild ergeben:

Screenshot adsbScope
Screenshot adsbScope

Hierzu sollte ich eines erwähnen, für diejenigen, die jetzt erst dazu gestoßen sind: Mein Standort ist in Völklingen, also in der Mitte der Karte oder mit anderen Worten: am unteren Zipfel des „Airtracks“, der sich da abgezeichnet. Als Antenne nutze ich die beim Stick im Lieferumfang befindliche ohne jeden weiteren Verstärker etc. Die Antenne steht auf der äußeren Fensterbank meines Büros. Aus diesem Grund dieses etwas „seltsam“ anmutende Empfangsbild. Was interessant ist, ist jetzt, dass der neue Stick unheimlich empfindlich ist, hier sogar Signale bis in der nähe von Siegen oder Frankfurt/Main zu empfangen sind, was immerhin schon mal 180-190 km von mir entfernt ist. Also so schlecht, wie man immer behauptet, sind diese USB-DVB-T-Sticks gar nicht mal.

Neues Experiment: Empfang von AIS-Daten auf der Saar

AIS-Empfang
AIS-Empfang

Amateurfunk und Technik ist ja schon was Feines – man hat immer irgendwas zu knoddeln und zu spielen. So bin ich jetzt, nachdem mein APRS-IGate einige Tage lief, auf die Idee gekommen, die Redundanz, die durch mich im Raum Völklingen entstanden ist, wieder etwas zu mindern und mich auf einen anderen Frequenzbereich zu verlagern – einfach weil es Spaß macht und mich immer wieder reizt, was Neues anzugehen. Ich habe also die vorhandene Hardware genommen, so belassen, wie sie war und nur die genutzte Software ausgetauscht:

Zum Empfang selbst wird rtl_fm genutzt, was die empfangenen Daten in ein FIFO-Device (vorher mit mkfifo angelegt) schreibt:
rtl_fm -f 161976000 -g 40 -p 95 -s 48k -r 48k /tmp/aisdata
Anschließend bedient sich gnuais der Daten im FIFO-Device und schickt diese an aprs.fi über die JSON-Schnittstelle. Das ganze funktioniert augenscheinlich schon mal nicht schlecht. Auf dem Screenshot kann man die Abfahrt der „MARIE JOSEPH“ vom Hafen in Vöklingen-Ost sehen, die dazugehörigen Datenpakete sieht man hier:

ch A type 1 mmsi 205263890: lat 49.250543 lon 6.870142 course 0 speed 0.0 rateofturn 32 navstat 0 heading 511 (!AIVDM,1,1,,A,133hD4PP00POLg:L;VuP0?v`RH;i,0*54)
ch A type 5 mmsi 205263890: name "MARIE JOSEPH" destination "" type 79 length 110 width 12 draught 0.1 (!AIVDM,2,2,1,,0000000000,2*54)
ch A type 1 mmsi 205263890: lat 49.250523 lon 6.870173 course 295 speed 0.0 rateofturn 32 navstat 0 heading 511 (!AIVDM,1,1,,A,133hD4PP00POLghL;VrcQOv`RD01,0*7C)
ch A type 1 mmsi 205263890: lat 49.250517 lon 6.870128 course 294 speed 0.0 rateofturn 32 navstat 0 heading 511 (!AIVDM,1,1,,A,133hD4PP00POLfrL;VqcPOv`R@;i,0*32)
ch A type 1 mmsi 205263890: lat 49.250490 lon 6.870082 course 316 speed 0.0 rateofturn 32 navstat 0 heading 511 (!AIVDM,1,1,,A,133hD4PP00POLf2L;VmdEww@R<01,0*4A)
ch A type 1 mmsi 205263890: lat 49.250493 lon 6.870027 course 282 speed 0.6 rateofturn 32 navstat 0 heading 511 (!AIVDM,1,1,,A,133hD4PP06POLe0L;VnK1wv2R0SB,0*7A)
ch A type 1 mmsi 205263890: lat 49.250517 lon 6.869725 course 278 speed 1.5 rateofturn 32 navstat 0 heading 511 (!AIVDM,1,1,,A,133hD4PP0?POLWFL;Vqbnww@R8GT,0*27)
ch A type 1 mmsi 205263890: lat 49.250230 lon 6.868312 course 244 speed 3.7 rateofturn 32 navstat 0 heading 511 (!AIVDM,1,1,,A,133hD4PP0UPOL<nL;V>aRgv2R80v,0*48)
ch A type 1 mmsi 205263890: lat 49.250063 lon 6.867858 course 242 speed 4.0 rateofturn 32 navstat 0 heading 511 (!AIVDM,1,1,,A,133hD4PP0`POL4FL;UmaLgv`R0S1,0*6D)
ch A type 1 mmsi 205263890: lat 49.249867 lon 6.867338 course 240 speed 4.2 rateofturn 32 navstat 0 heading 511 (!AIVDM,1,1,,A,133hD4PP0bPOKrVL;UHIFww@R0SE,0*7C)
ch A type 1 mmsi 205263890: lat 49.249647 lon 6.866758 course 237 speed 4.5 rateofturn 32 navstat 0 heading 511 (!AIVDM,1,1,,A,133hD4PP0ePOKgfL;To9@gv2R59`,0*27)
ch A type 1 mmsi 205263890: lat 49.248973 lon 6.865385 course 226 speed 3.2 rateofturn 32 navstat 0 heading 511 (!AIVDM,1,1,,A,133hD4PP0PPOKEvL;SB8lwv2R0R?,0*06)
ch A type 1 mmsi 205263890: lat 49.248447 lon 6.864928 course 193 speed 0.9 rateofturn 32 navstat 0 heading 511 (!AIVDM,1,1,,A,133hD4PP09POK=JL;R3GSOv0RH03,0*37)
ch A type 1 mmsi 205263890: lat 49.248353 lon 6.864923 course 194 speed 0.5 rateofturn 32 navstat 0 heading 511 (!AIVDM,1,1,,A,133hD4PP05POK=DL;QmGUOvVR59h,0*27)
ch A type 1 mmsi 205263890: lat 49.248327 lon 6.864922 course 197 speed 0.2 rateofturn 32 navstat 0 heading 511 (!AIVDM,1,1,,A,133hD4PP02POK=BL;QiGdww@RD01,0*1D)
ch A type 1 mmsi 205263890: lat 49.242467 lon 6.858325 course 227 speed 6.9 rateofturn 32 navstat 0 heading 511 (!AIVDM,1,1,,A,133hD4PP15POIAVL;D1ppgw@R0S8,0*11)
ch A type 1 mmsi 205263890: lat 49.242120 lon 6.857558 course 242 speed 6.9 rateofturn 32 navstat 0 heading 511 (!AIVDM,1,1,,A,133hD4PP15POI3>L;C>9NOv0R0So,0*7A)
ch A type 1 mmsi 205263890: lat 49.241820 lon 6.852620 course 274 speed 7.7 rateofturn 32 navstat 0 heading 511 (!AIVDM,1,1,,A,133hD4PP1=POGV`L;BPreww@RD02,0*4B)
ch A type 1 mmsi 205263890: lat 49.241990 lon 6.850342 course 279 speed 7.9 rateofturn 32 navstat 0 heading 511 (!AIVDM,1,1,,A,133hD4PP1?POFsrL;BrbqOvbRD02,0*42)
ch A type 1 mmsi 205263890: lat 49.242067 lon 6.849262 course 276 speed 7.8 rateofturn 32 navstat 0 heading 511 (!AIVDM,1,1,,A,133hD4PP1>POFWbL;C6Jjww@R@Ge,0*3E)
ch A type 1 mmsi 205263890: lat 49.242193 lon 6.848140 course 280 speed 7.7 rateofturn 32 navstat 0 heading 511 (!AIVDM,1,1,,A,133hD4PP1=POFB`L;CI:uOv2R<02,0*2D)
ch A type 1 mmsi 205263890: lat 49.242343 lon 6.847043 course 285 speed 7.7 rateofturn 32 navstat 0 heading 511 (!AIVDM,1,1,,A,133hD4PP1=POEv4L;Cgc7wvbR@<V,0*07)
ch A type 1 mmsi 205263890: lat 49.243070 lon 6.844007 course 298 speed 7.4 rateofturn 32 navstat 0 heading 511 (!AIVDM,1,1,,A,133hD4PP1:POE58L;ELcagvbR<02,0*30)
ch A type 1 mmsi 205263890: lat 49.244740 lon 6.841143 course 325 speed 6.9 rateofturn 32 navstat 0 heading 511 (!AIVDM,1,1,,A,133hD4PP15POD?LL;IFtd?w@R5:L,0*52)
ch A type 1 mmsi 205263890: lat 49.245307 lon 6.840597 course 328 speed 7.5 rateofturn 32 navstat 0 heading 511 (!AIVDM,1,1,,A,133hD4PP1;POD5<L;Jd<kgv2R0S6,0*7D)
ch A type 1 mmsi 205263890: lat 49.245927 lon 6.840015 course 335 speed 7.1 rateofturn 32 navstat 0 heading 511 (!AIVDM,1,1,,A,133hD4PP17POCrBL;L9M4gvbR5:P,0*60)
ch A type 1 mmsi 205263890: lat 49.247223 lon 6.839592 course 347 speed 7.7 rateofturn 32 navstat 0 heading 511 (!AIVDM,1,1,,A,133hD4PP1=POCjFL;O;eS?v2RL03,0*20)
ch A type 1 mmsi 205263890: lat 49.248000 lon 6.839387 course 356 speed 7.5 rateofturn 32 navstat 0 heading 511 (!AIVDM,1,1,,A,133hD4PP1;0OCfPL;Pwuq?vbR0Rl,0*2C)
ch A type 3 mmsi 205263890: lat 49.248650 lon 6.839357 course 358 speed 7.5 rateofturn 32 navstat 0 heading 511 (!AIVDM,1,1,,A,333hD4PP1;0OCetL;RQevww@RAPC,0*0D)
ch A type 1 mmsi 205263890: lat 49.249283 lon 6.839347 course 4 speed 7.5 rateofturn 32 navstat 0 heading 511 (!AIVDM,1,1,,A,133hD4PP1;POCehL;T0P:gv2RH0d,0*40)
ch A type 5 mmsi 205263890: name "MARIE JOSEPH" destination "" type 79 length 110 width 12 draught 0.1 (!AIVDM,2,2,0,,0000000000,2*55)
ch A type 1 mmsi 205263890: lat 49.253473 lon 6.840430 course 4 speed 7.5 rateofturn 32 navstat 0 heading 511 (!AIVDM,1,1,,A,133hD4PP1;POD24L;em@9gv2R@0d,0*3B)
ch A type 1 mmsi 205263890: lat 49.254843 lon 6.839917 course 341 speed 7.4 rateofturn 32 navstat 0 heading 511 (!AIVDM,1,1,,A,133hD4PP1:POCpLL;i2eCww@R@H1,0*45)
ch A type 1 mmsi 205263890: lat 49.255487 lon 6.839507 course 332 speed 7.4 rateofturn 32 navstat 0 heading 511 (!AIVDM,1,1,,A,133hD4PP1:POChhL;jS<wOv2R<03,0*3B)
ch A type 1 mmsi 205263890: lat 49.263060 lon 6.830623 course 325 speed 7.9 rateofturn 32 navstat 0 heading 511 (!AIVDM,1,1,,A,133hD4PP1?POA:<L<4C<cwvbRD03,0*77)

Ich werde mich jetzt die nächsten Tage mit der Thematik beschäftigen, die entsprechende Software so in ein Script zu kleiden, dass sie als Service gestartet wird und nicht mehr per Hand gestartet werden muss. Als Daemon läuft es sich nämlich angenehmer 🙂

APRS-IGate mit Raspberry Pi und RTL-DVB-T-Stick wieder QRV

Nachdem mir vor einiger Zeit mein RTL-USB-Stick wegen eines Defekts ausgefallen ist, ist jetzt mein IGate wieder QRV. Heute kam ein neuer DVB-T-Stick bei mir an, so dass ich jetzt wieder mein Gateway in Betrieb nehmen konnte. Der neue Stick hat einen Rafael Micro R820T tuner und ist ebenfalls als RTL2838-Device zu nutzen. Jetzt bin ich mal gespannt, welche Empfangsergebnisse das Teil liefern wird. Mein Gedanke ist es ja, hauptsächlich die Gegend hier in Völklingen mit Empfangsmöglichkeiten zu bestücken, da ich mit meinem kleinen APRS-Tracker ja bekanntlich Probleme habe, mit einem Watt Gehör zu finden. Ein erster Test während der Erstellung dieses Artikels zeigt schon mal zuverlässig empfangene Pakete an. Also können wir mal gespannt sein, wie sich das entwickeln wird.

ADS-B, diesmal mit dem Raspberry Pi

Ich hatte ja schon einmal erwähnt, dass ich mich nun mit dem Thema ADS-B-Empfang beschäftige. Als Besitzer mehrerer Raspberry Pi, für die ich immer wieder sinnvolle Anwendungsfelder suche (hi), bin ich auf den Gedanken gekommen, einen als ADS-B-Server zu betreiben, um dann z.B. mit verschiedenen Windows-Rechnern die Daten visualisieren zu können (mit dem bereits beschriebenen adsbSCOPE).

Screenshot: dump1090 im Browser
Screenshot: dump1090 im Browser

Nach kurzer Suche fiel die Wahl auf das Programm „dump1090“, welches unter http://www.satsignal.eu/raspberry-pi/dump1090.html recht gut beschrieben wird, bezogen auf Installation auf dem Raspberry Pi. Erfahrungsgemäß erstreckt sich mein Empfangsbereich, was die Signale der Flugzeuge angeht, auf den nördlicheren Raum, sprich, das Saarland wie auch teile von Rheinland-Pfalz so bis ca. in die Eifel und an den Rhein heran. Die Flughöhen der zu sehenden Flugzeuge belaufen sich zwischen ca. 12000 und 40000 ft, also ca. 3,6 km und 12 km über NN.

Die Ausrichtung des Empfangsgebietes nach Norden hin ergibt sich aus der Tatsache, dass ich mittlerweile die Antenne zwar aus dem Zimmer auf die Fensterbank verlegt habe, aber die Antenne eben nur freie Sicht in Richtung Norden besitzt. Südlich wird sie durch das Haus abgeschattet, was mittelfristig aber evtl. dadurch kompensiert wird, dass ich auf der Südseite des Hauses noch eine Antenne verstecken werde, die dann an einen zweiten USB-Stick und einen zweiten Raspberry Pi geht, der dann ebenfalls Datenpakete liefert, die dann zusammengefasst über den ersten bereitgestellt werden. Softwareseitig sieht das auf den ersten Blick nicht sonderlich problematisch aus. Lassen wir uns aber einfach mal überraschen.

ADS-B mit einem DVB-T-Stick

Seit zwei Tagen experimentiere ich mit meinem USB-DVB-T-Stick herum und lausche den ADS-B-Baken der Flugzeuge, die sich hier so im saarländischen Luftraum befinden. Dass hierbei nicht nur Signale aus dem Saarland, sondern teilweise unerwartet weit über die Landesgrenzen hinaus den Weg zu meiner nun doch absolut nicht unbedingt auf den Empfang von solchen Signalen ausgelegte Antenne auf der Fensterbank (eine ca. 30 cm lange  Gummiwendel-Antenne für 2m/70cm) fanden, finde ich sehr interessant zu beobachten. Hier mal noch ein Screenshot von der von mir verwendeten Software adsbSCOPE, welche ich zusammen mit adsb# betreibe, um die Funksignale zu visualisieren.

Screenshot adsbSCOPE
Screenshot adsbSCOPE

Das eingezeichnete Gebiet zeigt das Areal, aus dem die empfangenen Signale stammen. Mein Empfangsstandort befindet sich übrigens in der Kartenmitte, dort wo die grünen Linien in einem roten Fadenkreuz münden. Bemerkenswert aber erklärbar ist eine sehr starke Nord-Verschiebung der Signale: Die Antenne steht am Bürofenster, welches eben in nördlicher Richtung liegt. Es wäre, wenn man ernsthaft das ganze betreiben möchte, zu überlegen, eine entsprechend auf 1090 MHz resonante Rundstrahlantenne oder Discone-Antenne im genannten Bereich an die frische Luft zu bringen, um eben auch sicher zu stellen, dass rundherum die Signale auch empfangen werden.

DAB-Player für Windows 7 (und später)

Unter Funkamateuren sind die DVB-T-Sticks mit Realtek-Chipsatz mittlerweile ja recht gut verbreitet. Jetzt ist es auf Dauer sicherlich auch mal ganz interessant, diese Sticks nicht nur als SDR zu nutzen (z.B. mit SDR# oder HDSDR) sondern vielleicht auch mal „ernsthaft“ als DAB(+)-Empfänger! Das geht mit diesen Sticks nämlich auch einwandfrei.

Das Einzige, was man dazu benötigt, ist ein Stück Software, welches derzeit aktuell kostenlos im Internet zu finden gibt. Am einfachsten und zuverlässigsten unter folgender URL: http://ukwtv.de/cms/downloads-aside/281-dab-player-von-andreas-gsinn.html.

Ich selbst nutze dieses Programm seit mehreren Monaten, um im Büro am PC DAB-Sender zu lauschen. Bisher kann ich mich über die Funktionsweise und Empfangsqualität nicht beschweren.

Schön sind solche „Nebensachen“ wie die Journaline-Darstellung, Slideshow-Anzeige und die Ausgabe verschiedener technischer Informationen zum aktuellen Stream – was sicherlich den technisch interessierten Zuhörern ganz gut gefallen dürfte, mal etwas mehr über die Sender zu erfahren, als man so aus dem schnöden Display lesen kann.

Schaut es euch einfach mal an!