Peter Barker
84603e2c85
GCS_MAVLink: add support for MAV_CMD_RUN_PREARM_CHECKS
2021-06-21 09:41:17 +10:00
Peter Barker
a23999d0f0
GCS_MAVLink: remove HIL support
2021-06-15 09:47:31 +10:00
Peter Barker
c43965f32e
GCS_MAVLink: correct decimation of SENSOR_STATUS message
...
static infers shared between all backends
2021-06-15 07:07:39 +10:00
Andrew Tridgell
6c24a030a6
GCS_MAVLink: use HAL_EFI_ENABLED
2021-06-09 18:07:00 +10:00
Josh Henderson
518666b5f0
GCS_MAVLink: Add battery_charge_state to Battery_Status message
2021-06-08 09:27:13 +10:00
Andrew Tridgell
96577b47f0
GCS_MAVLink: removed perf counters
2021-06-07 14:29:27 +10:00
giacomo892
f486d7170c
GCS_MAVLink: Fix build for builds with GPS_MAX_RECEIVERS = 1
2021-05-18 10:26:55 +10:00
Andy Piper
fca6925129
GCS_MAVLink: use generic send_esc_telemetry_mavlink() from AP_ESC_Telem
2021-05-12 17:01:11 +10:00
Peter Barker
bd76d15df4
GCS_MAVLink: log auxillary function invocations
2021-04-29 13:00:40 +10:00
Andrew Tridgell
8444a3310d
GCS_MAVLink: added handle_command_landing_target()
...
used to allow vehicle handling of time corrected LANDING_TARGET msgs
2021-04-13 17:30:19 +10:00
Peter Barker
9471d8069c
GCS_MAVLink: move handling of last-seen-SYSID_MYGCS up to GCS base class
2021-04-07 17:54:21 +10:00
Peter Barker
1a2b960b0d
GCS_MAVLink: prune old statustexts from queue
2021-04-06 09:10:43 +10:00
Peter Barker
4027ed6070
GCS_MAVLink: make servicing statustext more efficient
...
We should only need to do a single PAYLOAD_SIZE check for each mavlink
backend now.
- stop iterating over all channels, only do instantiated mavlink
backends
- if we don't have space for a statustext on a channel, break
immediately and don't do remaining texts
- resposibility is now on the GCS_MAVLINK backend for sending texts
- that's a timing change
- only iterate over entries actually in the queue rather than maximum
queue size
- it's likely to be the full length anyway as we don't expire things
from the queue and most setups will have full channels
2021-04-06 09:10:43 +10:00
Iampete1
0fe38da522
GCS_MAVLink: rename battery reset function
2021-03-31 19:21:59 +11:00
Peter Barker
115e895c82
GCS_MAVLink: return MAV_RESULT_FAILED from do_aux_function if invalid function
2021-03-31 11:36:09 +11:00
Peter Barker
2d61ded1f3
GCS_MAVLink: add option to execute auxillary functions via mavlink
2021-03-31 11:36:09 +11:00
Randy Mackay
b8f9c3b9c0
GCS_MAVLink: use of AP_Proximity checks HAL_PROXIMITY_ENABLED
2021-03-26 16:22:46 +09:00
Peter Barker
5123b05b2b
GCS_MAVLink: add support for ATTITUDE_QUATERNION
2021-03-13 09:44:12 +11:00
James O'Shannessy
f028747399
GCS_MAVLink: Remove todo since plane now supports MAV Protocol Capability Mission Fence
2021-03-05 16:48:57 +11:00
Peter Barker
e3de88d1d4
GCS_MAVLink: handle MAV_CMD_DO_SET_MISSION_CURRENT
2021-03-04 11:59:33 +11:00
Peter Barker
7480a2a00b
GCS_MAVLink: correct output of AHRS2 mavlink message
...
The || here was causing short-circuiting
2021-03-02 20:48:36 +11:00
Peter Barker
9932aa99f7
GCS_MAVlink: return identical seq in MISSION_CURRENT if possible after set
...
// because MISSION_SET_CURRENT is a message not a command,
// there is not ACK associated with us successfully changing
// our waypoint. Some GCSs use the fact we return exactly the
// same mission sequence number in this packet as an ACK - so
// if they send a MISSION_SET_CURRENT with seq number of 4
// then they expect to receive a MISSION_CURRENT message with
// exactly that sequence number in it, even if ArduPilot never
// actually holds that as a sequence number (e.g. packet.seq==0).
2021-02-24 19:00:34 +11:00
Peter Barker
cfe9dc32d1
GCS_MAVLink: only send distance_sensor messages if valid data seen
...
In the case you only have a forward-pointing LIDAR we'd send messages
for each of the other orientations from proximty's horizontal-distances
array, chewing up bandwidth and processing time.
2021-02-23 10:02:47 +09:00
Peter Barker
c5e62eb6e4
GCS_MAVLink: schedule current waypoint rather than immediate send
...
This message may not fit in our outgoing buffer
2021-02-23 11:27:22 +11:00
Patrick José Pereira
ba2adac869
GCS_MAVLink: Simplify boolean expression
...
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-23 10:30:05 +11:00
Peter Barker
eefcc92f24
GCS_MAVLink: take MAV_CMD_DO_SPRAYER as a mavlink command
2021-02-16 22:36:43 +11:00
Andrew Tridgell
6d1511f3eb
GCS_MAVLink: added method to force save calibration
...
useful after reloading parameters
2021-02-15 07:24:40 +11:00
Patrick José Pereira
e8e41c512e
GCS_MAVLINK: Add missing const in member functions
...
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2021-02-03 18:45:14 +11:00
Rishabh
a5fafe57d8
GCS_MAVLink: Add support for OBSTACLE_DISTANCE_3D
2021-02-01 14:34:13 +09:00
Peter Barker
e32ca819fc
GCS_MAVLink: mark results as unused
2021-01-21 20:41:17 +11:00
Peter Barker
e58d2ecf2f
GCS_MAVLink: add mavlink command option to create a 250ms long loop
2021-01-21 11:35:57 +11:00
yaapu
1c3b7d5ecd
GCS_MAVLink: added support for passthrough telemetry over crossfire
2021-01-20 18:06:24 +11:00
Pierre Kancir
30a4747898
GCS_MAVLink: send sim_state msg
2021-01-19 10:40:43 +11:00
Andrew Tridgell
ed8d86e5e6
GCS_MAVLINK: support deliberate parameter corruption
2021-01-16 06:47:10 +11:00
Peter Barker
3d577d94e8
GCS_MAVLink: add do_disarm_checks boolean to disarm call
...
this creates symmetry between arming and disarming, at least as far as
the top-level arm() and disarm() calls are concerned.
2021-01-12 08:48:44 +09:00
Peter Barker
0052500d67
GCS_MAVLink: split out a handle_command_component_arm_disarm
2021-01-12 08:48:44 +09:00
Brad Bosch
a2192eda5e
GCS_MAVLink: use RADIO_STATUS message txbuf field
...
this avoids overrunning radio buffer in queued_param_send()
2021-01-12 10:46:15 +11:00
Peter Barker
d24e569b20
GCS_MAVLink: add option to panic the autopilot
2021-01-05 10:04:25 +11:00
Peter Barker
b8827e6486
GCS_MAVLink: allow control to be return to radio for higher-numbered RC_CHANNELS_OVERRIDE
2020-12-29 15:03:34 +11:00
Peter Barker
6f4bbd3f57
GCS_MAVLink: for high RC_CHANNELS_OVERRIDE channels zero means ignore the field
2020-12-29 15:03:34 +11:00
Andrew Tridgell
e6c5382a28
GCS_MAVLINK: fixed FPE in DO_SET_ROI
...
this prevents a floating point exception when MissionPlanner sends an
invalid DO_SET_ROI
See https://github.com/ArduPilot/MissionPlanner/issues/2528
2020-12-28 11:53:03 +11:00
Dr.-Ing. Amilcar do Carmo Lucas
d76825feeb
GCS_MAVLink: adapt to upstream changes in the distance_sensor mavlink message
2020-12-19 19:54:03 +11:00
Dr.-Ing. Amilcar do Carmo Lucas
1d0e7d2974
GCS_MAVLink: Added cells 11...14 voltage information (13 and 14 are 0 for now)
2020-12-11 06:37:32 +11:00
Gone4Dirt
caf1ad28d5
GCS_Common: AP_Generator_Richenpower is now AP_Generator
2020-11-24 12:54:52 +11:00
Peter Barker
f0c22244a5
GCS_MAVLink: correct response codes when mode change fails
...
Was "UNSUPPORTED", which is supposed to mean, "Command is not supported"
Now is either "DENIED" (Command is invalid (is supported but has invalid
parameters)) or "FAILED" (Command is valid, but execution has failed.)
We should probably returned DENIED if we try to change to a mode which
doesn't exist, but that would require another callback on AP_Vehicle.
It would also lead to questions around what a valid mode is - so
QSTABILIZE if quadplane is disabled in Plane, for example.
2020-11-24 10:09:37 +11:00
Hwurzburg
6eca18c08b
GCS_MAVLink: add Board option to disable MAVftp in low mem bds/apps
2020-11-17 10:41:59 +11:00
Andrew Tridgell
9c74474196
GCS_MAVLink: setup baudrates for passthru serial ports
2020-11-17 10:26:14 +11:00
Andy Piper
4d1c660ebc
GCS_MAVLink: enable OSD parameters on parameter enablement
2020-11-11 18:13:11 +11:00
Tatsuya Yamaguchi
e1126d4fd6
GCS_MAVLink: use micro64 instead of micros for time_usec
2020-10-27 15:37:29 +11:00
Iampete1
73594cb19b
GCS_MAVLink: send airspeed temp in scaled_pressure
2020-10-27 11:24:49 +11:00
Peter Barker
74f75dcd31
GCS_MAVLink: fill AUTOPILOT_VERSION.uid2 from get_system_id_unformatted
2020-10-21 18:26:12 +11:00
murata
6304ade668
GCS_MAVLink: Change to leave the lower 16 bits.
2020-10-13 12:06:18 +11:00
Andrew Tridgell
e346cd3c80
GCS_MAVLink: fixed use of incorrect millis16() values
2020-10-12 13:48:15 +11:00
Peter Barker
45f7322af6
GCS_MAVLink: avoid catching up on sending messages when sending disrupted
...
The code here was never meant to maintain an "average" streamrate. It
was designed so that we would maintain a consistent clock in the face of
minor scheduling anomalies (like an EKF fusion step).
The way this is written, however, makes us spit out a message for each
of the intervals we missed - clearly not intended behaviour.
This was tested by inserting the following code:
void GCS_MAVLINK::update_send()
{
+ const uint32_t xnow = AP_HAL::millis();
+ if (xnow > 10000 &&
+ xnow < 20000) {
+ return;
+ }
+
2020-10-12 13:48:15 +11:00
Peter Barker
7cb8cde417
GCS_MAVLink: move orderly rebooting code from GCS into AP_Vehicle
...
Several places we reboot the vehicle we should probably do several of
the things done in this code - flushing parameters, forcing safety on
etc.
2020-09-29 18:07:59 +10:00
yaapu
e7a49dd624
GCS_Mavlink: refactor zero_rc_outputs() out of GCS_Mavlink
2020-09-29 18:07:59 +10:00
Andy Piper
5d487be242
GCS_MAVLink: squash enum type error
2020-09-22 09:37:02 +10:00
Andy Piper
8b766efb0a
GCS_MAVLink: add support for updating OSD parameters over mavlink
2020-09-09 20:36:42 +10:00
Sharvashish Das
80e2dbc9f2
GCS_Common: send_local_position uses offset from origin
2020-09-01 10:27:18 +10:00
Andrew Tridgell
30f9fd9d2a
GCS_MAVLink: fixed overrun of text passed to other libraries
...
this caused corruption in log files, and was passing a
non-nul-terminated string to notify and other libraries
2020-08-28 17:35:17 +10:00
Siddharth Purohit
42f5f986d8
GCS_MAVLink: use AP_CANManager library
...
also add support for handling enumeration cmd by KDETest
2020-08-19 17:31:09 +10:00
Peter Barker
0e284b95b0
GCS_MAVLink: move battery type enumeration out of parameters object
2020-08-11 13:21:52 +10:00
Randy Mackay
1a3ef62b84
GCS_MAVLink: add virtual send_winch_status
2020-08-07 21:55:07 +09:00
elhayra
9b3a574775
GCS_MAVLink: sending UAVCAN MAVlink ESC messages
2020-08-06 09:28:35 +10:00
Andy Piper
e91ae19544
GCS_MAVLink: make mount/gimbal configurable on a per-board basis
2020-08-04 09:18:14 +10:00
Dr.-Ing. Amilcar do Carmo Lucas
7067cbdafd
GCS_Mavlink: Adapt to upstream mavlink changes to the SCALED_PRESSURE message
2020-07-29 14:34:22 +10:00
Michael du Breuil
6773821b3b
GCS_MAVLink: Don't forward MAVLink data on channels marked private, make private channels more private
2020-07-22 07:17:49 +10:00
Andy Piper
05416daef3
GCS_Mavlink: output fast sampling startup messages
2020-07-10 16:45:29 +10:00
Andrew Tridgell
5a18b16f69
GCS_MAVLink: use strncpy_noterm
2020-07-10 13:32:24 +10:00
Peter Barker
741520d598
GCS_MAVLink: find next bucket to send when sending-ids emptied on msg removal
...
We need to find the next bucket of messages to send when we've removed
the last message id from the current set of IDs we're sending out - not
just when we've empted the bucket the messages came from in the first
place.
An internal check caught this bug - the
'next_deferred_bucket_message_to_send called on empty bucket' error
2020-07-07 10:49:31 +10:00
Peter Barker
e2056f56e3
GCS_MAVLink: support for sending generator message
2020-07-03 08:21:42 +09:00
Randy Mackay
03ea646e50
GCS_MAVLink: send_battery_status uses memcpy for cell voltages
...
Co-authored-by: WickedShell <Wicked.Shell.Scripts@gmail.com>
2020-06-24 10:19:15 +09:00
Randy Mackay
65aea0e9c1
GCS_MAVLink: send_battery_status sends min of cell 10 11 and 12
2020-06-24 10:19:15 +09:00
Michael du Breuil
7fae084793
GCS_MAVLink: Only send a single battery status per call
2020-06-23 09:18:56 +10:00
Peter Barker
e4621e6921
GCS_MAVLink: do not process commands after we have decided to reboot
2020-06-17 11:54:03 +10:00
chobits
991387dbfb
GCS_MAVLink: support covariance field in vis pose msg
2020-06-09 13:31:21 +09:00
Peter Barker
f158533fe9
GCS_MAVLink: allow private channels to also be active
...
This will allow for logging of private channels.
2020-06-09 10:37:32 +10:00
Peter Barker
06012cbc56
GCS_MAVLink: cope with RingBuffer rename if empty() to is_empty()
2020-06-09 10:21:48 +10:00
Peter Barker
07e3f1d48f
GCS_MAVLink: add RADIO_STATUS.rssi as an AP_RSSI telemetry source
2020-06-09 10:20:29 +10:00
chobits
ff6e4c4f9a
GCS_MAVLink: support VISION_SPEED_ESTIMATE
2020-06-01 17:51:24 +09:00
Peter Barker
5100c9fb8c
GCS_Common: whitelist AUTOPILOT_VERSION for in_delay_callback sending
...
GCSs may request this very early on in the boot process, particularly
for SITL.
If we try to send it during a delay callback then we end up dropping it
at the moment - but we'd already sent the ack in response to the
request.
2020-05-11 15:22:38 +10:00
Andy Piper
da166b256d
GCS_MAVLink: add messages to Spektrum telemetry if it is enabled
2020-05-05 09:23:15 +10:00
Andrew Tridgell
7cd901fa5b
GCS_MAVLink: enable ftp without filesystem
...
allows for @PARAM and @SYS
2020-04-29 07:36:55 +10:00
Peter Barker
8b0b644c11
GCS_MAVLink: correct check for payload space for COMMAND_ACK
2020-04-27 15:30:30 +10:00
Randy Mackay
6f8176c71e
GCS_MAVLink: remove ahrs3
2020-04-22 14:11:17 +09:00
Peter Barker
8b9281eaa1
GCS_MAVLink: log number of times message not sent due to no space
2020-04-17 22:21:14 +10:00
Randy Mackay
c39fef6c56
GCS_MAVLink: pass vision-position-estimate reset_counter to AP_VisualOdom handler
2020-04-14 10:28:03 +10:00
Randy Mackay
9769f08fd9
GCS_MAVLink: visual odometry build fixes
2020-04-09 19:41:08 +09:00
Randy Mackay
a1ddd55ea5
GCS_MAVlink: AP_integrate of rename to handle_vision_position_delta_msg
2020-04-09 19:41:08 +09:00
Randy Mackay
728e8b45a9
GCS_MAVLink: use AP_VisualOdom to handle vision-position-estimate messages
2020-04-09 19:41:08 +09:00
Siddharth Purohit
b0cbbb4bea
GCS_Common: fix unannotated fall-through between switch labels
2020-04-01 17:10:36 +11:00
Peter Barker
0b756547be
GCS_MAVLink: add stream_slowdown to MAV message
2020-03-31 11:13:11 +11:00
Peter Barker
a09ac895e9
GCS_MAVLink: remove dead assignment
...
This value is never used
2020-03-31 10:38:13 +11:00
Andrew Tridgell
8a84dbc19e
GCS_MAVLink: slow down telemetry during ftp
2020-03-28 15:28:03 +11:00
Peter Barker
97b07d9c84
GCS_MAVLink: add option to get the autopilot to hard-fault itself
2020-03-19 16:03:58 +11:00
Andrew Tridgell
39fc324854
GCS_MAVLink: convert to new get_rpm() API
2020-03-12 08:36:40 +11:00
Andrew Tridgell
aaf828c9d4
GCS_MAVLink: consider NO_CHANGE as success for bootloader flash
...
this prevents GCS users from seeing "update failed"
2020-03-11 16:30:06 +11:00
Rishabh
f3e66055e5
GCS_MAVLink: Alert GCS if user tries calibration while vehicle is armed
2020-03-03 11:37:19 +11:00
Peter Barker
fbe2e75b9f
GCS_MAVLink: divide time allowed to send messages fairly
2020-02-27 08:49:59 +11:00
Peter Barker
e2c9f6a8a1
GCS_MAVLink: add flags to MAV dataflash log
...
holds various pieces of simple information about a link
2020-02-25 10:59:22 +11:00
Peter Barker
f8f4ed7ee0
GCS_MAVLink: log disarm method
2020-02-22 12:16:29 +11:00
Andrew Tridgell
20ea1a3dc7
GCS_MAVLink: don't send statustext from other than main thread
...
This fixes high stack usage in the RCIN thread when it notifies the
GCS of a new RCIN protocol. The problem is severe when signing is
enabled, as signing adds over 500 bytes to stack cost of sending a
mavlink msg
fixes issue #13615
2020-02-20 10:39:29 +11:00
Michael du Breuil
1f8c030eba
GCS_MAVLink: Allow scripting to start/stop the REPL
2020-02-18 17:23:22 -07:00
Michael du Breuil
296c014d14
GCS_MAVLink: Fix excess trimming of autopilot version
2020-02-19 09:10:02 +11:00
Matt Lawrence
c84dcd9bf8
GCS_Mavlink: Add routing for GoPro heartbeat
2020-02-18 11:13:27 +11:00
Peter Hall
b1742b4e19
GCS_Mavlink: constrain battery current to avoid wrap
2020-02-12 08:04:39 +11:00
Randy Mackay
7a5f57f940
GCS_MAVLink: send rc output mode banner to GCS
2020-02-04 12:23:33 +11:00
Peter Barker
1650979a2b
GCS_MAVLink: add support for MAV_CMD_DEBUG_TRAP
2020-01-29 10:27:01 +11:00
Peter Barker
e248bdfb16
GCS_MAVLink: split statustexts into 50-byte chunks using mav2 extensions
2020-01-28 19:56:38 +11:00
Peter Barker
8fc64ccbe9
GCS_MAVLink: allow NavEKFs to be compiled out
2020-01-21 11:53:18 +11:00
Peter Barker
a9f62f196e
GCS_MAVLink: consolidate places we snprintf statustexts
2020-01-14 10:38:43 +11:00
Randy Mackay
188fdfb1b8
GCS_MAVLink: send optflow message even if no height estimate
2020-01-06 11:36:43 +09:00
Andrew Tridgell
1b528137f7
GCS_MAVLINK: cope with AP_Frsky_Telem being created after init
...
may be created by the FPort backend
2020-01-02 09:52:57 +11:00
Andrew Tridgell
c6322c7c98
GCS_MAVLink: send abs throttle in VFR_HUD
2019-12-24 15:14:03 +11:00
Peter Barker
01710c035e
GCS_MAVLink: handle proximity and rangefinder messages
2019-12-24 12:08:54 +11:00
Oliver Walters
5fa54f3986
GCS_MAVLink: added support for Piccolo CAN ESCs
2019-12-22 09:48:40 +11:00
Andrew Tridgell
dd73eac08c
GCS_MAVLink: support MAV_CMD_FIXED_MAG_CAL_YAW
2019-12-18 17:20:37 +11:00
Peter Barker
ebbcd00873
GCS_MAVLink: send statustext to all GCSs until update_send is called
...
until update_send it called we don't mark channels as streaming, so
send_statustext won't send to that channel.
Calculating the streaming mask could have been done as part of the init
call, but this fix may allow for information getting to the user in the
case that the streaming parameters are all zero, too.
2019-12-18 14:36:58 +11:00
Andrew Tridgell
f8f591c7db
GCS_MAVLink: fixed critical error on prefight cal ops
2019-12-13 09:30:48 +11:00
Peter Barker
314ea32ede
GCS_MAVLink: any internal error means MAV_STATE_CRITICAL
2019-11-27 14:27:53 +11:00
Marian Soban
6e961b55eb
GCS_MAVLink: LTM telemetry support
2019-11-26 12:14:13 +11:00
Andrew Tridgell
2b27cd2ce9
Plane: Add EFI Support
2019-11-17 20:10:54 +11:00
Andrew Tridgell
00e3344321
GCS_MAVLink: add EFI_STATUS message
2019-11-17 20:10:54 +11:00
Peter Barker
7d2557b316
GCS_MAVLink: correct txspace return value issues
...
- checking of space in send_to_active_channels was incorrect - did not
take into account locked status of the channel
- corrected return value on comm_get_txspace - took a uint32_t, cast it
to int16_t, checked it for zero, then cast it to uint16_t on return.
That's just... odd.
2019-11-12 16:33:12 +11:00
Peter Barker
a893a5483c
GCS_MAVLink: support sysid targetting
2019-11-12 07:52:22 +08:00
Peter Barker
ac7111f1d1
GCS_MAVLink: adjust for renaming of RangeFinder files
2019-11-12 07:14:37 +08:00
Peter Barker
402f3ec09c
GCS_MAVLink: honour coordinate altitude frames for DO_SET_ROI
...
Also use {} to construct the location.
Note the assumption that the frame is relative-to-home when we receive
the command via COMMAND (as opposed to COMMAND_LONG)
Note that this is a behavioural change as
2019-11-05 19:55:45 +11:00
Peter Barker
b9dbfff0d0
GCS_MAVLink: announce capabilities compass-cal and param float for all vehicles
2019-11-05 11:26:23 +11:00
Michael du Breuil
6f538dd45a
GCS_MAVLink: Initial FTP support
2019-11-02 22:52:06 +11:00
Peter Barker
34eff6d1c6
GCS_MAVLink: adjust for proximity status namespace change
2019-10-31 11:58:15 +08:00
Peter Barker
5c3a0926a1
GCS_MAVLink: adjust for proximity rangefinder types changing namespacing
2019-10-31 11:58:15 +08:00
Andrew Tridgell
4593697634
GCS_MAVLink: use new flash_bootloader() API
2019-10-25 21:36:55 +11:00
Michael du Breuil
cb1b236439
GCS_MAVLink: Use the vehicle singleton to directly set the flight mode
2019-10-25 08:48:22 +08:00
Andrew Tridgell
29e65a7294
GCS_MAVLink: supply IMU temperature in mavlink extensions
2019-10-10 13:23:03 +11:00
Do Carmo Lucas
dc4ad26e96
GCS_MAVLink: updates to support the latest stable mavlink changes (IMU temperature extension)
2019-10-10 13:23:03 +11:00
Randy Mackay
3a113a31bb
GCS_MAVLink: minor fix to set_message_interval
2019-10-02 16:09:44 +09:00
Tatsuya Yamaguchi
9a99d9bff5
GCS_MAVLink: add set_message_interval functions
2019-10-02 16:09:44 +09:00
Peter Barker
6d0c5da84a
GCS_MAVLink: allow upload of fence using mission item protocol
...
GCS_MAVLink: add support for fence inclusion circles
GCS_MAVLink: factor out a transfer_is_complete; start commenting properly
2019-09-28 07:58:48 +09:00
Randy Mackay
5e3c6b4d3a
GCS_MAVLink: allow proximity to send only upward facing distances
...
this removes the requirement that a horizontal proximity sensor be enabled
2019-09-25 15:22:13 +09:00
Peter Barker
2f60b230cd
GCS_MAVLink: use singleton to get AP_AdvancedFailsafe pointer
2019-09-17 09:13:43 +10:00
Peter Barker
8da978b913
GCS_MAVLink: use sending_mavlink1 method in send_rc_channels_raw
2019-09-12 16:10:23 +10:00
Andrew Tridgell
98c2606c0a
GCS_MAVLink: fixed assumption on return of snprintf
2019-09-12 08:43:31 +10:00
Peter Barker
8fc55b9678
GCS_MAVLink: remove comm_get_available
...
available returns an unsigned integer, so this was just weird
2019-09-10 15:45:27 +10:00
Peter Barker
df5921a87c
GCS_MAVLink: gate AP_DEVO_Telem behind !HAL_MINIMIZE_FEATURES
2019-09-04 17:47:33 +10:00
Michael du Breuil
e5eeb6181d
GCS_MAVLink: Remove the usage of force_safety_no_wait
2019-09-04 07:14:50 +10:00
Michael du Breuil
a74f00d045
GCS_MAVLink: Remove single use method
2019-09-03 14:35:17 +10:00
Peter Barker
5d9b332bcb
GCS_MAVLink: log exectuted COMMAND_LONG and COMMAND_INT packets
2019-08-27 09:32:00 +10:00
Andrew Tridgell
cfc37f2089
GCS_MAVLink: log corrected timestamp for vision data
...
this allows for debugging of link lag issues
2019-08-26 12:27:31 +10:00
Peter Barker
052e721622
GCS_MAVLink: tweak timings debug messages
2019-08-24 15:33:50 +10:00
Peter Barker
74670a77be
GCS_MAVLink: avoid allocating a GCS_MAVLINK per mavlink channel
2019-08-14 18:25:43 +10:00
Peter Barker
67bf00c1c3
GCS_MAVLink: ensure payload space before sending message ack
...
Also add comment about how we shouldn't be sending this message at all.
2019-08-13 16:48:17 +10:00
Peter Barker
bb542ca39a
GCS_MAVLink: queue AUTOPILOT_VERSION for sending instead of direct-send
...
Also allows the message to be requested for streaming or with
REQUEST_MESSAGE
We weren't checking for buffer space before sending this out, so it was
a possible source of corruption.
2019-08-13 16:29:45 +10:00
Peter Barker
57528b94cf
GCS_MAVLink: allow complete() call on subclasses to fail
...
Also terminate uploads if any error occurs fetching items
2019-08-07 12:07:59 +10:00
Peter Barker
4b012ab62b
GCS_MAVLink: deny upload of non-MISSION items if not doing mavlink2
2019-08-06 13:58:44 +10:00
Peter Barker
cf0b7cf016
GCS_MAVLink: pass link object in place of channel to compass cal
...
Also eliminate intermediate function as just adding noise
2019-08-05 09:23:10 +10:00
Peter Barker
880e96448b
GCS_MAVLink: tighten type on mavlink_coordinate_frame_to_location_alt_frame
2019-08-01 17:45:30 +10:00
Randy Mackay
767408ffe9
GCS_MAVLink: resolve gcs::send_text compiler warning
2019-07-30 09:02:39 +09:00
Peter Barker
5e55aedd20
GCS_MAVLink: add printf-format attribute to send_text methods
2019-07-26 10:54:41 +10:00
Peter Barker
0bbe049477
GCS_MAVLink: assert max length of statustexts we send to the GCS
2019-07-22 23:05:15 -07:00
Peter Barker
93ca243987
GCS_MAVLink: rearrange mission item handling code
...
This splits the missionitemprotocol handling entirely into separate
header files and separate compilation units.
2019-07-18 10:48:57 +09:00
Pierre Kancir
b1506ca652
GCS_MAVLink: pass mavlink_message_t by const reference
2019-07-16 20:51:42 +10:00
Peter Barker
459680e7c8
GCS_MAVLink: make Avoidance responsible for sending collision message
2019-07-16 09:52:54 +10:00
Michael du Breuil
b3c6d3d75a
GCS_MAVLink: Refactor battery current interface
2019-07-14 00:28:00 -07:00
Peter Barker
6cb8fcc466
GCS_MAVLink: move use of AP_AHRS_NAVEKF_AVAILABLE into cpp file
...
This is defined in AP_AHRS which we only get transitively in the header
2019-07-09 22:32:57 +10:00
Peter Barker
1ebbe45fe1
GCS_MAVLink: split sending of RC_CHANNELS and RC_CHANNELS_RAW
...
Before this patch is applied we may never send the second message
because there's not room for it in the buffer and we can't return
failure-to-send (always interpreted as "retry") as we're in a void function.
Further, if you are on a mavlink2 connection we will not send out the
RC_CHANNELS_RAW message, depriving the user of any RC_CHANNELS messages.
This patch does have the drawback of doing more work on a mavlink1
connection - it has to fetch the data twice. On the other hand, it also
allows the GCS to set the message rates independently for both
RC_CHANNELS and RC_CHANNELS_RAW so one or the other can be squelched.
That could be handy for reducing bandwidth if you know you're not using
more than 8 input channels.
2019-07-09 13:08:45 +10:00
Peter Barker
c8353c1c13
GCS_MAVLink: fill target system and target component in MISSION_ITEM responses
2019-07-09 09:25:06 +10:00
Peter Barker
ebd8170a15
GCS_MAVLink: add missing include for AP_RTC
2019-07-04 13:57:40 +10:00
Michael du Breuil
18e979fd4f
GCS_MAVLink: Include needed AP_Baro.h
2019-06-27 14:56:21 +10:00
Michael du Breuil
f955a4e4d5
GCS_MAVLink: Don't retain a FrSky instance if we aren't using it
...
Saves 96 bytes of RAM
2019-06-26 11:59:41 +10:00
Peter Barker
278ac5e6ed
GCS_MAVLink: correct deferred body timing debug
2019-06-25 19:59:49 +10:00
Peter Barker
feddaabc42
GCS_MAVLink: handle out-of-time to send messages in parent class
2019-06-25 10:29:40 +10:00
Andrew Tridgell
f28df4dff1
GCS_MAVLink: support MAV_CMD_BATTERY_RESET command
2019-06-25 09:56:25 +10:00
Peter Barker
a55c40949b
GCS_MAVLink: remove pointless protocol parameter to setup_uart
2019-06-25 09:47:08 +10:00
Peter Barker
ca449cd979
GCS_MAVLink: stop pointlessly passing serial manager around
2019-06-25 09:47:08 +10:00
Peter Barker
45fab82345
GCS_MAVLink: eliminate redundant static pointer to serialmanager
2019-06-25 09:47:08 +10:00
Peter Barker
c39a622653
GCS_MAVLink: take sw_version from AP_FWVersion struct
2019-06-18 10:54:01 +10:00
Michael du Breuil
be7afe346b
GCS_MAVLink: Fix AP_GPS include
2019-06-18 10:02:05 +10:00
Michael du Breuil
8c00102259
GCS_MAVLink: Reduce scoping on AP_BattMonitor include
2019-06-18 10:02:05 +10:00
Peter Barker
ae85994c59
GCS_MAVLink: include internal error count as errors4 in SYS_STATUS
2019-06-12 10:05:59 +10:00
Peter Barker
f385a4a329
GCS_Common: fix compiler warnings on missing parentheses
2019-06-11 21:50:53 +10:00
Randy Mackay
6ed09d83f3
GCS_MAVLink: send_home_position uses const Location reference
2019-06-11 13:13:22 +09:00
Peter Barker
a025794bae
GCS_MAVLink: correct is_streaming check and update of is-streaming mask
2019-06-11 09:26:10 +10:00
Peter Barker
99c56c1770
GCS_MAVLink: fix MAV.txp log field
...
This was being promoted to an unsigned.
2019-06-04 09:05:37 +10:00
Peter Barker
75ae6b59b0
GCS_MAVLink: allow Copter to disallow mavlink disarm
2019-05-30 07:37:30 +09:00
Peter Barker
e340873d88
GCS_MAVLink: canonicalise on success on commanded-to-arm-when-armed
...
This means the mavlink return value indicates the current arm status of
the vehicle rather than success/failure of transitioning to the armed or
disarmed state (where trying to arm when armed is considered a failure).
MAVLink is a lossy communication mechanism. It would not be
unreasonable for a GCS to issue a disarm command multiple times to
increase the chances of the command getting through.
2019-05-30 07:37:30 +09:00
Peter Barker
b857d2c1af
GCS_MAVLink: handle MAV_CMD_COMPONENT_ARM_DISARM
2019-05-30 07:37:30 +09:00
Peter Barker
1b90643751
GCS_MAVLink: report more internal errors in SYS_STATUS
2019-05-23 07:29:29 +10:00
Peter Barker
d0105c8fa7
GCS_MAVLink: factor mission handling, use for Rally
...
GCS_MAVLink: allow all mission types to be cleared
GCS_MAVLink: remove unused parameters from handle-mission-count
2019-05-22 08:53:45 +10:00
Andrew Tridgell
e2d863498b
GCS_MAVLink: clear last msgs when done
...
this makes MON and WDOG logs clearer
2019-05-17 08:56:06 +10:00
Andrew Tridgell
64c723fd31
GCS_MAVLink: record mavlink msg IDs for watchdog
2019-05-15 15:33:48 +10:00
Andrew Tridgell
3772f58be9
GCS_MAVLink: removed unusued AP_Common/Semaphore.h
2019-05-15 15:33:48 +10:00
Tom Pittenger
1f3c3c853f
GCS_MAVLink: move heartbeat sending to gcs instead of by vehicles
2019-05-14 10:54:45 -06:00
Tom Pittenger
4c641c6e2b
GCS_MAVLink: comply with mavlink spec to ignore rc_override UINT16_MAX
2019-05-10 15:30:54 -07:00
Peter Barker
a0c80a0b3b
GCS_MAVLink: make send_text and send_textv const
2019-05-01 10:18:46 +10:00
Pierre Kancir
cc14885913
GCS_MAVLINK: remove mavlink send_buf usage
2019-04-23 09:41:00 +10:00
Andrew Tridgell
2313970eaf
GCS_MAVLink: added method to lockup autopilot
...
used for watchdog testing
2019-04-22 16:53:35 +10:00
Peter Barker
08cbf18958
GCS_MAVLink: header include fixes for RSSI changes
2019-04-09 09:33:13 +10:00
Pierre Kancir
5a7081b457
GCS_MAVLink: move check_latlng to Location
2019-04-08 12:56:01 -07:00
Andrew Tridgell
f998a74adf
GCS_MAVLink: don't report SCALED_PRESSURE2 with a non-existant airspeed sensor
2019-04-08 12:52:19 +10:00
Randy Mackay
bbd051b246
GCS_MAVLink: send OPTICAL_FLOW messages to optical flow driver
2019-04-08 11:26:59 +09:00
Peter Barker
31daaf9933
GCS_MAVLink: add floating-point-constant designators
2019-04-05 23:04:17 -07:00
Peter Barker
5c4983ffcd
GCS_MAVLink: stop converting compass cal floats to ints before saving
2019-04-05 06:09:25 -07:00
Michael du Breuil
8cafbe394f
GCS_MAVLink: Fix includes
2019-04-05 20:12:53 +11:00
Rajat Singhal
b7a40f2bfe
GCS_Mavlink: Add function for sending POSITION_TARGET_LOCAL_NED message
2019-03-29 09:11:14 +11:00
Tom Pittenger
8845cc2053
GCS_MAVLink: rename dataflash to logger
2019-03-28 16:40:58 +11:00
Peter Barker
30a66d9f13
GCS_MAVLink: implement a convenience manual_override method
2019-03-27 22:33:47 -07:00
Peter Barker
778bff966c
GCS_MAVLink: stop passing dataflash into handle_radio_status
...
It can use the singleton instead
2019-03-27 10:38:39 +11:00
Peter Barker
0ef26a6950
GCS_MAVLink: add support for request_message
2019-03-26 16:20:50 +11:00
Peter Barker
b3203601f3
GCS_MAVLink: send internal errors as bitmask in sys_status
2019-03-21 21:34:33 +11:00
Peter Barker
236056ffbd
GCS_MAVLink: take 0,0 as meaning set-home-to-current-location
...
This isn't in spec, but is what Sub used to do, and what other vehicles
also used to do.
We treat 0,0 as "current location" in various other places, so it kind
of makes sense here too.
2019-03-19 19:56:13 +11:00
Peter Barker
95745f0d31
GCS_MAVLink: move command-long DO_SET_HOME up
2019-03-19 19:56:13 +11:00
Peter Barker
bc2080cea2
GCS_MAVLink: move devo telemetry handling to GCS
2019-03-19 14:39:14 +11:00
Peter Barker
cf264a7d5e
GCS_MAVLink: move vehicle_initialised to be on GCS not GCS_MAVLink
2019-03-19 14:39:14 +11:00
Peter Barker
ab1c42696c
GCS_MAVLink: move FRsky telemetry up into common GCS telemetry class
2019-03-19 14:39:14 +11:00
Peter Barker
5eb9622105
GCS_MAVLink: correct compilation for ALT_FRAME issue
2019-03-19 12:06:03 +11:00
Michael du Breuil
75caad52c0
GCS_MAVLink: Always check the return value on get_velocity_NED
2019-03-19 11:42:54 +11:00
Andrew Tridgell
778b88cba2
GCS_MAVLink: disable reboot when armed
...
this prevents reboot on vehicles that have ARMING_REQUIRE=0, which
applies to some planes, but those vehicles tend to not use MAVLink
reboot anyway.
2019-03-19 10:53:37 +11:00
Peter Barker
716b0fdc88
GCS_MAVLink: use enum class for AltFrame enumeration
2019-03-19 10:31:18 +11:00
Peter Barker
bb1ae30594
GCS_MAVLink: move sending of RPM message up
2019-03-16 10:33:01 +09:00
Randy Mackay
27b50f125c
GCS_MAVLink: send_set_position_target always sends alt-above-home
2019-03-15 14:51:35 +09:00
Randy Mackay
066a443e5f
GCS_MAVLink: add send_set_position_target_global_int
...
this supports sending the position target to an offboard navigation controller
2019-03-15 14:51:35 +09:00
Peter Barker
34e09a55be
GCS_MAVLink: support send_extended_sys_state
2019-03-12 09:16:13 +09:00
Michael du Breuil
f7b34677df
GCS_MAVLink: Don't send BATTERY_STATUS for empty instances
2019-03-11 22:42:59 +00:00
Peter Barker
74702b8688
GCS_MAVLink: make sending of send_pid_tuning up
2019-03-05 10:41:56 +11:00
Peter Barker
ace5192852
GCS_MAVLink: retry sending home/origin if it fails
...
Also grants us the ability to stream these messages
2019-02-26 14:01:41 +11:00
Peter Barker
9f27e91f33
GCS_MAVLink: add simple stats to dataflash
2019-02-26 11:23:57 +11:00
Peter Barker
138d93702a
GCS_MAVLink: use Location to change alt frames
2019-02-26 10:35:39 +11:00
Peter Barker
cb33f290a7
GCS_MAVLink: move sensor flags to be a GCS thing rather than a GCS_MAVLINK thing
...
These are a per-vehicle thing, not a per-mavlink-backend thing.
2019-02-19 14:09:59 +11:00
Peter Barker
91c8d0b915
GCS_MAVLink: clarify packetReceive calling handlemessage checks
...
modules/libcanard/
2019-02-19 13:40:32 +11:00
Peter Barker
bfb3f0d62e
GCS_MAVLink: make capabilities comes from subclass, not HAL
2019-02-19 13:14:52 +11:00
Peter Barker
de615ee11d
GCS_MAVLink: move try_send_message of nav_controller_output up
2019-02-19 10:08:00 +11:00
Randy Mackay
f8e49e5438
GCS_MAVLink: call send_esc_telemetry for AP_ToshibaCAN ESCs
2019-02-18 20:55:47 +09:00
Peter Barker
4a0887b807
GCS_MAVLink: measure stream slowdown in ms
...
This costs us a couple of extra bytes of RAM and gains us not doing a
whole heap of multiplies
2019-02-16 13:45:47 +11:00
Peter Barker
63427629e1
GCS_MAVLink: use visual odometry singleton
2019-02-15 16:56:13 +11:00
Peter Barker
dffc5568fe
GCS_MAVLink: remove redundant home validation checks
2019-02-15 08:28:45 +11:00
Peter Barker
d8847a6192
GCS_MAVLink: move handling of command-int MAV_CMD_DO_SET_HOME up
2019-02-13 09:42:26 +11:00
Peter Barker
64b4e69e34
GCS_MAVLink: break out an altitude enumeration mapping function
2019-02-12 09:07:50 +09:00
Tom Pittenger
9f0e895c37
GCS_MAVLink: unify singleton naming to _singleton and get_singleton()
2019-02-10 19:09:58 -07:00
Peter Barker
0ef7c6af59
GCS_MAVLink: move handling of fence point manipulation up
2019-02-08 11:47:59 +09:00
Peter Barker
8d45a8ff53
GCS_MAVLink: move handling of MAV_CMD_DO_SET_FENCE_ENABLED up
2019-02-08 11:47:59 +09:00
Peter Barker
ae68b58678
GCS_MAVLink: move handling of RC overrides up
...
Based on commit 8db5e5308731b6916d5da58a650cef015b887180 by dposea
2019-02-05 13:59:21 +11:00
Peter Barker
120f0822ae
GCS_MAVLink: move sending of sys_status message up
2019-02-05 11:07:39 +11:00
Peter Barker
f1907679e7
GCS_MAVLink: move sending of fence_status message up
2019-01-31 13:44:29 +09:00
Peter Barker
8b74ab32a3
GCS_MAVLink: support get_message_interval
2019-01-30 13:56:55 +09:00
Peter Barker
c487d120e3
GCS_Common: stop passing mission to Write_EntireMission
2019-01-29 19:07:05 -08:00
Michael du Breuil
753f360d06
GCS_Common: NACK a failed partial mission write
2019-01-23 00:06:07 -07:00
Peter Barker
e4120c848c
GCS_MAVLink: correct payload space check for mission requests
2019-01-22 09:01:57 +11:00
Peter Barker
8e19e805c6
GCS_Common: clarify enumeration item name MSG_NEXT_WAYPOINT
2019-01-22 09:01:57 +11:00
Peter Barker
da1ded7cb9
GCS_MAVLink: rename queued_waypoint_send to queued_mission_request_send
2019-01-22 09:01:57 +11:00
Peter Barker
6fc76a32af
GLOBAL: use AP::logger() and strip redundant Log_ from methods
2019-01-18 18:08:20 +11:00