Commit Graph

413 Commits

Author SHA1 Message Date
Andrew Tridgell b12034bbb8 AP_Mount: prevent SIYI driver crash if serial port not setup
if MNT1_TYPE=8 and no serial protocol set to gimbal then a camera
trigger can crash the vehicle
2023-08-01 16:51:27 +09:00
Randy Mackay ac28d560dd AP_SerialManager: generalise SToRM32 serial protocol desc and enum 2023-07-04 12:17:51 +09:00
Peter Barker 518fece88d AP_Mount: remove redundant constructors
just copy in the one from the parent class
2023-03-07 13:40:54 +11:00
Peter Barker 93cb56b5f2 AP_Mount: create and use AP_Mount_config.h 2023-03-06 14:03:00 +11:00
Peter Barker fb98ef21aa AP_Mount: replace check_instance with get_instance 2023-03-03 17:35:39 +11:00
Peter Barker 04e5b5096e AP_Mount: check array bounds when setting to default mode
This is a public method, so needs some checking
2023-03-02 18:07:11 +11:00
Peter Barker 8c47a3d268 AP_Mount: allow gimbals other than primary to be retracted/neutralised 2023-03-02 18:07:11 +11:00
Peter Barker 44bf0ec1a7 AP_Mount: Gremsy uses _link.send_message(id, buffer) to send set-attitude 2023-02-25 17:41:44 +11:00
Peter Barker 2e987b3b35 AP_Mount: rename local _chan to chan in Gremsy methods
based on PR feedback
2023-02-24 09:21:09 +11:00
Peter Barker 550d94f99f AP_Mount: correct double-mapping of port to channel number
set_message_interval takes a port number, not a channel number (it was originally written as an internal function, after all).  Before this patch we were double-mapping from one to the other.  That works so long as the port you are mapping also corresponds to the chanel number - which it will, for example, if you are using serial2 with both serial0 and serial1 also set to mavlink.  If you set serial5_protocol to 2 an attempt to use it for controlling a gremsy it will *not* work because we map into backwards twice.
2023-02-24 09:21:09 +11:00
Peter Barker d6b5dc206e AP_Mount: make get_attitude_euler non-virtual
If a backend ever needs to override this method then we can make it virtual, in the meantime we can save flash by re-using the quaternion getter in the frontend
2023-02-17 10:04:49 +11:00
Randy Mackay 04e8fffc53 AP_Mount: add get_camera_state method 2023-02-16 16:49:51 +09:00
Randy Mackay 0f24b079e4 AP_Mount: add scripting backend 2023-01-31 17:20:37 +09:00
Randy Mackay b8ace06077 AP_Mount: servo mount yaw handling fix 2023-01-24 10:59:10 +11:00
Randy Mackay 1a4f51d782 AP_Mount: servo driver loses unnecessary closest_limits method 2022-12-21 18:45:33 +11:00
Randy Mackay 5fa6914137 AP_Mount: siyi recording send-text demoted to INFO 2022-12-16 08:15:53 +09:00
Randy Mackay 6efa35e889 AP_Mount: Siyi fix for record ON OFF reporting 2022-12-16 08:15:53 +09:00
Randy Mackay 6bd4afeb48 AP_Mount: siyi a8 fix for gimbal-config-info message
Siyi A8 uses a different format from Z10 for this message
2022-12-16 08:15:53 +09:00
Moe Bataineh 5b9403527b AP_Mount: Align received data to AP frame for Storm32 Serial
(Note: reversed pitch and yaw) to match NED.

