Yes, it does, but if adaptive is set to “yes”, the gain start changing from 58.6 (tuner AGC) to a lower value. Pease see below quote of relevant lines from my post above. This is log of dump1090 where I have activated both adaptive gain and adaptive burst control
Flightaware 1090 Antenna → Flightaware 1090 Filter → Flightaware ProStick Plus (Blue) → OrangePiPC + 32-bit Armbian Bookworm → dump1090-fa ver 9.0
The problem with really close traffic is, that it has an enormous dynamic range. A transmitter that is 100 meters away is 20 dB stronger than one that is 1 km away. Additionally there are differences between different transponders. And geometry plays a role, a wing can shadow the signal, causing 30 dB attenuation, quickly exceeding the dynamic range of a RTLSDR with static gain.
It’s not easy to cover short distances.
@VirusPilot
Currently I’m using:
adaptive-burst-loud-runlength 1
adaptive-burst-alpha 1
Additionally I have modified dump1090.c to change the gain in two gain steps instead of one. One gain step is just too little:
452c452
< if (adaptive_set_gain(sdrGetGain() + 2, why))
---
> if (adaptive_set_gain(sdrGetGain() + 1, why))
458c458
< if (adaptive_set_gain(sdrGetGain() - 2, why))
---
> if (adaptive_set_gain(sdrGetGain() - 1, why))
It works reasonably well, but It would be even better if the gain could be updated like every 2 seconds, currently the minimum is something like 20 seconds. I would have to check, I haven’t looked into this for a while.
If you have the funds, another option would be to try a receiver with a wider dynamic range - something like the Airspy Mini. The airspy_adsb software also has a very effective automatic gain function - though I don’t think I’ve seen any reports of how well it works with on-airfield receivers.
With my settings below, the gain reduction is updated every second:
- adaptive_burst_change_delay = 1
- adaptive_burst_loud_runlength = 1
- adaptive_burst_quiet_runlength = 5
- adaptive_range_control = true
- adaptive_range_change_delay = 1
I have only adaptive-range and adaptive-burst set as “yes”. Rest are left blank
RECEIVER_GAIN=60
# Adjust gain to try to achieve optimal dynamic range / noise floor?
ADAPTIVE_DYNAMIC_RANGE=yes
# Target dynamic range in dB (leave blank to autoselect based on SDR type)
ADAPTIVE_DYNAMIC_RANGE_TARGET=
# Reduce gain when loud message bursts from nearby aircraft are seen?
ADAPTIVE_BURST=yes
# Gain range to allow when changing gain, in dB (empty = no limit)
ADAPTIVE_MIN_GAIN=
ADAPTIVE_MAX_GAIN=
My gain is still changing very frequently. Dont know why.
In reading the link, it says that you should not feed combined data to MLAT enabled aggregator sites (like FlightAware) . However the whole purpose for creating the combined data is to improve your stats (mainly by increasing your positions reported for nearby aircraft). So, probably don’t want to go this route. Thanks.
Jim,
You can utilize the pull script and display locally and choose to not send the data onward.
I have it setup that way and then you don’t send it to aggregators so it is truly a local display.
I set it up on both a sdr equipped setup and on a separate device that doesn’t have an sdr connected. One on bullseye the other on bookworm and it runs without problems
True. But then you won’t be improving your FlightAware stats.
However, I still might take your suggestion and do it that way.
There are two Apps on my Github MIXER site:
- mixer
- pusher
There are separate bash scripts to install each App. To display combined feed on single map, you need to install "mixer’ App only.
The “mixer” App pulls (adsb+mlat-feed-back) from individual receivers and displays combined data on a single Skyaware type map of its own. It is configured in such a way that it can NOT feed the combined data to flightware or any other agreggator site .
The feeding job is done by feeders installed by the user on individual receivers/RPis. These feeders use data only from their local dump1090-fa.
Whatever technique or App one uses to combine data, and feeds this agreggated data to Flightaware, the Flightaware servers immediately detect that it is mixture of data from different receivers, and disables MLAT.
If you are ready to sacrifice mlat for the sake of improving your stats, a simple tweak in config of piaware will make it use mixer’s aggregated beast format data available at mixer’s port 40005.
sudo piaware-config receiver-type other
sudo piaware-config receiver-port 40005
sudo piaware-config receiver-host 127.0.0.1
sudo systemctl restart piaware
Isin’t it the other way around. If you sacrifice mlat won’t your stats go down?
But it won’t be much. Typically mlat is only about 1% of ADS-B Mode-S Aircraft reported.
In this case install an App like “Mixer” or “Combine” and feed the combined data to sites such as Flightaware, Flightradar24, Radarbox24, Planefinder, etc etc.
Yesterday it became abundantly clear that my system is getting drowned out by local traffic. With the parade we had helicopters, drones, and aerial advertising, in addition to the military overflight. I had over 14,000 hits to my south-southeast within 40 miles. Probably more than that, but I didn’t check until 11:00 this morning. That’s double the usual number, while other areas are down 25% to 40%.
I’m going to try to set adaptive burst tonight and see if it improves things when we have a clear VFR day like yesterday.
Adaptive burst has really helped improve the number and location of of received positions, and my aircraft count is up about 10% since I set it. It has not helped with range, however.
I’m going to try disabling adaptive range and set a fairly high gain to try to get long-range aircraft. I’ll see if that extends my coverage.
I finally had the opportunity to test this and it indeed does update every second.
But in my case it is still too slow. When a helicopter is approaching, it works only to a distance of about 500 meters. They come in really fast. Then there is a gap of maybe 10 seconds and after that they are decoded again.
I think I’ll change the gain step in the dump1090-fa source again and then it should work really well.
As far as I know, the dump1090 needs to restart after any change in gain setting to implement the change, and this may take several seconds. If my understanding is correct, then with every change of gain, there will be a gap of several seconds in decoding.