-
Notifications
You must be signed in to change notification settings - Fork 16.8k
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
ArduPilot doesn't respect Mavlink version of port when sending MAV_CMD_DO_DIGICAM_CONTROL. #12567
Comments
Thanks very much for this detailed report. I've discussed with @peterbarker who is more an expert in this area and I hope we can get to the bottom of it in the near future. |
I will say that I haven't tried in simulator on ArduCopter 3.6, but on the drone at least ArduCopter 3.6 does behave correctly. |
Peter Barker has created a fix for this issue here: #12576 I plan to test this fix this week. |
@pklapperich, do you think you could re-test with this patch? If it makes it easier I can produce a binary for you especially if you tell me what type of flight controller you are using. |
Sorry for the delay, yes I can test later today. I'm using software in the loop. |
With the physical camera attached to ArduCopter SITL via a USB serial adapter to uartE things appear to be working fine now (rev 871305b4f). I tested both clicking the "Trigger Camera" button in the ground station as well as flying a mission that included But then I changed the When I changed the |
@pklapperich We still start off by sending mavlink1 on a mavlink2 channel - if mavlink2 signing is disabled. If we receive a mavlink2 packet we start to send mavlink2. So I think that's all good. |
Bug report
Issue details
When running ArduCopter in simulator with a real serial port attached to the vehicle so I can test a camera on serial4/uartE I noticed that that
MAV_CMD_DO_DIGICAM_CONTROL
when sent from either clicking "Trigger Camera" within the GCS or if the autopilot generates this messages due to flying a mission containingMAV_CMD_DO_SET_CAM_TRIGG_DIST
the messages are sent via Mavlink2 even though the port is set to Mavlink1 and the camera is sending heartbeats as a Gimbal via Mavlink1, theCOMMAND_LONG
.For testing I'm using a Sentera Double 4k.
Steps to reproduce
HEARTBEAT {type : 26, autopilot : 0, base_mode : 0, custom_mode : 0, system_status : 0, mavlink_version : 0}; delim: 0xFE
MAV_CMD_DO_SET_CAM_TRIGG_DIST
. Watching the commands sent to the camera and observe theCOMMAND_LONG
are sent using a Mavlink2 delimiter while theCAMERA_FEEDBACK
and other messages are sent using Mavlink1Version
Tested with ardupilot rev 05d1046
Platform
only tested on copter so far.
Airframe type
quad
Hardware type
SITL
Logs
See steps to reproduce above.
The text was updated successfully, but these errors were encountered: