Skip to content

[TEST] CI run for ExpressLRS/Backpack#245 - #1

Closed
Raffi1202 wants to merge 1 commit into
masterfrom
tx-crsf-telemetry-broadcast
Closed

Raffi1202 wants to merge 1 commit into
masterfrom
tx-crsf-telemetry-broadcast

Conversation

@Raffi1202

Copy link
Copy Markdown
Owner

Fork-internal test PR to run the CI workflows for the upstream pull request ExpressLRS#245. Not for merging.

The TX backpack sends every CRSF telemetry frame as a unicast to its own UID
address and expects an 802.11 ACK from a peer carrying that MAC (a bound VRX
backpack). If no such peer is present (VRX switched off, telemetry consumed
by a passive listener such as a ground station) or the peer is out of range,
the WiFi stack retransmits every frame several times. While those retries
run, esp_now_send() fails for the frames arriving from the TX module, and the
return value is not checked, so most of the stream is dropped silently: with
an iNav flight controller at 500 Hz only about a third of the GPS frames
reached a listener, even at 1 m. The retries also occupy 2.4 GHz right next
to the ELRS TX module for nothing.

Register a send callback and count unacknowledged unicasts to the UID
address. After 8 failures in a row, telemetry frames are sent as broadcast,
which goes out exactly once without ACK or retry. Every 128 frames one
unicast is tried, so a peer coming back in range switches delivery back to
unicast. Bound VRX backpacks that acknowledge see no change at all; they
filter on the sender MAC, so they also receive the broadcast frames. All
other MSP traffic stays unicast.
@Raffi1202 Raffi1202 closed this Sep 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant