Commit Graph
2700 Commits
Author SHA1 Message Date
Julian Oes e6d31f951c mavlink_command_sender: fix logic after first test
- change/add a few printfs so they make more sense
- don't accidentally ignore command_acks
- don't forward commands to the same component id, and don't forward
  commands that are broadcast to all components (target component 0)
2017-07-08 11:52:23 +02:00
Julian Oes af0107ae0a mavlink: add class for command retransmission
This adds a class to allow for retransmission of outgoing commands.
The sent commands are kept in a timestamped list to check if they are
acked as required by the mavlink protocol.
If they are not acked within a timeout, they can be retransmitted.
2017-07-08 11:52:23 +02:00
Julian Oes 9854fc0d84 Set timestamp with vehicle commands
The vehicle_command uORB messages had the timestamp unset at 0.
2017-07-08 11:52:23 +02:00
ChristophTobler a5e435808f mavlink log if camera unsuccessful 2017-07-08 11:52:23 +02:00
Daniel Agar f947205cbe delete vehicle_global_velocity_setpoint 2017-06-26 11:31:25 -04:00
Julien Lecoeur 7929287f73 Fix -Werror=format-truncation on GCC 7
Fix formatting

Check snprintf return for error AND overflow
2017-06-26 15:50:44 +02:00
Daniel Agar 6a443765a5 cmake only include mavlink where used 2017-06-19 20:24:09 +02:00
Sean Matthews 1c56cad3b1 Uses astyle 2.06 2017-06-15 08:56:49 +02:00
Sean Matthews 08891526fd Fixes #6484: Bug in Offboard mode incorrect use of type_mask 2017-06-15 08:56:49 +02:00
Lorenz Meier e60fbccbee MAVLink app: Add ability to output packets for training and inspection 2017-06-05 22:44:21 +02:00
Lorenz Meier 8c3b90007c MAVLink app: Enable protocol version handshaking
This allows the ground control station or any other communication partner to query the supported versions. The key aspect is to send the response in MAVLink 2 framing to test the link with a MAVLink 2 framed message.
2017-06-04 16:14:00 +08:00
Beat Küng 0c3a34fb7f mavlink log handler: remove code to delete the msgs_ mavlink txt log files 2017-06-04 04:35:21 +08:00
Beat Küng a5485c97e0 mavlink: remove _log_enabled flag
It's obsolete since we removed the mavlink log file
2017-06-04 04:35:21 +08:00
Lorenz Meier e2fa5c2857 MAVLink: Remove status text output
The MAVLink app was logging the status to a file on the SD card, however, this has been integrated into the ulog format since. Having these in multiple locations is unnecessarily confusing to the user and induces load to the system.
2017-06-04 04:35:21 +08:00
Daniel Agar 64ed96d81a clang-tidy readability-simplify-boolean-expr 2017-06-02 19:35:18 -04:00
Julian Oes 723a6bf6ac mavlink: new MAV_CMD_IMAGE_START_CAPTURE spec
The spec of the mavlink command MAV_CMD_IMAGE_START_CAPTURE has changed.
2017-06-03 02:53:58 +08:00
Lorenz Meier 74b0e485e7 MAVLink stream: Ensure the message is not sent again if it was already dispatched. 2017-05-19 10:34:43 +02:00
Lorenz Meier c84611f0f5 MAVLink: Fix rate handling for camera trigger messages 2017-05-19 10:34:43 +02:00
Beat Küng 3d77102653 mavlink_main: remove MISSION_ITEM from streams configuration 2017-05-18 09:48:14 +02:00
Beat Küng 2a79ddd621 MavlinkLogHandler: increase MAX_BYTES_SEND to 256kb
It increases the throughput on UDP (from around 2Mb to 2.5Mb), while the
rate via USB & telemetry stay the same.
2017-05-18 09:48:14 +02:00
Beat Küng a89980f440 MavlinkParametersManager: update sending rate
This is an adjustment due to the changed calling frequency of send()
(was 300 Hz, is now 100 Hz)
2017-05-18 09:48:14 +02:00
Beat Küng cfa61c5841 MavlinkReceiver: add mission manager, param manager, ftp and log handler
This makes also a slight stack size increase necessary (was 284 bytes left)
2017-05-18 09:48:14 +02:00
Beat Küng d70caeb24b MavlinkParametersManager: remove MavlinkStream inheritance 2017-05-18 09:48:14 +02:00
Beat Küng a761c4189e MavlinkMissionManager: remove MavlinkStream inheritance 2017-05-18 09:48:14 +02:00
Beat Küng 99b29777ba MavlinkLogHandler: remove MavlinkStream inheritance 2017-05-18 09:48:14 +02:00
Beat Küng e6c3b29aa6 MavlinkFTP: remove MavlinkStream inheritance 2017-05-18 09:48:14 +02:00
Beat Küng 78c1f51f11 mavlink main: remove mission_manager, param manager, ftp & log handler
Will be moved to the receiver thread
2017-05-18 09:48:14 +02:00
Beat Küng 4105394234 mavlink_receiver: check for allocation failure
Also remove the start() declration (there's no definition of that)
2017-05-18 09:48:14 +02:00
Beat Küng 2c548f84a7 refator mavlink: prefix class members with _ 2017-05-18 09:48:14 +02:00
Mohammed Kabir ad5fe5f44a Add support for SET_CAMERA_MODE command; Not used yet. 2017-05-12 22:11:17 +02:00
Mohammed Kabir 192e8b48d1 mavlink : send camera_image_captured message 2017-05-12 22:11:17 +02:00
Mohammed Kabir 2e92a3946d camera_trigger : completely refactor state handling 2017-05-12 22:11:17 +02:00
Lorenz Meier 7af7c86384 mavlink : send camera capture information 2017-05-12 22:11:17 +02:00
Khoi Tran 1b7838c2fe Implement Mavlink PLAY_TUNE 2017-04-27 14:48:25 +02:00
Lorenz Meier 21f409366a MAVLink app: Warn sender if a command has been rejected 2017-04-23 19:23:09 +02:00
Daniel Agar f8e291dab1 mavlink VFR_HUD throttle use first 2 groups (#7106)
- fixes #6974
2017-04-22 16:08:27 -04:00
Don Gagne 96458d3184 Support for RTL and Delay mission commands 2017-04-18 08:56:01 +02:00
Daniel Agar 34058cbc21 mavlink EXTENDED_SYS_STATUS add takeoff and landing (#7064) 2017-04-17 09:31:49 -04:00
Jon Watson 3fda79ef8b set battery warning for MAVLink battery status (#6890) 2017-04-13 12:37:19 -04:00
Beat Küng c7d9a7a6d1 mavlink_log_handler: fix potential buffer overflow 2017-04-06 11:48:35 +02:00
Julian Oes 3c1d785d86 mavlink_mission: set INT frame correctly
Also when formatting malvink mission items from internal mission items,
the INT flag should be obeyed.
2017-04-01 20:07:55 +02:00
Julian Oes 80ce1b6dd8 mavlink_mission: support INT altitude frames
The relative altitude flag was not set correclty when waypoints are sent
using the INT protocol.
2017-04-01 20:07:55 +02:00
Daniel Agar 79d15ad2f0 mavlink stream camera trigger broadcast DO_DIGICAM 2017-03-26 14:05:38 +02:00
Jon Watson 8a6b6f9be5 Send MAVLink DO_DIGICAM_CONTROL on camera trigger (#6815) 2017-03-24 13:24:09 -04:00
Lorenz Meier 7695b65b7f MAVLink app: Default to MISSION, not MISSION_INT
In order to ensure correct transmission the mission system needs to default to the legacy protocol and switch to the new implementation when these conditions are met:
  * If the GCS sends a MISSION_REQUEST_INT - it will do this based on the AUTOPILOT_VERSION flag indicating int mission support
  * If the autopilot sends a MISSION_REQUEST and has the AUTOPILOT_VERSION flag for 2.0 set, the GCS should NACK it, which will make the autopilot retry a MISSION_REQUEST_INT
  * If the autopilot sends a MISSION_REQUEST_INT and the GCS does not support it, the GCS will ignore and time out. The autopilot could retry now opportunistically with the old protocol, but this is not great for lossy links.
  * If the GCS sends a MISSION_ITEM_INT - this is a fallback
2017-03-16 23:16:39 +01:00
Beat Küng 45af77a543 mavlink parameters: try to send 5 params at once on USB & UDP connections
This further speeds up param loading.

On Pixracer via USB, it's possible to send up to 11 at once before the TX
buffer gets full, so there is still enough free bandwidth left.
2017-03-14 21:30:04 +01:00
Beat Küng 2873d973de mavlink: increase parameter rate from 120 to 300Hz
This speeds up parameter loading. Slow links like telemetry are unaffected,
since the mavlink loop runs only with ~100Hz.

Tested on various links, like:
- telemetry link
- pixracer WiFi
- pixracer USB
- SITL
2017-03-14 21:30:04 +01:00
Lorenz Meier 2af5d1b929 Mission transfer: Fix retry logic
Previously the retry would not actually have been sent if nothing had been received in time.
2017-03-13 21:51:21 +01:00
Beat Küng cfcc75d444 mavlink shell: check if there's enough free buffer to send the mavlink message
if there is not, the process on the other end of the pipe will just block.
This improves reliability over slow links.
2017-03-10 11:29:09 +01:00
Beat Küng 2bbe04c3d6 mavlink_receiver: don't publish sensor_combined for MAVLINK_MSG_ID_HIL_SENSOR
In hil mode, sensors is responsible for publishing this topic.
2017-03-04 05:59:10 +08:00