Commit Graph
36 Commits
Author SHA1 Message Date
Andrew Tridgell 6434442671 AP_Camera: relay MAVLink cameras and resolve camera selectors
Cache bounded stream lists and resume replies independently on each
GCS link after transmit backpressure. Expire remote capture status
after three seconds, retain locally scheduled interval capture, and
back off unanswered status requests.

Preserve native camera identity in cached replies and isolated-link
broadcasts, and suppress synthetic FC-owned status for native cameras.
Restore configured mount associations in cached information only when
a same-system camera advertises none.

Add CAMn_COMPID (0 or 7-255) so camera-v2 discovery can use a
non-default component ID. The first slot owns a colliding ID; duplicate
or invalid IDs warn and disable discovery.

Resolve command selectors as component IDs or legacy slots 1-6 with the
same rules for live commands and missions. NaN in formerly reserved
selector fields means unset. Video commands with a nonzero camera
selector treat param1 as a stream ID and pass the status frequency
through; without one they keep the old camera-slot interpretation.

Fill camera_device_id in camera information, settings, capture status,
field of view and stream messages, and document the routing and
selector design.
2026-09-23 08:59:12 +10:00
Thomas Watson 5edfcd01c1 AP_Camera: fix RunCam param metadata names to match code 2026-03-30 10:39:45 +01:00
Peter Barker 94943b05fe AP_Camera: remove line feeds from GCS_SEND_TEXT calls
these often make their way in when moving from some other printf-style debugging...
2025-05-30 22:36:07 +10:00
Andy Piper 7805477fb8 AP_Camera: use get_stick_gesture_pos() for RunCam menus 2025-01-15 18:28:44 +11:00
Andy Piper 684d95a826 AP_Camera: remove lf from panic
correct camera info message and defend against -1
2024-12-13 11:07:09 +00:00
Andy Piper 399f9f6f98 AP_Camera: RunCam camera backend
RunCam parameter conversion
add RunCam camera settings and control
2024-12-13 11:07:09 +00:00
Peter Barker f0900bd119 AP_Camera: RunCam: get rpty channels directly using convenience functions 2024-11-06 18:40:38 +11:00
Peter Barker b54c424842 AP_Camera: re-order initialiser lines so -Werror=reorder will work 2024-09-24 22:50:28 +10:00
Mykhailo Kuznietsov 81b4dbcb27 AP_Camera: Fix some typos
Fixed some typos found in the code.
2023-10-12 18:30:42 +11:00
Peter Barker ad105614bc AP_Camera: allow more libraries to compile with no HAL_GCS_ENABLED 2023-09-05 22:23:51 +10:00
Peter Barker 9c03685400 AP_Camera: add missing includes 2023-08-30 12:26:14 +10:00
Andrew Tridgell 4087e0b215 AP_Camera: removed set_blocking_writes 2023-07-12 17:06:02 +10:00
Cam84Fr de8fa1a31a AP_Camera: add support for Runcam 2 4k 2023-01-31 17:57:40 +11:00
Andy Piper de076ff259 AP_Camera: retry RunCam device info maximum number of times 2022-11-22 10:54:56 +11:00
Andy Piper 537eea76c8 AP_Camera: fix parameter caching with RunCam enablement and setup on 3-pos switch 2022-11-09 18:34:37 +11:00
Iampete1 f3b2de9c15 AP_Camera: params always use set method 2022-08-03 13:43:48 +01:00
Andy Piper cf257074c6 AP_Camera: support RunCam Hybrid correctly 2021-06-09 17:04:27 +10:00
Sebastian Roesner 50cac76e0b AP_Camera: Fix wrong comment in libraries/AP_Camera/AP_RunCam.cpp 2021-05-22 10:15:34 +10:00
Andy Piper bd6b28e5d9 AP_Camera: if the RunCam supports both 2-key and 5-key control, use 2-key
adjust camera menus for Split4 4k
use power button to start/stop recording on Split4
2020-11-11 18:14:41 +11:00
Andy Piper ab1d0d53f3 AP_Camera: keep trying to initialize RunCam after boot 2020-09-16 18:00:53 +10:00
Andy Piper 88d8cdadb7 AP_Camera: make runcam check for osd menu before entering osd menu 2020-09-09 20:36:42 +10:00
Andy Piper ac5a7275bf AP_Camera: move crc8_dvb_s2 to AP_Math 2020-07-07 18:48:06 +10:00
Peter Barker ea03504af2 AP_Camera: rename 'enum aux_switch_pos_t' to 'enum class AuxSwitchPos' 2020-06-12 08:11:46 +10:00
Peter Barker d012cf8d47 AP_Camera: use new UARTDriver discard_input method 2020-05-26 09:20:32 +10:00
Tatsuya Yamaguchi f23e592057 AP_Camera: move get_channel_pos function to RC_Channels 2020-05-05 10:09:30 +09:00
Andy Piper b8878380d6 AP_Camera: add RunCam device type 2 documentation 2020-04-06 20:27:32 +10:00
Andy Piper e3d22b9d27 AP_Camera: if exiting a RunCam submenu reset the submenu index to the top 2020-04-06 20:15:38 +10:00
Andy Piper 387b5e7002 AP_Camera: bug fixes to support 5-key remote RunCams
allow the boot-time recording state to be configured
only process events on state transitions. Simplifies logic and debugging.
support regular Split 2s
allow menu enter/exit in 5-key mode
match betaflight with 5-Key OSD which requires an "enter" key
2020-02-20 19:58:43 +11:00
Andrew Tridgell f1dfb2e401 AP_Camera: fixed build on navio 2019-12-30 13:02:04 +11:00
Andrew Tridgell f10adebb10 AP_Camera: made runcam CAM_RC_TYPE an enable parameter 2019-12-30 13:02:04 +11:00
Andy Piper d8a58ebda4 AP_Camera: allow features override. Report OSD support. 2019-12-30 13:02:04 +11:00
Andy Piper 318a23537d AP_Camera: allow roll right to also enter menu 2019-12-30 13:02:04 +11:00
Andy Piper afcbc5ffdb AP_Camera: fixup OSD menu switching and button timings 2019-12-30 13:02:04 +11:00
Andy Piper 86d9cf7249 AP_Camera: better OSD control logic 2019-12-30 13:02:04 +11:00
Andy Piper 7ad9ce0a01 AP_Camera: add RunCam TYPE and CONTROL options for menu/OSD control 2019-12-30 13:02:04 +11:00
Andy Piper 0eddc8b589 AP_Camera: implementation of the RunCam device protocol for RC camera control
Allows control of 2-key and 5-key OSD menus and recording start/stop
OSD is disabled while in the RunCam menu but reinstated on exit
add arming checks to prevent arming while the OSD menu is enabled
2019-12-30 13:02:04 +11:00