Nick Exton
ac96365a61
AP_Mount: In Siyi, add check for minimum supported firmware version
2023-09-12 08:36:29 +09:00
Nick Exton
fd6242964a
AP_Mount: In Siyi, rename _firmware_version member to _fw_version (NFC)
2023-09-12 08:36:29 +09:00
Nick Exton
8b7b265e9f
AP_Mount: In Siyi, store full firmware version info
2023-09-12 08:36:29 +09:00
Nick Exton
d99b5c173a
AP_Mount: In Siyi, fix zoom percentage in CAMERA_SETTINGS
2023-09-11 09:48:57 +10:00
Peter Barker
d1bcd2c5e1
AP_Mount: allow more libraries to compile with no HAL_GCS_ENABLED
2023-09-05 22:23:51 +10:00
Randy Mackay
820d00dfcd
AP_Mount: xacti supports set lens and zoom
2023-09-05 10:19:08 +10:00
Randy Mackay
9bb8df7b70
AP_Mount: Siyi supports rangefinder distance
2023-09-01 10:35:12 +10:00
Randy Mackay
d5772774d1
AP_Mount: Siyi timeout moved to definition
2023-09-01 10:35:12 +10:00
Randy Mackay
23deeb3a00
AP_Mount: Siyi supports set_lens
2023-09-01 10:35:12 +10:00
Randy Mackay
74fa07ae13
AP_Mount: Siyi displays zoom version
2023-09-01 10:35:12 +10:00
Randy Mackay
9a5acec243
AP_Mount: Siyi gets improved model detection
...
# Conflicts:
# libraries/AP_Mount/AP_Mount_Siyi.cpp
2023-09-01 10:35:12 +10:00
Randy Mackay
d59ff8501c
AP_Mount: Siyi loses unused definitions
2023-08-30 16:00:47 +09:00
Randy Mackay
33542c0c1d
AP_Mount: Siyi absolute zoom simplification
2023-08-30 16:00:47 +09:00
Andrew Tridgell
12f5448bf4
AP_Mount: fixes for macos CAN SITL build
2023-08-29 15:09:48 +10:00
Randy Mackay
a8057f0157
AP_Mount: DEVID made writeable
2023-08-29 11:34:51 +10:00
Randy Mackay
6a14c1f72f
AP_Mount: Viewpro fix for date sent from autopilot
2023-08-29 11:34:51 +10:00
Peter Barker
02d0a07083
AP_Mount: add build options for deprecated messages MOUNT_CONTROL/MOUNT_CONFIGURE
...
these are repalced by the command equivalents
2023-08-29 11:06:13 +10:00
Asif Khan
3927521aa6
AP_Mount: move handling of all do-set-roi to AP_Mount library
2023-08-26 17:55:53 +10:00
Asif Khan
dffeaf0897
AP_Mount: Siyi fix for continuous zoom
...
Co-authored-by: Randy Mackay <rmackay9@yahoo.com>
2023-08-26 14:46:31 +09:00
Peter Barker
02d1eca49b
AP_Mount: accept mount commands as command_int
2023-08-24 22:07:12 +10:00
Andrew Tridgell
3752750f0a
AP_Mount: removed native_millis/micros
2023-08-24 13:06:40 +10:00
Randy Mackay
9d09739044
AP_Mount: Viewpro supports get rangefinder distance
2023-08-23 18:09:56 +10:00
olliw42
e2599252a1
AP_Mount: use backend instead of _backends[instance]
2023-08-11 07:55:05 +09:00
davidsastresas
767710340a
AP_Mount: Viewpro sends gimbal_device_id in camera_information
2023-08-10 14:37:30 +09:00
davidsastresas
25e8bd1f42
AP_Mount: Xacti sends gimbal_device_id in camera_information
2023-08-10 14:37:30 +09:00
davidsastresas
d242a968f3
AP_Mount: Siyi sends gimbal_device_id in camera_information
2023-08-10 14:37:30 +09:00
davidsastresas
55aa1b5a32
AP_Mount: Backend sends gimbal_device_id in device_attitude_status_send
2023-08-10 14:37:30 +09:00
Asif Khan
f26528edba
AP_Mount: fix GIMBAL_MANAGER_SET_PITCHYAW not working correctly when using multiple gimbals
2023-08-09 10:03:34 +09:00
Asif Khan
ea9f4a79f5
AP_Mount: fix sending camera information and settings for each backend
2023-08-09 10:03:34 +09:00
Randy Mackay
9a29bf3f05
Mount: type param desc gets Viewpro
2023-08-02 17:25:25 +10:00
Peter Barker
117d99045d
AP_Mount: correct ViewPro compilation under g++-7.5.0
...
non-trivial designators not implemented
2023-08-02 11:32:31 +09:00
Randy Mackay
617fb98eb6
AP_Mount: viewpro gets vehicle yaw in 0 to 360 range
2023-07-26 20:20:13 +09:00
Randy Mackay
0ccf41b525
AP_Mount: viewpro formatting fix
2023-07-26 20:20:13 +09:00
Randy Mackay
70cf9de970
AP_Mount: viewpro directly fills in packet structures
2023-07-26 20:20:13 +09:00
Randy Mackay
cea0acdb01
AP_Mount: viewpro implements set lens
...
also reports model, firmware version and zoom to GCS
also gets recording status from gimbal
2023-07-26 20:20:13 +09:00
Randy Mackay
315d972c5d
AP_Mount: add set lens support
2023-07-26 20:20:13 +09:00
Randy Mackay
11a505f16f
AP_Mount: Gremsy fix for attitude reporting
2023-07-26 17:33:18 +10:00
Randy Mackay
2812b1e8bf
AP_Mount: viewpro fix for pitch angle reporting
2023-07-26 17:33:18 +10:00
Asif Khan
fd6db1ef45
AP_Mount: add MNT log msg for mount's actual and target angles logging
2023-07-26 17:33:18 +10:00
Randy Mackay
ca935ef47e
AP_Mount: viewpro and xacti only enabled on boards 2mb flash
2023-07-18 21:02:02 +09:00
Randy Mackay
d5977b6d96
AP_Mount: viewpro calc_crc len arg fix
...
Also remove one unnecessary length check
Also correct length check that meant last byte of buffer was unusable
2023-07-18 21:02:02 +09:00
Randy Mackay
a8bb79b9ab
AP_Mount: add viewpro cpp driver
2023-07-18 21:02:02 +09:00
Randy Mackay
ddb91afdde
AP_Mount: add set_tracking accessor
2023-07-18 21:02:02 +09:00
Randy Mackay
471f528233
AP_Mount: Xacti integrates get-date-and-time return of ms
2023-07-18 21:02:02 +09:00
Asif Khan
0c67f20a74
AP_Mount: fix setting default mode redundantly in each backend
2023-07-15 10:46:28 +10:00
Randy Mackay
c28e629af3
AP_Mount: Xacti fix for gnss format
2023-07-12 08:18:46 +09:00
Andrew Tridgell
9454b54a1d
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-07-11 20:35:13 +09:00
Peter Barker
485fee36ab
AP_Mount: add and use SetFocusResult
2023-07-05 16:28:42 +10:00
Peter Barker
c70778e4d4
AP_Mount: correct gimbal manager flags
2023-07-03 08:09:04 +09:00
Randy Mackay
3388e6f25d
AP_Mount: remove xacti debug
2023-07-01 18:32:20 +10:00
Randy Mackay
bb8319e914
AP_Mount: frontend instantiates Xacti backend
2023-06-27 21:12:20 +10:00
Randy Mackay
a4f34811a0
AP_Mount: add Xacti DroneCAN backend
2023-06-27 21:12:20 +10:00
Randy Mackay
2a30bc7ce1
AP_Mount: add devid parameter and setter
2023-06-27 21:12:20 +10:00
Randy Mackay
cf77a564fd
AP_Mount: minor comment fix
2023-06-27 21:12:20 +10:00
Randy Mackay
c7b64dc448
AP_Mount: Siyi health check avoids race condition
2023-06-27 21:12:20 +10:00
Randy Mackay
5d97a4b3d6
AP_Mount: Siyi loses unused center method
2023-06-27 21:12:20 +10:00
Randy Mackay
c4c073e8b8
AP_Mount: Siyi displays camera fw ver
2023-06-16 14:30:46 +10:00
Randy Mackay
63b4b8b7d3
AP_Camera: support camera info and settings
2023-06-16 14:30:46 +10:00
Randy Mackay
2c37958c3f
AP_Mount: support send-camera-info and settings
2023-06-16 14:30:46 +10:00
Randy Mackay
65fd8a7120
AP_Mount: Siyi implements body-frame yaw limits
2023-06-13 10:08:02 +10:00
Randy Mackay
39eb46fd26
AP_Mount: backend set_angle_target enforces bf limits
2023-06-13 10:08:02 +10:00
Asif Khan
caf35b71a6
AP_Mount: fix SiYi gimbal upside-down facing not working
2023-06-09 09:38:43 +10:00
Peter Barker
78c5fe097b
AP_Mount: correct compilation when HAL_MOUNT_SERVO_ENABLED is 0
...
... but still do the parameter conversion
2023-06-08 11:52:44 +10:00
Peter Barker
cd472b8f52
AP_Mount: use minimize_features.inc for more features
2023-06-06 10:14:02 +10:00
Peter Barker
487ed8d888
AP_Mount: remove use of AP_Mount.h from headers
2023-05-29 09:08:55 +10:00
Peter Barker
3d245c4e4c
AP_Mount: use switch statement on mount type when creating backends
2023-05-29 09:08:55 +10:00
Peter Barker
3acc917ea7
AP_Mount: use enum class for mount type
2023-05-25 09:54:43 +10:00
Asif Khan
28748dc2c0
AP_Mount: add GIMBAL_MANAGER_SET_PITCHYAW message support
2023-05-24 12:36:37 +10:00
Peter Barker
07160e2985
AP_Mount: move get_bf_yaw to be a method on the object it takes
2023-05-18 15:07:17 +10:00
Randy Mackay
e672a75776
AP_SerialManager: generalise SToRM32 serial protocol desc and enum
2023-05-17 17:34:10 +10:00
davidsastresas
cbec7ee47b
AP_Mount: support gimbal_manager_status and do_gimbal_manager_configure
...
Co-authored-by: Randy Mackay <rmackay9@yahoo.com>
2023-05-17 12:38:49 +10:00
Randy Mackay
341910bce4
AP_Mount: fix send_gimbal_manager_information instance
2023-05-17 12:38:49 +10:00
davidsastresas
de9024b633
AP_Mount: Siyi supports absolute zoom control
...
Co-authored-by: davidsastresas <davidsastresas@gmail.com>
Co-authored-by: Randy Mackay <rmackay9@yahoo.com>
2023-05-02 10:00:38 +10:00
Randy Mackay
020a505d78
AP_Mount: set_focus replaces set_manual/auto_focus
2023-04-26 22:55:47 +10:00
Randy Mackay
ddbc52d2db
AP_Mount: support gimbal-manager-information requests
2023-04-25 15:07:35 +10:00
Asif Khan
47ad614e8e
AP_Mount: Add MNTx_SYSID_DFLT param to easily target another vehicle
2023-04-24 13:34:20 +10:00
Asif Khan
3d11ec7b5c
AP_Mount: Add SysID-Target entry to MNTx_DEFLT_MODE param description
2023-04-24 13:34:20 +10:00
Randy Mackay
14ef3870bc
AP_Mount: integrate ZoomType def move out of AP_Camera
2023-04-19 17:31:46 +10:00
Randy Mackay
a8c593d44c
AP_Mount: Siyi driver comment re zoom decrement
2023-04-19 17:31:46 +10:00
Randy Mackay
5b7f9c874d
AP_Mount: set_zoom replaces set_zoom_step
2023-04-19 17:31:46 +10:00
Peter Barker
a3c5926040
AP_Mount: use quat.to_euler(Vector3f&)
2023-04-19 14:24:45 +10:00
Peter Barker
3b2e92c4d6
AP_Mount: use only radians within servo backend
2023-04-15 23:14:48 +10:00
Peter Barker
69d7843f22
AP_Mount: don't check MINIMIZE_FEATURES when also checking BOARD_FLASH_SIZE
...
we have an assertion that no board with >1MB of flash is minimized
2023-04-15 09:33:35 +10:00
Randy Mackay
470b9638ea
AP_Mount: remove unused get_camera_state
2023-04-14 07:47:47 +10:00
Randy Mackay
db51915e27
AP_Mount: scripting backend loses camera support
...
drivers should use the camera scripting backend
2023-04-13 07:04:46 +10:00
Nick Exton
5d39dd45be
AP_Mount: Add clear_roi_target() function
2023-04-11 09:11:08 +10:00
Peter Barker
c63ec307f1
AP_Mount: do not allow both attitude and rate for GIMBAL_MANAGER_SET_ATTITUDE
...
this will allow us to support both at the same time into the future without worrying about how it might break existing callers.
2023-04-04 09:48:40 +10:00
Asif Khan
91935fc404
AP_Mount:Add GIMBAL_MANAGER_SET_ATTITUDE support
2023-04-04 09:48:40 +10:00
Peter Barker
51757a192e
AP_Mount: clarify attitude returned in get_attitude_quaternion method call
2023-03-27 09:03:35 +09:00
Peter Barker
b644dfebc4
AP_Mount: add and use a "bool read(c)" method to AP_HAL
...
this is much less likely to not work vs the int16_t equivalent
2023-03-22 17:59:11 +11: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
Randy Mackay
f14f524ff5
AP_Mount: SToRM32 restructure and support for ef/bf angle and rate
2022-06-29 10:56:48 +09:00
Randy Mackay
18fe1d44b7
AP_Mount: Solo restructure and support for ef/bf angle and rate
2022-06-29 10:56:48 +09:00
Randy Mackay
d59e87ea59
AP_Mount: Servo restructure and support for ef/bf angle and rate
2022-06-29 10:56:48 +09:00
Randy Mackay
80b70dcd66
AP_Mount: Gremsy fixup for support of ef/bf angle and rate
2022-06-29 10:56:48 +09:00
Randy Mackay
d17e1b6fab
AP_Mount: Alexmos restructure and support for ef/bf angle and rate
2022-06-29 10:56:48 +09:00
Randy Mackay
0d60e47c68
AP_Mount: backend restructure and support for ef/bf angle and rate
2022-06-29 10:56:48 +09:00
Randy Mackay
f0f95fb812
AP_Mount: frontend adds support for both ef/bf angle and rate
2022-06-29 10:56:48 +09:00
Randy Mackay
33a4efa936
AP_Mount: move mode, yaw_lock, roi_target and sysid target to backend
2022-06-29 10:56:48 +09:00
Randy Mackay
ec07c15e1e
AP_Mount: set_roi_target and set_target_sysid lose struct and const before args
2022-06-29 10:56:48 +09:00
Randy Mackay
898bdb864c
AP_Mount: fix handle_command_do_mount_configure instance handling
2022-06-29 10:56:48 +09:00
Randy Mackay
e58d72931e
AP_Mount: Solo in sysid target sets lockedToBody
...
Also re-order calls in home-location mode to be consistent with other modes
2022-06-29 10:56:48 +09:00
Randy Mackay
e8ab4eb8b7
AP_Mount: SToRM32_serial provides calc_angle_to_xxx relative_pan argument
2022-06-29 10:56:48 +09:00