-
Notifications
You must be signed in to change notification settings - Fork 13.7k
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
MAVLink: Improve message handling / tracking #7671
Conversation
Something isn't right here. I tested with a VIO/camera trigger setup, and this branch kills the |
A quick inspection did not reveal why this should not work (there are relevant changes in those code sections of course). |
34da0d8
to
474f095
Compare
The message handling was not obeying action focused messages and high-rate messages properly before. With this change update rates track the desired rates closely. Critical high-rate messages such as ADS-B are queued additionally to guarantee that all received packets are being correctly forwarded.
474f095
to
a1a45bf
Compare
@mhkabir Found and fixed - could you re-test? Planned rates:
|
Difference:
Much better compared to previously, following up on the servo output right now. |
Checking this in a minute, thanks 👍 |
This is no longer required as we have a full shell available now and there is no reason to let the remote terminate the instance.
System load before last set of commits:
|
What rate (-r param) did you start the link at? Try increasing that one. Overall you're trying to send more than the link is configured for, so dropped messages are non-surprising. |
It is at standard companion rate (80K): https://github.com/PX4/Firmware/blob/master/ROMFS/px4fmu_common/init.d/rcS#L694 |
Assuming you have that on Telem2: Increase the TX buffer size in nuttx-configs/px4fmu-v3_default/nsh/defconfig: Change CONFIG_USART3_TXBUFSIZE=300 to CONFIG_USART3_TXBUFSIZE=1100 And please re-test. |
Already did increase buffers. Testing now. |
Hang on. I increased them for USART2. My bad. Is TELEM2 actually USART3 ? I will be able test to this again in a few hours time. Gotta run now. |
Telem 2 is USART3, yes. And USART2 already had large buffers. |
We should fix the outdated hardware docs then (good time to move it to the Devguide maybe?) : https://pixhawk.org/users/wiring Then page indicates that ttyS2 is USART2. |
That was wrong all along it seems. I've fixed that page. |
… plenty of RAM, all UARTs are treated equally
The message handling was not obeying action focused messages and high-rate messages properly before. With this change update rates track the desired rates closely. Critical high-rate messages such as ADS-B are queued additionally to guarantee that all received packets are being correctly forwarded.