fix(image-feed): open 30187 listener for mlat-client feedback#105
Merged
Conversation
Image-mode feeder had FEED_NET_OPTIONS defaulting to --net-ro-interval 0.2 only, with no Beast-input listener. mlat-client wrote --results beast,connect,127.0.0.1:30187 against a closed socket, so MLAT contribution never reached the aggregator. Default now also opens --net-bi-port 30187 bound to --net-bind-address 127.0.0.1 (loopback-only, matching the decoder side).
Without --forward-mlat, readsb accepts mlat-client's Beast results on the new listener but drops them on the floor instead of relaying through the upstream beast_reduce_plus_out connector (net_io.c gates Beast output on (!is_mlat || forward_mlat), default off). Add the flag to both the image and non-image NET_OPTIONS defaults so MLAT contribution actually reaches the aggregator.
d4rken
added a commit
that referenced
this pull request
May 19, 2026
* revert(mlat): drop 30187 RESULTS4 + outbound 30187 listener The 30187 Beast feedback path through airplanes-feed has never delivered MLAT to the public globe. Aether-ingest has no --forward-mlat, so MLAT frames arriving from feeders on 30004 don't propagate via beast_reduce_out (30006) to aether-api, which is what backs the globe. MLAT contribution flows exclusively via mlat-client's own --server connection to MLATSERVER (port 31090) into mlat-server; the upstream Beast feed from this binary is ADS-B only. Drop --net-bi-port 30187 from both image and non-image NET_OPTIONS defaults, drop --forward-mlat (added in #105), and drop the RESULTS4 default endpoint. * test(mlat): tighten 30187 absence + pin operator RESULTS4 retention The default-bundle absence test now greps for bare '30187' rather than the host-qualified form. Adds a retention test for the operator-explicit RESULTS4=...30187 case so a future contributor can't 'tidy' the default-block guard.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
On image installs, mlat-client writes Beast-format MLAT results to
127.0.0.1:30187so the outbound feeder can forward them to the aggregator. The image-modeFEED_NET_OPTIONSdefault opened no listener, so the connection refused and MLAT contribution never reached the server. The default now adds--net-bi-port 30187bound to127.0.0.1(loopback only, matching the decoder side). Non-image installs were already fine via their combinedNET_OPTIONS; their path is unchanged.