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

MAV_CMD_DO_MOUNT_CONTROL not changing yaw #6272

Closed
Pedals2Paddles opened this issue May 18, 2017 · 4 comments · Fixed by #7446
Closed

MAV_CMD_DO_MOUNT_CONTROL not changing yaw #6272

Pedals2Paddles opened this issue May 18, 2017 · 4 comments · Fixed by #7446

Comments

@Pedals2Paddles
Copy link
Contributor

Issue details

The solo is sends mavlink mount control commands to ArduPilot. This is how it controls copter yaw and gimbal pitch in many of the smart shots. The companion computer interpolates gimbal pitch angles and copter yaw angles, then uses mavlink to command said movements. This all worked fine on the old ArduPilot Solo firmware from the 3.2/3.3 days. However on master the copter yaw response is no longer working. The gimbal pitch still responds, but not the copter yaw. So we know the message/command is going through. Just copter yaw is not responding.

So this tells me at least from that last point onward at set_angle_targets, it works fine. So something is not working properly in the Mavlink commands, or the code processing those mavlink commands which lead up to it. The result is again copter yaw not responding. I don't see anything glaringly obvious, but I only know enough C++ and mavlink to break it.

Version

3.5 / 3.6dev

Platform

[ ] All
[ ] AntennaTracker
[X] Copter
[ ] Plane
[ ] Rover

Airframe type

Solo, but likely any vehicle using mavlink mount control

Hardware type

Cube 2.1

Logs

Dataflash log attached.
Solo Mount Control.zip

@Pedals2Paddles
Copy link
Contributor Author

@tridge @rmackay9 this is what I talking about on the dev call. I did some further testing as you suggested to get to this point.

@rmackay9
Copy link
Contributor

rmackay9 commented May 18, 2017

Ok, this sounds to me like Copter thinks the Solo gimbal supports yaw so it thinks the main vehicle doesn't need to yaw.

EDIT: but the code that turns on/off this behavior seems ok. https://github.com/ArduPilot/ardupilot/blob/master/libraries/AP_Mount/AP_Mount_SoloGimbal.cpp#L88

@Pedals2Paddles
Copy link
Contributor Author

That would be way too easy for my luck!

@Pedals2Paddles
Copy link
Contributor Author

I put a condition_yaw command immediately following mav_cmd_do_mount_control, which is a working workaround now. The condition_yaw command is working properly. This doesn't appear to degrade the vehicle's performance. But it is a somewhat ugly workaround. It does however confirm the problem is not how the solo is calculating its yaw.

This leads me to believe there is a problem in how ArduPilot is handling the mount_control message and command.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Solo on Master
  
Completed Issues
Development

Successfully merging a pull request may close this issue.

2 participants