Skip to content

Conversation

@pkendall64
Copy link
Collaborator

By splitting the RC data send and the polling/queued data sending this allows us to limit the packet rate independently of all the other packet data that needs to be sent in a timely manner.
This is particularly useful for the MavLINK serial receiver code where we want to limit the number of RC packets to 250Hz but keep the OTA packet rate at say 1000Hz. This PR does NOT do this, it just enables it by the separation of the code paths.

To limit the RC rate we just need to return an interval from the sendRCFrame function in the serial handler rather than the current DURATION_IMMEDIATELY.

This PR also includes rate limiter on the RC data packets for MavLINK to 100Hz so as not to swamp the link.

@pkendall64 pkendall64 added pick Pick to maintenance branch V3.5 🍩 labels Sep 23, 2024
Copy link
Member

@JyeSmith JyeSmith left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Limiting the RC packet rate into the FC greatly improves FTP performance, along with read/write of missions 💪

@wvarty wvarty merged commit 07d2aa1 into ExpressLRS:3.x.x-maintenance Sep 23, 2024
@pkendall64 pkendall64 deleted the backport-RC-data-send branch September 28, 2024 21:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pick Pick to maintenance branch V3.5 🍩

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants