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

sensors split rc_update into new standalone module #13241

Merged
merged 3 commits into from
Nov 24, 2019
Merged

sensors split rc_update into new standalone module #13241

merged 3 commits into from
Nov 24, 2019

Conversation

dagar
Copy link
Member

@dagar dagar commented Oct 21, 2019

This PR splits the rc update handling (rc_update) out of the sensors module monolith, similar to #13073 and #12601.

In isolation this change isn't that interesting, although it likely removes a bit of latency in RC updates and has some potential side benefits for truly RC-less systems. The larger goal is to reduce the sensors module complexity and get to the point where it's not a bottleneck for running multiple estimators. By splitting these logical pieces into separate modules they become a bit easier to manage and refactor.

A follow up PR could update this new module to properly use module parameters.

dakejahl
dakejahl previously approved these changes Oct 30, 2019
Copy link
Contributor

@dakejahl dakejahl left a comment

Choose a reason for hiding this comment

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

Looks good to me

@dagar dagar changed the title [WIP]: sensors split rc_update into new standalone module sensors split rc_update into new standalone module Nov 20, 2019
@dagar dagar marked this pull request as ready for review November 20, 2019 18:29
@dagar
Copy link
Member Author

dagar commented Nov 20, 2019

The new module could probably use a better name. Any suggestions?

@dagar dagar requested review from bkueng and a team November 20, 2019 18:29
@mcsauder
Copy link
Contributor

The new module could probably use a better name. Any suggestions?

### Description
The rc_update module handles RC channel mapping: read the raw input channels (`input_rc`),
then apply the calibration, map the RC channels to the configured channels & mode switches,
low-pass filter, and then publish as `rc_channels` and `manual_control_setpoint`.

Here are a few thoughts to throw at the wall, nothing I am completely in love with either though: RCSignalMapper, RCSignalHandler, RCInputHandler, RCHandler

@jorge789
Copy link

jorge789 commented Nov 23, 2019

Tested on PixRacer V4:
Modes Tested

Position Mode: Good.
Altitude Mode: Good.
Stabilized Mode: Good.
Mission Plan Mode (Automated): Good.
RTL: Good.

- Procedure
Arm and Takeoff in position mode, after flying for approximately one minute, switched to altitude then stabilized mode proceed to switch to mission plan mode then make sure that vehicle follows all waypoints as shown in QGC, once completed all waypoint activate RTL vehicle landed smooth and disarmed.

Notes:
No issues noted good flight in general.

Log: https://review.px4.io/plot_app?log=b0dfe561-655a-4c14-8471-8fb52849151c

@Junkim3DR
Copy link

Junkim3DR commented Nov 23, 2019

Tested on NXP FMUK66 v3

Modes Tested
Position Mode: Good.
Altitude Mode: Good.
Stabilized Mode: Good.
Mission Plan Mode (Automated): Good.
RTL: Good.

Procedure
Arm and Takeoff in position mode, after flying for approximately one minute, switched to altitude then stabilized mode proceed to switch to mission plan mode then make sure that vehicle follows all waypoints as shown in QGC, once completed all waypoint activate RTL vehicle landed smooth and disarmed.

Notes:
No issues noted good flight in general.

Log: https://review.px4.io/plot_app?log=cd0c9fda-cd66-47c7-97ad-a93e19fbecee

Tested on Pixhawk Pro v4

Modes Tested
Position Mode: Good.
Altitude Mode: Good.
Stabilized Mode: Good.
Mission Plan Mode (Automated): Good.
RTL: Good.

Procedure
Arm and Takeoff in position mode, after flying for approximately one minute, switched to altitude then stabilized mode proceed to switch to mission plan mode then make sure that vehicle follows all waypoints as shown in QGC, once completed all waypoint activate RTL vehicle landed smooth and disarmed.

Notes:
No issues noted good flight in general.

Log: https://review.px4.io/plot_app?log=c100d678-ee95-4aa3-8897-9fa0e559f0d0

@Tony3dr
Copy link

Tony3dr commented Nov 24, 2019

Tested on Pixhawk 4 V5

Modes Tested
Position Mode: Good.
Altitude Mode: Good.
Stabilized Mode: Good.
Mission Plan Mode (Automated): Good.
RTL: Good.

Procedure
Arm and Takeoff in position mode, after flying for approximately one minute, switched to altitude then stabilized mode proceed to switch to mission plan mode then make sure that vehicle follows all waypoints as shown in QGC, once completed all waypoint activate RTL vehicle landed smooth and vehicle disarmed.

Notes:
No issues noted good flight in general.

Log: https://review.px4.io/plot_app?log=4621e90d-6903-46e2-8def-ba8f8d3f06c0&fbclid=IwAR2iF5xcbaaPBK0TnLx42SnC-9EWpwZblnTHSNKJgXm9nf4q36xXL-WsbHI

@dagar
Copy link
Member Author

dagar commented Nov 24, 2019

Thanks for the review and testing. This will be easy to rename and refactor as a standalone module.

@dagar dagar merged commit bc182e9 into master Nov 24, 2019
@dagar dagar deleted the pr-rc_update branch November 24, 2019 18:25
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.

6 participants