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

Support sending raw IMU data to a UART #13961

Merged
merged 5 commits into from
Nov 29, 2023
Merged

Conversation

tridge
Copy link
Contributor

@tridge tridge commented Apr 1, 2020

This allows unfiltered IMU data to be sent at the main loop rate to a UART. This is for supporting external visual odomotry systems that need to augment image data with the autopilots IMU data

was used for this ANU research project: https://github.com/STR-ANU/eqf_vio

@peterbarker
Copy link
Contributor

This looks like cooked data?

@tridge
Copy link
Contributor Author

tridge commented Apr 1, 2020

This looks like cooked data?

It is loop rate data, not filtered, same data the EKF gets, which is exactly what we want, as we're running an external state estimator

@peterbarker
Copy link
Contributor

@tridge my point is that we use the word "raw" to mean something different in the IMU code. Perhaps Support sending loop-rate IMU data...

@tridge tridge force-pushed the pr-imu-uart branch 2 times, most recently from 63d2fb1 to 7638feb Compare April 4, 2020 04:24
@peterbarker peterbarker added the WikiNeeded needs wiki update label Jul 31, 2020
@peterbarker
Copy link
Contributor

My "raw" vs "cooked" thing has been addressed.

Needs a rebase, 'though. Almost certainly the serial protocol number's been used.

@@ -482,6 +483,16 @@ void AP_SerialManager::init()
state[i].uart->set_flow_control(AP_HAL::UARTDriver::FLOW_CONTROL_DISABLE);
break;

case SerialProtocol_IMUOUT:
#if !HAL_MINIMIZE_FEATURES && !defined(HAL_BUILD_AP_PERIPH)
Copy link
Contributor

Choose a reason for hiding this comment

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

Why is this !defined(HAL_BUILD_AP_PERIPH)?

@tridge tridge force-pushed the pr-imu-uart branch 2 times, most recently from 55b2cb2 to 4bb13e4 Compare November 28, 2023 03:43
@tridge
Copy link
Contributor Author

tridge commented Nov 28, 2023

rebased

@tridge
Copy link
Contributor Author

tridge commented Nov 29, 2023

@peterbarker it is unfiltered

# Conflicts:
#	libraries/AP_SerialManager/AP_SerialManager.cpp
#	libraries/AP_SerialManager/AP_SerialManager.h
this is for supporting external visual odomotry systems which need the
IMU data to correctly process image data

# Conflicts:
#	libraries/AP_InertialSensor/AP_InertialSensor.cpp
@tridge tridge merged commit 11d0e36 into ArduPilot:master Nov 29, 2023
87 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants