Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fmu-v6x: Increase Mavlink UART buffers #21660

Merged
merged 1 commit into from Jun 1, 2023

Conversation

niklaut
Copy link
Contributor

@niklaut niklaut commented May 31, 2023

Solved Problem

Our serial_test showed only ~85kB/s with the default 256 RX buffer size with significant ~2.5ms periods of the flow control RTS pin being asserted. Increasing size to 600 (same as FMU-v5x) brings the throughput only to ~190kB/s, while a size of >1500 achieves ~350kB/s. Larger RX buffers do not increase throughput anymore, while the theoretical maximum is 375kB/s.

Before: ~85kB/s RX throughput

After: ~350kB/s RX throughput

Transmit buffer size is increased to 10kB same as on FMUv5x to prevent any future differences in queue behavior and throughput. serial_test showed ~350kB/s throughput at 3kB TX buffer size, so this is just a precaution.

Changelog Entry

For release notes:

v6x: Increase TELEM2 RX buffer size to increase throughput.

Test coverage

Verified by logic analyzer and serial_test.

Our serial_test showed only ~84kB/s with the default 256 RX buffer size
with significant ~2.5ms periods of the flow control RTS pin being
asserted. Increasing size to 600 (same as FMU-v5x) brings the throughput
only to ~190kB/s, while a size of >1500 achieves ~350kB/s. Larger RX
buffers do not increase throughput anymore, while the theoretical
maximum is 375kB/s.

Transmit buffer size is increased to 10kB same as on FMUv5x to prevent
any future differences in queue behavior and throughput. serial_test
showed ~350kB/s throughput at 3kB TX buffer size, so this is just a
precaution.
@bkueng bkueng merged commit ebe152f into PX4:main Jun 1, 2023
2 of 84 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants