Airspy ADS-B decoder

700 MB of data enough?

I can record 700 MB multiple times if you can concatenate the files?

I don’t get messages about lost samples in sudo journalctl -f -u airspy_adsb
Rates of 1100 are uncommon for me.
Here’s another screen shot 2 minutes apart.
20:

24:

Just one file is enough. It compresses very well.

You mean you had less before?

No i mean i can’t really record more than 700 MB on my pi because i need to write it to a ramdisk.
Anyway i’ll compress the sample.

You have 7zip?

It shoul be fine. Yes 7zip is OK.

Typical days I don’t touch 1100 messages per second. The first screen shot may not be fully representative (and I apologize for bad luck). Hope that makes sense
If you want I can run at 24, sans a synced MLAT, and watch the rates for a bit

1 Like

That’s fine. Thanks. I will push more updates here.

Slight drop in CPU usage, slightly more decodes and no complaints in the logs.
RPi4, Airspy Mini@20MHz.

Found that I ran the second newest version, downloaded the latest and I also see an increase in CPU usage (about 5%). And some more decodes as well compared to the second newest version.

Are the extra messages worth the extra % CPU?
That’s the question.

That probably depends on the hardware, As long as it has enough CPU to run it, most people will tend to take the message increase happily. Maybe the Pi3B+ are on the limit, if you have one of those you might prefer efficiency gains to more power.

For me, running nothing else on the RPi4, it probably will. But my site differs a bit since it located in a more rural place and I seldom get more than 700 msg/sec and 60 aircrafts at the same time. I have proper cooling and plenty of CPU to spare (I use about 15-20% of the CPUs, airspy_adsb counts for 45% of that usage, 40% before the latest version of airspy_adsb).
I will get some more traffic tomorrow, then I can compare with the previous mondays (I have detailed data going 3-4 months back) to see how big difference there really is.

OK. After many iterations with @wiedehopf I think version 1.40 is ready.
Thanks @wiedehopf for all the code and the testing!
Please update and let me know how this new version behaves.

2 Likes

It runs fine.

On the Odroid N2, the MLAT sync does not work at 24 MSPS (@wiedehopf may be right that there is an issue with the N2 USB.)
It seems that it identifies devices as USB 2 even if they are USB 3. The port is USB 3. That could well be the issue

The 24MHz MLAT worked fine in @wiedehopf’s i5 laptop. A good USB controller is required.

I think I’ll get into this club of x86 Linux with one of my older laptops that I have laying around. Just need to find an older HDD around, I don’t have extra SSD’s and I won’t boot from USB…

If you want to experiment with linux on the command line on x86, you can always install the linux for windows subsystem and install one of the distros that way. It’s not as fast as running Linux natively but it’s easier than dual booting. Instructions for installing it here. It probably won’t be useful for doing SDR stuff directly though because of the way it talks to hardware.

An upcoming version of windows will actually have a proper linux kernel in the linux for windows subsystem that should improve performance and flexibility quite a bit. I’ve done most of the work for the heatmap and timelapse scripts on it, since it’s much faster to run things than on a pi.

2 Likes

ModeSDeco2 has lot of settings for AirSpy

abcd@abcd-PC:/usr/share/md2$ ./modesdeco2 --help
ModeSDeco2 v.20180729
Program options:
... ... ...
... ... ...
  --airspy                  Select AirSpy device
  --airspy-sn arg           Select AirSpy device by serial number
  --airspy-lna arg          Set LNA gain in AirSpy Receiver chip (default: 15)
  --airspy-mixer arg        Set Mixer gain in AirSpy Receiver chip (default: 
                            15)
  --airspy-sr arg           Set AirSpy sample rate (default: max available)
                             Example: 4, 6, 10
  --airspy-rfbias           Enable AirSpy RF Bias (default: off)
  --airspy-if arg           Set IF gain in AirSpy Receiver chip (default: 13)
  --airspy-workers arg      Set Airspy decoding worker threads (default: 1)
  --airspy-decimation arg   Set Airspy decoding decimation factor (default: 1)
  --airspy-fecbits arg      Forward Error Correction (FEC) bits (0..2) 
                            (default: 1)
  --airspy-linearity arg    Select Airspy linearity gains (0..21)
  --airspy-crc-valid        Select only CRC valid frames (default: off)
  --disable-correction      Disable correction of corrupted signals (Default: on)
... ... ...
  --avrmlatas arg           Enable AVR MLAT AirSpy output listen port (default:
1 Like

CPU usage is down again.

image