You can monitor that many but when I checked my spectrum in SDR Sharp there was only 4 active frequencies in Texas or to say within my location. I use both AD2 and DUMPVDL2 on a separate pi3B+
Ok, installed acarsdec on RPi that @dvsvejk linked to. Tried it with the four frequencies I listed earlier and seems to work fine – just looking at it on the command line.
Apparently there is a further decoding avalable from a library called libacars – not sure if that goes on RPi or not.
Looking around on the inter webs it seems like messages on ACARS are pretty much free form – i.e. no “standard” was defined by ARINC, so could be lots of different types of messages depending on airline, etc.
What 4 frequencies do you see ACARS on ?
–freq 131875000
–freq 131725000
–freq 131550000
–freq 131125000
–freq 131425000
Thanks – haven’t noticed ACARS on some of those frequencies here (Southern CA) but should probably try those too.
Edit to add:
The latest -d command for acarsdec -d shows the following:
pi@raspberrypi:~ $ acarsdec -d
Acarsdec/acarsserv 3.7 Copyright (c) 2022 Thierry Leconte
Usage: acarsdec [-o lv] [-t time] [-A] [-b 'labels,..'] [-e] [-i station_id] [-n|-j|-N ipaddr:port] [-l logfile [-H|-D]] [-g gain] [-p ppm] -r rtldevicenumber f1 [f2] ... [fN]
-i stationid : station id used in acarsdec network format.
-A : don't output uplink messages (ie : only aircraft messages)
-e : don't output empty messages (ie : _d,Q0, etc ...)
-b filter : filter output by label (ex: -b "H1:Q0" : only output messages with label H1 or Q0)
-o lv : output format : 0 : no log, 1 : one line by msg, 2 : full (default) , 3 : monitor , 4 : msg JSON, 5 : route JSON
-t time : set forget time (TTL) in seconds for monitor mode (default=600s)
-l logfile : append log messages to logfile (Default : stdout).
-H : rotate log file once every hour
-D : rotate log file once every day
-n ipaddr:port : send acars messages to addr:port on UDP in planeplotter compatible format
-N ipaddr:port : send acars messages to addr:port on UDP in acarsdec native format
-j ipaddr:port : send acars messages to addr:port on UDP in acarsdec json format
-g gain : set rtl gain in db (0 to 49.6; >52 and -10 will result in AGC; default is AGC)
-p ppm : set rtl ppm frequency correction
-m rtlMult : set rtl sample rate multiplier: 160 for 2 MS/s or 192 for 2.4 MS/s (default: 160)
-r rtldevice f1 [f2]...[f16] : decode from rtl dongle number or S/N rtldevice receiving at VHF frequencies f1 and optionally f2 to f16 in Mhz (ie : -r 0 131.525 131.725 131.825 )
Up to 16 channels may be simultaneously decoded
So now apparently up to 16 frequencies can be specified. Course they can still only span up to 2MHz.
While listed as optional, adding libacars is a nice to have. After installing, you will need to re-compile acarsdec.
Yeah, I was wondering about that. Can I just compile acarsdec again and install again without uninstalling anything?
After installing libacars navigate to the build directory for acarsdec and re-run the compile commands - you should see a message where it detects libacars when running cmake.
cmake .. -Drtl=ON
make
sudo make install
Ok, installed libacars. Now get messages like:
[#1 (F:130.025 L:-22.5 E:0) 08/05/2023 16:55:39.067 --------------------------------
Mode : 2 Label : H1 Id : 8 Nak
Aircraft reg: N586NW Flight id: NW0725
No: D65B
Sublabel: DF
Reassembly: complete
*WXRN32469W1155281650200-16323903600
N32466W1155801651186-13524003900
N32461W1160361652171-09824103000
N32457W1160911653155-06525002300
N32453W1161461654141-03025002000
N32449W1162021655126-01525002000
Looks like weather and waypoints.
Need to do some reading on what this all means.
Very little on acars here. More on vdl2
But what was, was engineering updates - long strings of garbage. Weather/atis updates
And Jetstar use to send last 5 positions when going past waypoints/periodically - Presumably for the ground time arrival calcs etc
Every so often wheelchair requests or rugby scores for crew airborne
What vdl2 decoder do you use? Also what frequencies do you see vdl2 messages on. Tnx.
You likely already have all the required dependencies installed on your Pi running acarsdec, so it would simply be a matter of cloning the repository and compiling dumpvdl2.
Ok, thanks. And I see the default frequency is 136.975 MHz. I’ll try that.
By the way, I serialized the dongles for dump1090 and acars, however, when dump1090-fa starts up, it picks the wrong dongle. I do have the serial number of the 1090 dongle in the file /etc/default/dump1090-fa
. But It looks like dump1090-fa picks the dongle based on ID number i.e. ID=0 rather than on serial number. Do other people have this problem?
dumpvdl2 --rtlsdr 1 --gain 48 --correction 0 136650000 136975000 136800000 136700000
Wow, more activity on vdl2 than on Plain Old Acars. I was concerned I might not see as much because the data rate is about 11 dB higher on vdl2 therefore requiring at least that much more signal.
Sorry about my reply above. That is the basic command line for the DUMPVDL2 decoder I have. On my PC I have SDR# installed with a NooElec SMART rtlsdr and what I did was tune to 135.500 mhz and watch the waterfall activity and noted which frequencies were in use in my area. Then added them to my decoder command.
What do you use for an antenna ?
A cheap amazon dual band outdoor ham radio antenna. The only good antennas I do use for is ADSB and my 2 meter /70cm operation when I want to talk.
Ok as I mentioned earlier I just have a 1/2 wave dipole now mounted in a closet upstairs. I am amazed at how much traffic I can see with that and just the dongle (mainly on 136.65 MHz).
I wonder if this could be integrated with the SkyAware map to show aircraft that are currently transmitting vdl2 messages. However, I know FlightAware people ( e.g. obj) are adverse to doing things like that because of security reasons.
Jim,
dump1090-fa can handle either the device number, or the serial number. Either way, the command option is called “device” which is what you might have noticed.
From the dump1090-fa --help
pi@raspberrypi:~ $ dump1090-fa --help
| dump1090 ModeS Receiver dump1090-fa 8.2 |
build options: ENABLE_RTLSDR ENABLE_BLADERF ENABLE_HACKRF ENABLE_LIMESDR |
---|
–device-type Select SDR type (default: rtlsdr) |
rtlsdr-specific options (use with --device-type rtlsdr)
–device <index|serial> select device by index or serial number
–device 0, 1, 2, … would be device number
–device xxxxxx would be serial number, which is always more reliable.
Some programs use different --labels for device and serial. FA uses the same for both. Just avoid serial numbers that could look like device numbers when programming.
-Dan