gr-air-modes and RTL2832U

2,713 views
Skip to first unread message

JayEmbee

unread,
Apr 26, 2012, 7:00:40 PM4/26/12
to ultra-c...@googlegroups.com
I see that gr-air-modes is built for the USRP. I'm not skilled enough with the python code to make it work with the RTL2832U (specifically my P160). Has anyone messed with this yet?

Conversely, balint, can you release the code you used to do the ADS-B stuff on the RTL2832? I'm drastically impatient here.

Thanks again, all!

--Jay

JayEmbee

unread,
Apr 26, 2012, 10:04:12 PM4/26/12
to ultra-c...@googlegroups.com

Bob R

unread,
Apr 27, 2012, 12:19:35 AM4/27/12
to ultra-c...@googlegroups.com
Are you in the US?  I tried just 'listening in' via HDSDR and didn't find anything.  I get blazing white signal from ATC comms overhead, but nothing at 1090mhz.

Eric Brombaugh

unread,
Apr 27, 2012, 1:30:14 AM4/27/12
to ultra-c...@googlegroups.com
Do you have an antenna that's designed for the ATCRBS frequencies? I tried looking with my spectrum analyzer using just a short wire and also saw nothing, despite being under the flight path and 10mi away from a busy national hub. I've got an elevated discone that I want to try out at some point soon - that may help.

Miguel A. Vallejo

unread,
Apr 27, 2012, 5:31:03 AM4/27/12
to ultra-c...@googlegroups.com
In the device hint, remove tuner=e4k to be able to tune 1090 MHz.

Sinager

unread,
Apr 27, 2012, 9:48:18 AM4/27/12
to ultra-c...@googlegroups.com


Il giorno venerdì 27 aprile 2012 07:30:14 UTC+2, Eric Brombaugh ha scritto:
Do you have an antenna that's designed for the ATCRBS frequencies? I tried looking with my spectrum analyzer using just a short wire and also saw nothing, despite being under the flight path and 10mi away from a busy national hub. I've got an elevated discone that I want to try out at some point soon - that may help.

Things to consider:
- spectrum analyzers normally aren't very sensible: you can see strong signals fine but, coming to the second point,
- the GHz and up region frequencies are mostly "line of sight" stuff. Which means with an indoor antenna often you won't get much
- unfortunately just the casual scanning outdoor antenna may often make no difference, depending on the coax you're using. A 10mt or more run of RG58 may attenuate signals at 1090MHz so much that the outdoor antenna is useless. Sat-TV coax or thick expensive cables make the difference here.

Sinager

unread,
Apr 29, 2012, 4:18:52 AM4/29/12
to ultra-c...@googlegroups.com


I set it up and seems to work.
As anticipated, I get more packets with the stock whip than using the discone on the roof, even if my room is a sort of Faraday cage.

Gr-air is also forwarding packets to planeplotter, who shows them in the aircraft list.
However I've never seen a position reported so far, only the odd altitude data from time to time.
I'm a total n00b on ads-b, but doesn't it sound strange?
Any experience to share?

Thanks
S

Balint Seeber

unread,
May 7, 2012, 7:12:52 AM5/7/12
to ultra-c...@googlegroups.com
Good to see the Mode S interest here!

Some general hints to keep in mind:
  1. 1090 MHz is line of site, however if you live close to an airport, separate Mode S ground station or have aircraft flying nearby, you should still be able to see some evidence of transmitted frames when using a decent (sensitive) receiver. E.g. when doing tests in my room, which is low down in an apt block, has no view (surrounded by other buildings), I can still receive enough info from a few aircraft, which are on approach, to calculate their position.

  2. A tuned antenna is always better, but a mismatched antenna and (short) lossy cable should still get you some frames if you can set it up with good LOS (my first outdoor test used a terrible VHF/UHF scanner whip antenna on top of a hill near the airport). In fact, if you have a sensitive enough receiver up high, you should be able to receive packets without an antenna connected at all (the transponders on large airliners transmit with considerable power).

  3. If you're at a loss for which antenna to use, simply make your own tuned quarter-wave one. Cut the appropriate length of wire (5x ~65mm with 95% velocity factor @ 1090 MHz), solder one into the centre pin of an N connector (pointing up), and have the other four solders at the corners pointing downward at an angle. We've used this a lot in the field and it has worked well. Even better with a good bandpass filter to suppress the intermod from nearby cell towers.

  4. If you need to situate your receiver a fair distance away from the rest of your system (as I have done in the past), your LAN is lossless compared to coax, so you could consider using the BorIP server. There's still a bit of work required to enable general use with ADS-B outside of Modez/Aviation Mapper, but it's certainly an option to keep in mind. The signal flow would be: receiver -> BorIP server -> LAN -> BorIP-enabled UDP Source block in GNU Radio -> Mode S decoder.

  5. Mode S transmissions are wideband (compared to, say, airband AM). Hence the need for significant capture bandwidth. For instance, have a look at the spectrums here:
    http://wiki.spench.net/wiki/Modez#Raw_Samples
    The best way to find evidence of transmissions is to always look in the time-domain (AM signal amplitude vs. time plot), instead of the frequency domain. Then you can set your scope trigger threshold to a little above the noise floor and see if it captures any frames.

  6. The "TV" (the new short-form name for the RTL dongle ;) only outputs I/Q samples with 8-bit resolution. This means it suffers from lower dynamic range than other SDR/Mode S receivers. Therefore please remember that the performance will not be as good as a properly engineered radio with better dynamic range! Symptoms are: poorer observed range of 'heard' aircraft, and bad decodes/missing frames altogether. Not to say it won't work, but you really need a tuned antenna, a good front-end filter to get the most out of such a set up.
Hope that helps a little - any further suggestions welcome!

hb9txw

unread,
May 12, 2012, 5:49:08 PM5/12/12
to ultra-c...@googlegroups.com

I tried to compile the ADS-B receiver I got from here:
git clone  git://github.com/bistromath/gr-air-modes.git

Unfortunately when I try to do "make" it stops and tells me that "./air.cc" is missing.
Is it realy missing or is there wrong with my configuration?
Best 73!

SDR Lurker

unread,
May 22, 2012, 7:37:10 PM5/22/12
to ultra-c...@googlegroups.com
sudo ln -s /usr/local/include/gruel/swig/gruel_common.i /usr/local/include/gnuradio/swig/gruel_common.i
 
Worked for me....

pozole

unread,
May 26, 2012, 1:48:19 PM5/26/12
to ultra-c...@googlegroups.com
I have a solution for the P160 dongle reception on 1090 Mhz: frozen vegetables.

Since I got a Newsky dongle some weeks ago, I tried everything I read to get a single ADS-B frame on 1090 Mhz with absolutely no success. I tried a tuned antenna, default whip antenna, all combinations of ExtIO DLL and "tuner=" parameters, various SDR applications on Linux and Windows, updated and compiled the latest OsmoSDR and gr-baz, used a choked USB cable. Heck, I even mounted the antenna on top of the roof with proper connectors and impedance cable. All traffic (that I know are ADS-B capable) passed over 1 km from my house. Nothing, not even a spike.

Three days ago I received my P160. It was evident on first try that it has more sensiblity that the Newsky. All signals were a lot stronger and I could see the characteristic lines at 1090 Mhz of ADS-B frames. I fired up rtl_modes and didn't saw anything but garbage. Then, the next day, the first thing I did when reconnected the P160 was to run rtl_modes. To my surprise I was getting a lot of frames with position reports. It lasted 1 to 2 minutes an after that it just stopped receiving them.

That got me thinking. What the hell happened? I noticed that the P160 got very hot. Could that be the cause? I went to the freezer and got a bag of frozen vegetables. I put a towel on my desk, then the P160 and on top the bag of frozen vegetables. No 15 seconds passed and I started receiving a lot of frames again! 

I sent the data to planeplotter and I kept monitoring traffic as far as 250km away with the default whip antenna that came with the dongle next to a window, inside my room. I was able to monitor traffic as long as the vegetable bag was frozen. I managed yesterday to be continuously monitoring for 4 hours.

Conclusion: Avoid the Newsky dongles. Many people have reported poor design and I can confirm it. And use a bag of anything frozen on a P160 on 1090 Mhz, keep it very cool. I tried just the board without the case, but that didn't cooled it enough.

I'm waiting a EzTV 668. As the balint256 video shows, that dongle works on 1090 Mhz without cooling it down or any other trick.


Miguel A. Vallejo

unread,
May 26, 2012, 3:08:42 PM5/26/12
to ultra-c...@googlegroups.com
pozole wrote:

>>> I'm waiting a EzTV 668. As the balint256 video
>>> shows, that dongle works on 1090 Mhz without
>>> cooling it down or any other trick.


Funny history, but don't trust on the device model to guarantee the tuning range. It is a individual tuner by individual tuner matter and there is no guarantee all ExTV668 will tune 1090 MHz. The same is true for all P160 dongles, and for any E4000 based dongle.

As you should know, there is a tuner gap from about 1100 MHz to 1240 MHz. "about" is the key. Not all tuners have the same tuning range, so gap differs between tuners.

1090MHz is at the edge, so some tuners will tune it, and others don't. If you are interested in 1090 MHz I will recommend you to buy some dongles and test them to find some useable on 1090 MHz.

If a particular E4000 chip tunes 1090 MHz, no problem. If not you should try another dongle. Anyway your solution is very interesting: A small peltier module is quite cheap and can keep the tuner quite cold, forcing its VCO to tune 1090 MHz.

Just an idea :o)

Bob R

unread,
Jun 13, 2012, 5:44:09 AM6/13/12
to ultra-c...@googlegroups.com
Hi Folks,

Can anyone offer a suggestion on how to get planeplotter reading data from gr-air-modes?

I have the -P argument running to fire up the SBS-1 server port, and a telnet to port 30003 on the system running gr-air-modes from the system running PlanePlotter results in messages like this:

MSG,8,0,20,A9739C,120,2012/06/13,05:31:23.309,2012/06/13,05:31:23.309,,,,,,,,,,,,
MSG,3,0,14,A5465D,114,2012/06/13,05:31:24.814,2012/06/13,05:31:24.814,,29000,,,39.93915,-83.73737,,,,0,0,0
MSG,4,0,14,A5465D,114,2012/06/13,05:31:25.316,2012/06/13,05:31:25.316,,,449.9,43.6,,,-128,,,,,
MSG,8,0,20,A9739C,120,2012/06/13,05:31:25.617,2012/06/13,05:31:25.617,,,,,,,,,,,,
MSG,3,0,14,A5465D,114,2012/06/13,05:31:25.918,2012/06/13,05:31:25.918,,29000,,,39.94080,-83.73529,,,,0,0,0
MSG,8,0,20,A9739C,120,2012/06/13,05:31:26.119,2012/06/13,05:31:26.119,,,,,,,,,,,,
MSG,4,0,14,A5465D,114,2012/06/13,05:31:26.320,2012/06/13,05:31:26.320,,,449.9,43.6,,,128,,,,,
MSG,8,0,20,A9739C,120,2012/06/13,05:31:27.022,2012/06/13,05:31:27.022,,,,,,,,,,,,
MSG,8,0,20,A9739C,120,2012/06/13,05:31:27.524,2012/06/13,05:31:27.524,,,,,,,,,,,,
MSG,3,0,14,A5465D,114,2012/06/13,05:31:28.128,2012/06/13,05:31:28.128,,29000,,,39.94391,-83.73151,,,,0,0,0
MSG,4,0,14,A5465D,114,2012/06/13,05:31:28.329,2012/06/13,05:31:28.329,,,449.9,43.6,,,128,,,,,
MSG,8,0,20,A9739C,120,2012/06/13,05:31:29.532,2012/06/13,05:31:29.532,,,,,,,,,,,,
MSG,4,0,14,A5465D,114,2012/06/13,05:31:31.437,2012/06/13,05:31:31.437,,,449.9,43.6,,,-128,,,,,
MSG,8,0,20,A9739C,120,2012/06/13,05:31:31.438,2012/06/13,05:31:31.438,,,,,,,,,,,,
MSG,8,0,20,A9739C,120,2012/06/13,05:31:33.543,2012/06/13,05:31:33.543,,,,,,,,,,,,
MSG,3,0,14,A5465D,114,2012/06/13,05:31:34.345,2012/06/13,05:31:34.345,,29000,,,39.95343,-83.71973,,,,0,0,0
MSG,4,0,14,A5465D,114,2012/06/13,05:31:35.250,2012/06/13,05:31:35.250,,,449.9,43.6,,,0,,,,,
MSG,8,0,20,A9739C,120,2012/06/13,05:31:35.652,2012/06/13,05:31:35.652,,,,,,,,,,,,
MSG,8,0,14,A5465D,114,2012/06/13,05:31:36.358,2012/06/13,05:31:36.358,,,,,,,,,,,,

As you can see from the timestamps, they are coming in at a fairly good clip.  However, PlanePlotter is not attempting to connect to the system nor is it (obviously) reporting any data.  I have gone into Options->I/O and checked Mode-S/ADS-B and picked SBS1/3 direct TCP.  I have set the IP address in the SBS-1 settings page (with and without port).  When i click 'Start', it says 'Raw data TCP/IP connected', but no TCP SYN frames show up on the network and there is no established TCP connection between the two.

On a side note, this antenna is quite amazing compared to what I can see with the stock whip:

http://www.tech-software.net/1090_ant_02.JPG

I used four 130mm radials at the bottom because I was running out of wire and didn't have an aluminum plate.  Took about 5 minutes to build on a spare SO-239. The stock whip doesn't hear anything, this is pulling in stuff from 100+ miles away easily.

On a side note, the kml output seems to be a little off, too.  The location points are fine, but the tracks show up around the equator for some reason.  The range radials do the same thing...cause a bunch of odd lines in Africa.


On Thursday, April 26, 2012 7:00:40 PM UTC-4, JayEmbee wrote:

Bob R

unread,
Jun 13, 2012, 6:12:42 AM6/13/12
to ultra-c...@googlegroups.com
For what it's worth, Virtual Radar Server is open source and can process the same SBS-1 TCP interface.  Setup and operational in < 5 mins. 

http://www.virtualradarserver.co.uk/

I think I was exaggerating with 100 miles on this antenna.  Looks like the furthest signal I've seen is on the order of 50-60 miles.  I will try to get the antenna up a bit higher to see what it does...but so far I'm pretty impressed!



On Thursday, April 26, 2012 7:00:40 PM UTC-4, JayEmbee wrote:

Dim L

unread,
Jul 1, 2012, 12:18:53 PM7/1/12
to ultra-c...@googlegroups.com
Funny history, but don't trust on the device model to guarantee the tuning range. It is a individual tuner by individual tuner matter and there is no guarantee all ExTV668 will tune 1090 MHz. The same is true for all P160 dongles, and for any E4000 based dongle.

As you should know, there is a tuner gap from about 1100 MHz to 1240 MHz. "about" is the key. Not all tuners have the same tuning range, so gap differs between tuners.

1090MHz is at the edge, so some tuners will tune it, and others don't. If you are interested in 1090 MHz I will recommend you to buy some dongles and test them to find some useable on 1090 MHz.

If a particular E4000 chip tunes 1090 MHz, no problem. If not you should try another dongle. Anyway your solution is very interesting: A small peltier module is quite cheap and can keep the tuner quite cold, forcing its VCO to tune 1090 MHz.

Just an idea :o)


which is an E4000 dongle.

Unfortunately rtl_test reports a gap starting at 1088MHz so I can't tune to 1090MHz :( Some times even tuning at 1088 is not reliable.

Somebody mentioned to remove the device hint tuner=e4000 but I am not sure how would that help.

Does anyone know of any dongle that tunes to 1090MHz?  Buying in bulk is not too attractive an idea - those dongles cost when you add shipment and at least some pointers to reliable sources would be highly appreciated.

fe8769

unread,
Jul 1, 2012, 1:57:17 PM7/1/12
to ultra-c...@googlegroups.com
hello 

I test Sdr RTL E4000 with gr-air-modes working fine  . I have never the type17 (airplane position displayed)

command line :

uhd_modes.py -d --kml=adsb.kml -a -g 60

result :

Using device #0: ezcap USB 2.0 DVB-T/DAB/FM dongle
Found Elonics E4000 tuner
Gain is 49
Rate is 4000000
Using Volk machine: sse4_2_32
>>> gr_fir_ccf: using SSE
(-8 0.0000000000) Type 0 (short A-A surveillance) from b386a018 at 34075ft
(-11 0.0000000000) Type 0 (short A-A surveillance) from b38fc06d at 33500ft (speed 300-600kt)
(-10 0.0000000000) Type 0 (short A-A surveillance) from b3f7552b at 33975ft
(-8 0.0000000000) Type 5 (short surveillance ident reply) from b386a018 with ident 7853
(-7 0.0000000000) Type 0 (short A-A surveillance) from b386a018 at 34075ft (speed 300-600kt)
(-9 0.0000000000) Type 0 (short A-A surveillance) from b3ffcaef at 38975ft
(-7 0.0000000000) Type 5 (short surveillance ident reply) from b3865168 with ident 5289
(-8 0.0000000000) Type 0 (short A-A surveillance) from b386a018 at 34075ft
(-7 0.0000000000) Type 0 (short A-A surveillance) from b386a018 at 34075ft
(-7 0.0000000000) Type 0 (short A-A surveillance) from b3865168 at 7625ft (speed 300-600kt)

what could be the right syntax to have type 17 displayed

thanks

Jasper Ragworth

unread,
Jul 1, 2012, 4:33:06 PM7/1/12
to ultra-c...@googlegroups.com
On Sunday, July 1, 2012 5:18:53 PM UTC+1, Dim L wrote:
some pointers to reliable sources would be highly appreciated.

 http://shop.sysmocom.de/products/tv28t-bulk

I should have thought that if any retailer were to be sympathetic to your enquiries as to the suitability of a TV dongle to ADS-B, then it would be them.

Dim L

unread,
Jul 2, 2012, 7:43:34 AM7/2/12
to ultra-c...@googlegroups.com
Thanks for the pointer. I shall make inquiries.

In the mean time I realized that whether my dongle can lock the PLL@1090MHz depends on it's temperature!

When I plug it in first thing in the morning it can lock to the ADS-B frequency. After a bit of use it can only lock <=1088 and the hotter it gets the lower the frequency it can lock into.

Perhaps the miniature size of my dongle has something to do with it. I will post further findings once I have another TV dongle in my hands.
Reply all
Reply to author
Forward
0 new messages