Update AP_Mount_SToRM32_serial.cpp
2022-12-13 09:02:43 +09:00
Randy Mackay 204d32c9a9 AP_Mount: fix siyi version display 2022-11-30 20:07:17 +11:00
Randy Mackay 345629cdad AP_Mount: fix for Siyi A8 2022-11-30 20:07:17 +11:00
Randy Mackay be922f20a2 AP_Mount: gremsy driver sends vehicle att at 50hz 2022-11-10 10:34:05 +09:00
Peter Barker aad489c8cb AP_Mount: change namespace of MultiCopter and FixedWing params
this stops the libraries knowing anything about AP_Vehicle
2022-11-09 19:04:37 +11:00
Peter Barker 4bdac4afc5 AP_Mount: include cleanups 2022-11-08 09:49:19 +11:00
jackhong12 4a4f361a17 all: use CLASS_NO_COPY() macro 2022-10-04 11:23:04 +11:00
murata b90079bfa6 AP_Mount: Enable debugging outputs and variables in debug definitions 2022-10-01 09:05:05 +09:00
Randy Mackay de3d763e36 AP_Mount: minor comment fix to has_pan_control 2022-09-30 15:17:29 +09:00
Randy Mackay 8c5463ec78 AP_Mount: add Siyi gimbal driver 2022-09-30 15:17:29 +09:00
Randy Mackay 53905c5f35 AP_Mount: add camera controls 2022-09-30 15:17:29 +09:00
Randy Mackay e9b92da241 AP_Mount: add get_attitude_euler
this allows external callers including Lua to retrieve the gimbal mount's current attitude
2022-09-28 17:09:31 +10:00
Peter Barker 3d099b0d2f AP_Mount: include required GCS.h header 2022-09-27 09:26:45 +10:00
Randy Mackay a16b9cc5ad AP_Mount: remove set_mode overrides
The mode state is local to the driver and does not depend upon successful communication with the gimbal
2022-09-19 20:23:03 -04:00
olliw42 64b1277a66 AP_Mount: storm integrates find_by_mavtype_and_compid
Note that this forces users to set their gimbal's component id while before any component id was acceptable
2022-09-12 08:44:38 +09:00
Randy Mackay 7c9b487779 AP_Mount: gremsy integrates find_by_mavtype_and_compid 2022-09-12 08:44:38 +09:00
Randy Mackay f932add7ea AP_Mount: mav-cmd-do-gimbal-manager-pitchyaw supports multiple gimbals 2022-09-07 16:09:07 +09:00
Randy Mackay 73d817b985 AP_Mount: add access for primary instance 2022-09-07 16:09:07 +09:00
Randy Mackay 76096899ac AP_Mount: add 2nd instance 2022-09-07 16:09:07 +09:00
Randy Mackay c072a201bc AP_Mount: param conversion for MNT to MNT1 2022-09-06 13:53:25 +09:00
Randy Mackay 66a8775895 AP_Mount: remove param set of MNT1_TYPE to 1 if servo outputs defined 2022-09-06 13:53:25 +09:00
Randy Mackay c20ec27c54 AP_Mount: parameter angles in degrees
Also MNTx_RC_RATE param per backend
2022-09-06 13:53:25 +09:00
Randy Mackay ac769baa3c AP_Mount: Servo mount's STAB params replaced by BrushlessPWM type 2022-09-06 13:53:25 +09:00
Randy Mackay 0d9526f1c5 AP_Mount: replace RC input params with RC options 2022-09-06 13:53:25 +09:00
Randy Mackay 2bcb503170 AP_Mount: allow users to disable yaw on 3-axis gimbals
Also fixes 3-axis gimbal support for SToRM32 serial and MAVLink gimbals
2022-08-30 10:05:09 +10:00
Randy Mackay 83c9a76260 AP_Mount: send warning to GCS on invalid GPS or angle targets
This hopefully will help catch cases where the GCS relied on a bug in 4.2 (and earlier's) handling of MAV_CMD_DO_MOUNT_CONTROL
2022-08-25 20:28:06 -04:00
Randy Mackay 022d610519 AP_Mount: separate handling of mount-control and do-mount-control 2022-08-25 20:28:06 -04:00
Randy Mackay 119c8b7363 AP_Mount: get_angle_target_to_location checks for valid location 2022-08-24 18:07:08 +10:00
Randy Mackay b4979e2cfa AP_Mount: replace send-mount-status with send-gimbal-device-attitude-status 2022-08-15 20:29:25 -04:00
Iampete1 47105f0b03 AP_Mount: params always use set method 2022-08-03 13:43:48 +01:00
Randy Mackay f03ac3648d AP_Mount: fixup handle do-gimbal-manager-pitchyaw flags 2022-06-29 10:56:48 +09:00
Randy Mackay 3b0869d098 AP_Mount: SToRM32_serial restructure and support for ef/bf angle and rate 2022-06-29 10:56:48 +09:00