Michael du Breuil
c2da36d505
GCS_MAVLink: fix race condition when recieving last waypoint
...
only shows up when the waypoint is about to time out
2016-06-27 10:57:14 +10:00
Tom Pittenger
b4b0ec404c
GCS_MAVLink: flag a link as active if it ever sends a message
2016-06-13 18:25:26 -07:00
Tom Pittenger
8b405e26ea
GCS_MAVLink: battery2 current is in 10*mAh over mavlink
2016-06-02 16:59:29 -07:00
Tom Pittenger
4e4bc0bee4
GCS_MAVLink: use voltage(x) instead of voltage2()
2016-06-02 16:59:23 -07:00
Tom Pittenger
608fbee867
GCS_MAVLink: send current2 over mavlink
2016-06-02 16:59:03 -07:00
Peter Barker
1e146256cc
GCS_MAVLink: move telemetry_delayed up into base class
2016-05-31 08:46:09 +10:00
Peter Barker
43fed65f37
GCS_MAVLink: move adjust_rate_for_stream up
2016-05-29 19:38:49 +10:00
Andrew Tridgell
7ec513668e
GCS_MAVLink: reserve some space when param fetch fails
...
this ensures we give some buffer space for parameter fetch when we are
low on buffer space
we reserve 100 bytes for 2 seconds after a param fetch fails due to
low buffer space
2016-05-28 15:08:46 +10:00
Andrew Tridgell
0bbddd38cf
GCS_MAVLink: fixed some places where packets are sent without space
...
we always need sufficient space for the packet in the send buffer
2016-05-23 23:41:01 +10:00
Andrew Tridgell
273c80116a
GCS_MAVLink: added a wrapper for sending HEARTBEAT
...
will be used to cope with old radios with MAVLink2
2016-05-21 15:25:17 +10:00
Andrew Tridgell
8899455ea3
GCS_MAVLink: use extended MEMINFO message
2016-05-21 15:25:17 +10:00
Andrew Tridgell
018b1143d2
GCS_MAVLink: handle difference between SERIALn_PROTOCOL=1 and 2
2016-05-21 15:25:17 +10:00
Andrew Tridgell
b3f94184f2
GCS_MAVLink: always build with MAVLink2 headers
2016-05-21 15:25:16 +10:00
Andrew Tridgell
048fc8d39e
GCS_MAVLink: adjust for min_length mavlink2 API change
2016-05-21 15:25:15 +10:00
Andrew Tridgell
318ec69465
GCS_MAVLink: added periodic saving of signing key
...
thanks to Michael for noticing this was missing
2016-05-21 15:25:15 +10:00
Andrew Tridgell
12c1d58511
GCS_MAVLink: cope with different packet overheads with signing
...
use common macros for determining if there is sufficient space to send
a packet
2016-05-21 15:25:14 +10:00
Andrew Tridgell
7aae93e3e0
GCS_MAVLink: fixed auto-switching to MAVLink2
2016-05-21 15:25:14 +10:00
Andrew Tridgell
970dbf3c8d
GCS_MAVLink: fixed build with MAVLink1
2016-05-21 15:25:13 +10:00
Andrew Tridgell
ed9a43ca46
GCS_MAVLink: support for mavlink2 signing operations
2016-05-21 15:25:12 +10:00
Andrew Tridgell
8ea9e29fee
GCS_MAVLink: use a fixed signing key for testing
2016-05-21 15:25:12 +10:00
Andrew Tridgell
2a2abb8be6
GCS_MAVLink: log parameter changes to DataFlash
...
this means param notifies also get logged in the DF log
2016-05-08 19:12:09 +10:00
Leandro Pereira
f23bd7e09d
GCS_MAVLink: Use a single stream_trigger() implementation
...
This has no side effects, but since all implementations were basically
the same, move the implementation to GCS_Common and the only part that
adjusts the rate based on which which stream to each individual
GCS_MAVLINK implementation.
2016-05-07 23:49:35 -03:00
Lucas De Marchi
fea084a596
Global: use ap_version.h
...
This header is used by waf to contain the generated version macros,
particularly using the git hash. For waf it's better to be in a separate
header since it then can keep track of changes on it a trigger
recompilation.
For the make build system, a dummy ap_version.h file has been added in
the missing/ folder so both implementations can co-exist.
2016-05-06 13:11:28 -03:00
Michael Oborne
848fa27d1c
GCS_MAVLink: support MAVLINK_MSG_ID_MISSION_ITEM_INT
2016-05-01 07:13:45 +10:00
Niti Rohilla
8fcf5cf0c1
Changed the prototype of handle_guided_request() to report error
...
while setting guided points.
2016-04-29 12:39:28 -03:00
Andrew Tridgell
197e72acc0
GCS_MAVLink: fixed null termination bug
...
found with ASAN
2016-04-26 18:20:49 +10:00
Lucas De Marchi
0d9b9433da
GCS_MAVLink: fix home position unit
...
As per documentation the home position is in mm. Since location stores
it in cm, convert to mm before sending.
2016-04-18 13:07:45 +10:00
Francisco Ferreira
d3e149e5d7
GCS_MAVLink: ignore Clang out-of-range warning
...
warning: comparison of constant 4 with expression of type 'mavlink_channel_t' is always false [-Wtautological-constant-out-of-range-compare]
if (chan >= MAVLINK_COMM_NUM_BUFFERS) {
~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~
2016-03-30 01:32:45 -03:00
Staroselskii Georgii
6172ed078e
GCS_Mavlink: send power status from all boards
2016-02-27 03:06:50 -03:00
Andrew Tridgell
fe3812c51b
GCS_MAVLink: re-worked text send in terms of ObjectArray
2016-02-24 09:18:06 +11:00
Tom Pittenger
54d2a263fe
GCS_MAVLink: create queue scheme for static statustext msgs
2016-02-24 09:18:05 +11:00
Andrew Tridgell
5da6082d78
GCS_MAVLink: raise the waypoint receive timeout to 8s
...
this fixes a timeout in autotest
2016-01-20 17:23:36 +11:00
Don Gagne
c13cf70163
GCS_MAVLink: system id output as severity INFO
2016-01-18 09:40:00 +09:00
Andrew Tridgell
a3d781bf3f
GCS_MAVLink: fixed a valgrind error
2016-01-06 19:54:00 +11:00
Andrew Tridgell
0e8dbe92f0
GCS_MAVLink: fixed string overrun found by asan
2016-01-06 19:53:14 +11:00
Andrew Tridgell
68a46bc1ff
GCS_MAVLink: use AP_Param::count_parameters()
2016-01-06 14:44:37 +11:00
DonLakeFlyer
74902012fd
GCS_MAVLink: better mission errors
2015-12-21 16:02:23 +11:00
Julien BERAUD
780104dc9c
GCS_MAVLink: Fix build
...
Optical Flow definition is needed
2015-12-18 17:56:06 +11:00
Andrew Tridgell
c34100f6a2
GCS_MAVLink: support FMUv4
2015-11-27 18:54:30 +11:00
Luis Vale Gonçalves
5e290daac5
GCS_MAVLink: libraries_Text_revision
...
text revision of messages
2015-11-26 08:10:15 +11:00
Caio Marcelo de Oliveira Filho
a096c2b72c
GCS_MAVLink: use millis/micros/panic functions
2015-11-20 12:35:34 +09:00
lvale
9d88508cc3
GCS_MAVLink: handle_mission_item text severity to info
2015-11-10 13:11:34 +09:00
Peter Barker
368363531f
GCS_MAVLink: provide facilities to send param values to all GCS
2015-11-09 09:23:20 +11:00
Paul Riseborough
dfdacf2ddc
GCS_MAVLink: Accommodate change to EKF2 interface
...
Return euler angles for primary instance
2015-11-08 15:37:28 +11:00
Paul Riseborough
243888e923
GCS_MAVLink: accomodate change in EKF2 interface
2015-11-08 15:37:28 +11:00
Andrew Tridgell
49799257ea
GCS_MAVLink: handle available memory of over 64k in mavlink
2015-11-05 16:09:00 +11:00
Lucas De Marchi
c32d323cd6
GCS_MAVLink: remove check for GPS_RTK_AVAILABLE
2015-11-04 12:14:15 +11:00
Lucas De Marchi
c75c1d84d9
AP_GPS: remove check for GPS_MAX_INSTANCES
...
All supported boards may have more than 1 GPS instance.
2015-11-04 12:14:15 +11:00
Lucas De Marchi
039f42d916
GCS_MAVLink: remove checks for HAL_BOARD_APM2 and HAL_BOARD_APM1
2015-11-04 12:14:13 +11:00
Lucas De Marchi
1b07dabeb7
Replace prog_char and prog_char_t with char
...
prog_char and prog_char_t are now the same as char on supported
platforms. So, just change all places that use them and prefer char
instead.
AVR-specific places were not changed.
2015-10-30 14:35:30 +09:00
Lucas De Marchi
af88ebf477
GCS_MAVLink: remove send_text_P() in favor of send_text()
2015-10-30 14:35:18 +09:00
Lucas De Marchi
84d5fb006f
Remove use of Util::{v,}snprintf_P()
...
These are now the same function as Util::snprintf().
2015-10-30 14:35:05 +09:00
Lucas De Marchi
2c38e31c93
Remove use of PSTR
...
The PSTR is already define as a NOP for all supported platforms. It's
only needed for AVR so here we remove all the uses throughout the
codebase.
This was automated with a simple python script so it also converts
places which spans to multiple lines, removing the matching parentheses.
AVR-specific places were not changed.
2015-10-30 14:35:04 +09:00
Lucas De Marchi
36150348bb
GCS_MAVLink: remove check for max BARO instances
...
For all supported boards we allow more than 1 baro instance.
2015-10-21 10:05:18 +11:00
Lucas De Marchi
d1ac6cbd4c
GCS_MAVLink: remove check for vibe check
...
For all supported boards we have vibration check.
2015-10-21 10:05:18 +11:00
Lucas De Marchi
ae77c4b692
GCS_MAVLink: remove check for max INS instances
...
For all supported boards the maximum number of instances is 3.
2015-10-21 10:05:17 +11:00
Gustavo Jose de Sousa
f0dee75ab3
GCS_MAVLink: use compass get_{field,offsets}() functions
...
Both functions are equivalent, so we're going to simply use
get_{field,offsets}() instead of get_{field,offsets}_milligauss().
2015-10-15 19:56:08 +09:00
Randy Mackay
d3066fcdad
GCS_MAVLink: send compass vector to GCS in milligauss
2015-10-07 21:35:21 +09:00
Randy Mackay
9b96a2c385
GCS_MAVLink: send_home and send_home_all methods
2015-10-03 12:50:42 +09:00
Andrew Tridgell
7a3b59652f
GCS_MAVLink: show EKF2 status via AHRS3 message
2015-09-23 12:22:54 +10:00
Andrew Tridgell
5aa54be718
GCS_MAVLink: send SCALED_PRESSURE3 for 3 baros
2015-09-14 14:27:42 +10:00
Andrew Tridgell
bc4d37c91e
GCS_MAVLink: added severity to send_statustext_all()
2015-09-08 14:29:22 +10:00
Andrew Tridgell
f3e8819d1e
GCS_MAVLink: make send_statustext_all() take a format string
...
this allows for formatted messages to all groundstations in libraries
2015-09-08 13:53:58 +10:00
squilter
426dab5078
GCS_MAVLink: update severities and remove old enum
2015-08-28 10:04:35 +10:00
squilter
9d3a906602
GCS_Common: accept any type of severity, not just the old enum
2015-08-25 14:04:37 +09:00
squilter
fb1bb3f571
GCS_MAVLink: make arguments mandatory for send_autopilot_version
2015-08-23 09:21:59 +09:00
squilter
c4c63da163
GCS_MAVLink: send_autopilot_version accepts version
2015-08-21 22:40:51 +09:00
Tom Pittenger
1dd8b9d363
GCS_MAVLink: add support for try send mission_item_reached
...
also moved most of send_item_reached into common library
2015-08-19 15:26:32 +10:00
Brad Bosch
c87a7c7df9
GCS_MAVLink: Pause to allow serial port to drain.
...
This avoids a race between the UART and the auto flow control code.
2015-08-19 15:20:58 +10:00
Gustavo Jose de Sousa
d7a2ef3e35
GCS_MAVLink: standardize inclusion of libaries headers
...
This commit changes the way libraries headers are included in source files:
- If the header is in the same directory the source belongs to, so the
notation '#include ""' is used with the path relative to the directory
containing the source.
- If the header is outside the directory containing the source, then we use
the notation '#include <>' with the path relative to libraries folder.
Some of the advantages of such approach:
- Only one search path for libraries headers.
- OSs like Windows may have a better lookup time.
2015-08-11 16:38:25 +10:00
Andrew Tridgell
9352f05133
GCS_MAVLink: fixed bug setting parameters to default values
...
in copter if you try to set RATE_RLL_D to 0 when you haven't
prevviously changed it then it would set it, but would revert on the
next reboot. This is because of the special case handling of a set to
the "default" value. That default value is unaware of the PID
constructors
this fixes that behaviour by forcing a save if the parameter changes
value
2015-08-10 17:27:02 +10:00
Randy Mackay
d0aa1a89cd
GCS_MAVLink: retrieve capabilities from HAL
2015-07-31 14:50:22 +09:00
squilter
c946ce72e8
GCS_MAVLink: add optional param to support capability bitmask
2015-07-31 14:50:10 +09:00
Randy Mackay
a61129f7f8
GCS_MAVLink: add support for send_mission_item_reached
2015-07-19 12:14:09 +09:00
Andrew Tridgell
18de1c2c47
GCS_MAVLink: send AHRS2 even if we don't have a secondary position
2015-07-17 08:24:49 +10:00
Randy Mackay
76fdfdfcf2
GCS_MAVLink: do not send_vibration on APM2
2015-06-12 21:37:01 +09:00
Randy Mackay
642aa74530
GCS_MAVLink: add send_vibration
2015-06-12 21:36:42 +09:00
Lucas De Marchi
82d22992bd
GCS_MAVLink: Do not compare delegate to NULL
...
Use the simpler "if (delegate_name)" since it allows simpler
implementation in the class, i.e. the bool operator rather than having
to compare to another object.
2015-05-26 13:46:49 +10:00
Andrew Tridgell
71b550d7b5
GCS_MAVLink: support member functions for rover
2015-05-21 07:48:47 +10:00
Randy Mackay
559684b257
GCS_MAVLink: fix flow control check
...
Thanks to Tridge for spotting is
2015-05-15 15:39:34 +09:00
Randy Mackay
85eeba93c0
GCS_MAVLink: mavlink_comm_port to array
2015-05-15 15:07:31 +09:00
Randy Mackay
62e7e8cc7d
GCS_MAVLink: add support for 4th mavlink chan on PX4
2015-05-15 15:07:23 +09:00
Tom Pittenger
d94c95a6ef
GCS_MAVLink: return true if mission recieve is complete
...
when handing a mission item, and that is the last item, return true so that whoever is handling this knows we have a new mission list. From here we can log a new mission
2015-05-08 21:01:51 +10:00
Niels Joubert
2a5b25ddbf
GCS_MAVLink: Re-enable GPS Injection Packets
2015-04-24 08:01:32 +10:00
Mike Clement
c5c40adb76
GCS_MAVLink: use instance in find_baudrate
2015-04-06 14:47:51 -07:00
Andrew Tridgell
6e52ef2a74
GCS_MAVLink: added send_local_position()
2015-04-05 09:16:41 -07:00
Andrew Tridgell
82a51e8791
GCS_MAVLink: use AP_Param::set_param_by_name()
2015-04-04 09:01:40 -07:00
Randy Mackay
d738eda59d
GCS_MAVLink: integrate Serial Manager instance
2015-04-01 14:59:23 -07:00
Andrew Tridgell
58c92b0158
GCS_MAVLink: added SCALED_IMU3 logging
2015-03-04 19:30:08 +11:00
Andrew Tridgell
8cfe8c5823
GCS_MAVLink: moved send_autopilot_version() to common code
2015-02-11 19:50:40 +11:00
Andrew Tridgell
7a5ec6d75b
GCS_MAVLink: allow use of RC_CHANNELS message on AVR too
...
can have up to 11 channels
2015-02-08 21:47:31 +11:00
Andrew Tridgell
35c14c787e
GCS_MAVLink: added handle_gimbal_report() function
...
Pair-Programmed-With: Randy Mackay <rmackay9@yahoo.com>
2015-02-03 09:49:15 +11:00
Andrew Tridgell
59d5351dab
GCS_MAVLink: update for new find_serial()
2015-01-29 15:36:19 +11:00
Randy Mackay
1275ff7d40
GCS_MAVLink: have_flow_control uses mavlink_comm
2015-01-29 14:05:12 +11:00
Randy Mackay
febda988af
GCS_MAVLink: mavlink_channel from SerialManager
2015-01-29 14:05:11 +11:00
Randy Mackay
c6326fc9b7
GCS_MAVLink: use SerialManager for setup_uart
2015-01-29 14:05:11 +11:00
Andrew Tridgell
b1342c2d39
GCS_MAVLink: send SCALED_PRESSURE2 if available
2015-01-09 11:50:57 +11:00
Andrew Tridgell
d25bd8955d
GCS_MAVLINK: move send_opticalflow() into common library
2015-01-03 15:53:22 +11:00
Randy Mackay
cf36fd55bd
GCS_MAVlink: correct sending of 2nd battery's voltage
2014-12-31 15:22:49 +09:00
Andrew Tridgell
b5a5b71512
GCS_MAVLink: reverse sense of check_and_forward()
...
also increase number of routes on larger systems and improved route
learning logic
2014-12-17 10:32:28 +11:00
Andrew Tridgell
079158d4b8
GCS_MAVLink: strip out the old GCS_Class class
...
this is not longer needed as we don't support multiple protocol
classes
2014-12-11 12:32:45 +09:00
Andrew Tridgell
f198cdcf20
GCS_MAVLink: added support for a MAVLink snoop function
...
this can be used to watch messages for different targets
2014-12-11 12:32:32 +09:00
Andrew Tridgell
f1edd1bafb
GCS_MAVLink: removed use of mavlink_check_target()
...
not needed now we do routing properly, as messages will only be
processed if they are for us
2014-12-11 12:31:06 +09:00
Andrew Tridgell
aa88ba4158
GCS_MAVLink: only call message handler for our own messages
2014-12-11 12:30:59 +09:00
Andrew Tridgell
c750cbebfb
GCS_MAVLink: prevent asan errors in send_text_all
2014-11-11 15:16:26 +11:00
Andrew Tridgell
60aa017e11
GCS_MAVLink: added handle_set_mode() function
2014-10-01 14:19:04 +10:00
Randy Mackay
47c135c4e1
GCS_MAVLink: add comments around checking target
2014-09-30 15:18:35 +10:00
Andrew Tridgell
6b893a5865
GCS_MAVLink: slow down parameter send a lot with no flow control
2014-08-25 22:19:30 +10:00
Randy Mackay
de747d215a
Revert "GCS_MAVLink: send radio_in using rcmap"
...
This reverts commit 0881ccbee0
.
2014-08-16 20:31:14 +09:00
Randy Mackay
0881ccbee0
GCS_MAVLink: send radio_in using rcmap
2014-08-16 15:27:03 +09:00
Andrew Tridgell
9a1bac06d4
GCS_MAVLink: added send_battery2()
2014-08-09 22:50:14 +10:00
Andrew Tridgell
f49258eb31
GCS_MAVLink: added send_statustext_all() method
...
used for sending text messages from libraries
2014-08-08 13:54:21 +10:00
Andrew Tridgell
786661ca2b
GCS_MAVLink: better handling of high severity STATUSTEXT messages
2014-08-07 12:55:52 +10:00
Andrew Tridgell
a21998aece
GCS_MAVLink: prevent integer underflow with comm_get_txspace()
2014-07-27 22:12:08 +10:00
Andrew Tridgell
3020d91dcd
GCS_MAVLink: keep a bitmap of what mavlink channels are active
...
- this will allow for looping over active channels in libraries
- expose active channel mask
2014-07-24 21:45:46 +10:00
Andrew Tridgell
ddb030088d
GCS_Mavlink: moved some more mavlink functions to GCS_Common.cpp
2014-07-13 15:37:49 +10:00
Randy Mackay
9103899048
GCS_Common: minor typo in comments
2014-07-06 17:00:52 +09:00
Andrew Tridgell
544d872d65
GCS_MAVLink: fixed a shadowed variable
2014-07-01 09:18:20 +10:00
Andrew Tridgell
bcb3d1af14
GCS_MAVLink: fixed flymaple build
...
has dual GPS but no RTK support
2014-06-30 10:51:19 +10:00
Niels Joubert
baf0697f48
GCS_MAVLink: Add support for GPS_RTK messages
2014-06-30 10:30:16 +10:00
Andrew Tridgell
0b6407256c
GCS_MAVLink: moved 3 more send_*() functions to GCS_Common.cpp
2014-05-28 09:35:30 +10:00
Andrew Tridgell
63da53c842
GCS_MAVLink: moved main update() routine into GCS_Common.cpp
...
this fixes a common timeout error with loading large missions, and
means less per-vehicle code
2014-05-21 12:45:25 +10:00
Andrew Tridgell
49e7ee9ba7
GCS_MAVLink: added setup_uart() method
...
this provides a common way of dealing with UART setup for a GCS
instance. It includes code to cope with SiK radios stuck in bootloader
mode.
2014-05-16 11:44:33 +10:00
Andrew Tridgell
cf9b67d8fc
GCS_MAVLink: prevent uninitialised bytes being written to a serial port
2014-04-27 15:34:30 +10:00
Andrew Tridgell
f05b90bfd2
GCS_MAVLink: fixed some compiler warnings
2014-03-24 12:52:39 +11:00
Randy Mackay
3efad982c0
GCS_Mavlink: return MISSION_INVALID when conversion fails
...
Requested by MichaelO to allow better error message to be displayed to
user when the mission upload from the GCS to vehicle fails
2014-03-22 11:29:36 +09:00
Andrew Tridgell
8af9573806
GCS_MAVLink: allow logging of RADIO_STATUS, very useful for link analysis
2014-03-20 09:56:37 +11:00
Andrew Tridgell
0832aba6bc
GCS_MAVLINK: moved deferred message handling into common code
2014-03-19 12:14:15 +09:00
Andrew Tridgell
8d89a64312
GCS_MAVLink: moved handling of MISSION_ITEM into common code
2014-03-19 12:14:09 +09:00
Andrew Tridgell
965f6bd3bd
GCS_MAVLink: make DataFlash a pointer
...
handle sketches where DataFlash is not available
2014-03-19 12:13:37 +09:00
Andrew Tridgell
b85c5123b2
GCS_MAVLink: added save parameter to handle_request_data_stream()
...
this allows copter to not save stream rate changes
2014-03-19 12:13:35 +09:00
Andrew Tridgell
79bb14b8c1
GCS_MAVLink: moved RADIO_STATUS handling into common code
2014-03-19 12:13:34 +09:00
Andrew Tridgell
144217ac74
GCS_MAVLink: moved parameter and stream handling into common code
...
this keeps it in common between vehicles, and saves stack space
2014-03-19 12:13:32 +09:00
Andrew Tridgell
0b811ba6a9
GCS_MAVLink: added have_flow_control() method
...
can be used to change speed of handling some protocol methods, as we
know communication will be reliable
2014-03-19 12:13:25 +09:00
Randy Mackay
c462adf2ee
GCS_MAVLink: added five handle_mission methods
...
The five methods moved from the vehicle specific code are
handle_mission_request_list, set_current, count, clear_all and
write_partial_list
2014-03-19 12:13:19 +09:00
Randy Mackay
3938fb7255
GCS_MAVLink: loiter direction removed
...
This is now handled in Mission library
2014-03-19 12:13:18 +09:00
Andrew Tridgell
add2416dbe
GCS_MAVLink: added handle_mission_request() common function
...
this handles requests for mission items, using stack saving
Pair-Programmed-With: Randy Mackay <rmackay9@yahoo.com>
2014-03-19 12:13:10 +09:00
Andrew Tridgell
9aea781248
GCS_MAVLink: moved send_ahrs2 to common code
2014-02-15 05:48:16 +11:00
Andrew Tridgell
87355127ca
GCS_MAVLink: added send_power_status()
2014-02-15 05:00:09 +11:00
Andrew Tridgell
af124a8a45
GCS_MAVLink: moved send_meminfo() to GCS_Common.cpp
2013-12-28 16:00:19 +11:00
Andrew Tridgell
6d356efa22
GCS_MAVLink: moved some more functions into GCS_Common.cpp
2013-12-17 12:00:44 +11:00
Andrew Tridgell
d034a4108b
GCS_MAVLink: started adding MAVLink log download
2013-12-17 11:51:35 +11:00