-
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 delete MavlinkOrbSubscription and uORB delete unused orb_stat and last update timestamp #14051
Conversation
0232cce
to
9dd40e6
Compare
9dd40e6
to
480caa6
Compare
0c9d718
to
039a7db
Compare
039a7db
to
ba32551
Compare
I'd like to bring this in after #14106 settles so that we don't have to deal with the mavlink orb subscriptions that require the special "subscribe from beginning" flag. |
ba32551
to
4cd032a
Compare
4cd032a
to
d7bb198
Compare
d7bb198
to
98e36dd
Compare
#14106 has merged and I've rebased this PR on current master. |
98e36dd
to
6172ed0
Compare
d7327c6
to
6ec7565
Compare
Tested on NXP FMUK66 v3Indoor test flight.
Procedure
Note
Log Tested on NXP FMUK66 v3Indoor test flight.
Procedure
Note
Log |
Tested on PixRacer V4Indoor Flight Test Procedure Notes Log https://review.px4.io/plot_app?log=d95b3692-baa7-44e3-b280-664bd4588415 Tested on CUAV nano V5Indoor Flight Test Procedure Notes Log https://review.px4.io/plot_app?log=97d9125c-a7ef-4691-ad0b-8101be666576 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So much nicer! Online one question, other than that it looks correct.
|
||
} else { | ||
return _odom_sub.advertised() ? MAVLINK_MSG_ID_ODOMETRY_LEN + MAVLINK_NUM_NON_PAYLOAD_BYTES : 0; | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice catch!
{} | ||
|
||
bool send(const hrt_abstime t) override | ||
{ | ||
position_controller_status_s pos_ctrl_status = {}; | ||
tecs_status_s tecs_status = {}; | ||
if (_pos_ctrl_status_sub.updated()) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I suppose this change of functionality is intended? It is now only triggered on pos_ctrl_status
updated and not on tecs_status
anymore.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, the MC position controller publishes a (partially populated) position_controller_status
now.
b6bf8ef
to
27bc5f0
Compare
Note for later, streams set to 0.5 Hz seem to jump between 0.2 Hz and 0.8 Hz (both master and the PR). |
This isn't ready yet, but opening it now because it needs quite a lot of review.This pull request replaces the mavlink module's orb subscription wrapper with direct usage of uORB::Subscriptions per mavlink stream.
On fmu-v4 (3 mavlink instances) this saves ~ 7.8 kB of ram and ~ 2.7% cpu.