Commit Graph

21877 Commits

Author SHA1 Message Date
Andrew Tridgell
4636a4c458 HAL_ChibiOS: support LEDs with a wider range of frequencies
this fixed LEDs on FMUv5 boards on first 4 aux channels. We need to
round up not round down in the resulting bitrate
2019-11-18 15:54:36 -08:00
Peter Barker
6c0b4206c5 AP_Common: remove is-zero checks for Location::offset
Only one call in 160 actually passes these in as zeroes, so doing the
checks vastly outweighs the benefits of not doing the maths

We do call this a lot when doing terrain checks.
2019-11-19 10:49:19 +11:00
Randy Mackay
d18432adaa AP_Terrain: leave ENABLE as 1 if memory alloc fails 2019-11-19 10:16:25 +11:00
Randy Mackay
f71e55e368 AP_Arming: add mission and rangefinder to param desc 2019-11-19 10:16:25 +11:00
Randy Mackay
b796ac93f0 AP_Arming: add terrain init check to system checks 2019-11-19 10:16:25 +11:00
Randy Mackay
649058adb8 AP_Terrain: add init_failed
allows external caller to determine if terrain database failed to initialise
2019-11-19 10:16:25 +11:00
Randy Mackay
1d5e9ef48b AP_Terrain: constify get_statistics and bitount64 2019-11-19 10:16:25 +11:00
Andrew Tridgell
fb84da3415 AP_SerialManager: don't show parameters for serial ports that don't exist
saves a bit of user confusion
2019-11-19 07:13:20 +08:00
Andrew Tridgell
4745c9f78d HAL_ChibiOS: setup define for number of serial ports 2019-11-19 07:13:20 +08:00
Andrew Tridgell
9dc618ddd4 AP_InertialSensor: added gyro_harmonic_notch_enabled() 2019-11-19 07:08:01 +08:00
Andrew Tridgell
77d21f9f5d AP_InertialSensor: return HarmonicNotchDynamicMode 2019-11-19 07:08:01 +08:00
Andrew Tridgell
f6c3c73037 Filter: switch harmomic notch mode to enum class 2019-11-19 07:08:01 +08:00
Andrew Tridgell
a415423975 AP_TECS: removed TECS_LAND_PMIN
thanks to TunaLobster for pointing out that it is redundent
2019-11-19 07:50:40 +11:00
Michel Pastor
ada1239012 AP_Baro: fix PROBE_EXT parameter description 2019-11-18 08:23:33 +08:00
bnsgeyer
417570df70 AP_Motors: tradheli - TAIL_SPEED metadata correction 2019-11-18 08:21:40 +08:00
Andrew Tridgell
ebf0c48903 AP_ICEngine: added idle governor 2019-11-17 20:10:54 +11:00
Andrew Tridgell
4d50996780 SITL: added MegaSquirt EFI simulation 2019-11-17 20:10:54 +11:00
Andrew Tridgell
eb582ac0cc AP_InertialSensor: avoid SITL build on non-SITL 2019-11-17 20:10:54 +11:00
Andrew Tridgell
b6d1170c2e HAL_SITL: update EFI simulation 2019-11-17 20:10:54 +11:00
Andrew Tridgell
7e7bae9d55 AP_RPM: added EFI backend 2019-11-17 20:10:54 +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
Andrew Tridgell
9799302225 AP_SerialManager: Add EFI_MS Protocol option 2019-11-17 20:10:54 +11:00
Sriram Sami
f8cf388236 AP_EFI: Add AP_EFI Library 2019-11-17 20:10:54 +11:00
Andrew Tridgell
0751756e91 HAL_ChibiOS: retain OPENDRAIN if set on a pin
this allows OPENDRAIN when set on a pin to be retained when set with a
pinMode(). This fixes a partially lit B/E LED on the Pixhawk4
2019-11-17 11:45:38 +11:00
Andrew Tridgell
379e3d60a1 AP_GPS: fixed sizes of config items 2019-11-16 15:28:52 +11:00
Michael du Breuil
63a6a1084c AP_GPS: UBlox: Fix the assumption that all keys are 1 byte keys 2019-11-16 15:28:52 +11:00
Michael du Breuil
150a4edcf2 AP_GPS: UBlox fix not listing the time mode as a configuration reason 2019-11-16 15:28:52 +11:00
Andrew Tridgell
7bec9d87b4 AP_GPS: fixed TMODE config issue on non-F9 GPS
thanks to Michel Pastor for reporting this
2019-11-16 15:28:52 +11:00
Randy Mackay
49069c7ad5 AP_Proximity: new lightware SF40C driver
New driver using latest streaming interface
Old driver left in place because older devices cannot be updated
2019-11-15 12:25:53 +08:00
Randy Mackay
a747610fc1 AP_Proximity: backup lightware SF40C driver to v09 2019-11-15 12:25:53 +08:00
Daniel Magree
209bb132fa HAL_Linux: disable input modifications on serial interface for rc receiver
Make sure to clear CBAUD before setting the baud and disable
input modifications.

Fix for #12162

This change removes input options that can modify the input data stream.
INLCR: map new line to carriage return
ICRNL: map carriage return to new line
IUCLC: map upper case to lower case
IGNCR: ignore carriage return
BRKINT: send SIGINT on serial break
2019-11-13 09:02:30 -08:00
Randy Mackay
0844077df8 AP_RangeFinder: TYPE param desc clarification for Benewake lidar
This renames some of the TYPE parameter's driver options:

19 :BenewakeTF02 is unchanged
20: BenewakeTFMini becomes BenewakeTFMini/Plus-Serial
25: BenewakeTFMiniPlus becomes BenewakeTFMini/Plus-I2C
27: BenewakeTF03 is unchanged
2019-11-13 10:28:17 +08:00
Patrick José Pereira
e52fc375c4 Sub: Add fake sea floor and update range
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2019-11-12 10:02:29 -08:00
Randy Mackay
93e1f7d46a RC_Channel: init aux function cases in alphabetical order 2019-11-12 18:56:13 +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
da3bef36fa AP_Avoidance: reorder avoiding and sending GCS notification
handling the avoidance updates the state which indicates what the
vehicle is actually doing, which is what we send to the GCS
2019-11-12 13:48:09 +11:00
Peter Barker
54b1159a16 AP_Avoidance: add singleton 2019-11-12 13:48:09 +11:00
Henry Wurzburg
1238d4b3e6 RC_Channel: add ADSB Avoidance enable option to RC options for plane 2019-11-12 13:48:09 +11:00
Peter Barker
e12a841eb5 RC_Channel: move support for ADSB avoidance switch enable up 2019-11-12 13:48:09 +11:00
Peter Barker
3fb596d5ae RC_Channel: don't enter the config error loop on unknown options
... unless we are in SITL

Users moving backwards and forwards between versions can hit this case
too easily.

We probably need a better story around this error loop so it's less
confusing to the user about what's going on.
2019-11-12 09:20:03 +08:00
Randy Mackay
0af830bbb7 AP_Terrain: minor comment fix 2019-11-12 09:10:21 +08:00
Peter Barker
7b32f2876e AP_Mount: change type of roi_target_set to boolean 2019-11-12 07:52:22 +08:00
Peter Barker
a893a5483c GCS_MAVLink: support sysid targetting 2019-11-12 07:52:22 +08:00
Peter Barker
c649fd1468 AP_Mount: support sysid targetting 2019-11-12 07:52:22 +08:00
Randy Mackay
ae8f9a70d0 AP_RangeFinder: update Type and Pin parameter values
The _TYPE change is to remove the "v2" from the LidarLite description because both v2 and v3 are supported
The _PIN change is to make it more clear that any of the auxiliary pwm pins can be used for PWM input
2019-11-12 07:30:55 +08:00
Peter Barker
ac7111f1d1 GCS_MAVLink: adjust for renaming of RangeFinder files 2019-11-12 07:14:37 +08:00
Peter Barker
0e6f3afe51 AP_Proximity: adjust for renaming of RangeFinder files 2019-11-12 07:14:37 +08:00
Peter Barker
fe8599d6d7 AP_NavEKF3: adjust for renaming of RangeFinder files 2019-11-12 07:14:37 +08:00
Peter Barker
99689f65f8 AP_NavEKF2: adjust for renaming of RangeFinder files 2019-11-12 07:14:37 +08:00
Peter Barker
35e987c663 AP_RangeFinder: adjust for renaming of RangeFinder files 2019-11-12 07:14:37 +08:00
Peter Barker
7c9ab0203d AP_RangeFinder: rename source files to include AP_ prefix
This makes them look like most of our libraries
2019-11-12 07:14:37 +08:00
Peter Barker
b1f8982292 AP_RangeFinder: remove old AP_RangeFinder.h
Making way to move the actual header into place
2019-11-12 07:14:37 +08:00
Willian Galvani
168a182310 SITL: Sub: add angular drag based on a laminar, external flow 2019-11-11 07:39:57 -08:00
Willian Galvani
393b018f31 SITL: Sub: Fix rotational physics logic 2019-11-11 07:39:57 -08:00
Willian Galvani
fbbfbe0103 SITL: Sub: Use proper phyisics for thrusters 2019-11-11 07:39:57 -08:00
Willian Galvani
9c2ffed876 SITL: Submarine: add torque for static stability
Subs are statically stable regarding pitch and roll.
This patch reproduces this in SITL
2019-11-11 07:39:57 -08:00
Willian Galvani
394aff6535 SITL: add deadzones to Sub thrusters PWM signals 2019-11-11 07:39:57 -08:00
Willian Galvani
1e2340fbb4 SITL: Fix buoyancy direction for earth-frame
Previously the sub would just go upwards, so rolling it 180º caused it to sink
2019-11-11 07:39:57 -08:00
Willian Galvani
e190d99bc6 SITL: Add 6dof frame for Sub 2019-11-11 07:39:57 -08:00
Willian Galvani
cc45aeb526 SITL: get rid of frame_vectored.h for Sub 2019-11-11 07:39:57 -08:00
Randy Mackay
a4d4513da4 AP_LandingGear: send-text only if servo output has been configured 2019-11-11 17:54:29 +11:00
Randy Mackay
7c034990b5 AC_Fence: relax sys-status healthy reporting 2019-11-11 07:55:50 +08:00
Andrew Tridgell
dafd030904 AP_Airspeed: switched to recursive semaphore
this is needed by the SDP3X driver. It is the simplest fix for the
issue
2019-11-10 18:50:08 +11:00
Andrew Tridgell
8aa781206d AP_GPS: fixed signed/unsigned comparisons 2019-11-09 17:11:32 +11:00
Andrew Tridgell
b7c9391619 AP_GPS: support Fix2 message for UAVCAN
this allows for RTK fix levels
2019-11-09 17:11:32 +11:00
Andrew Tridgell
632114d687 AP_GPS: support RTCMStream for RTCM injection on UAVCAN 2019-11-09 17:11:32 +11:00
Andrew Tridgell
6c31fb1bb6 AP_GPS: added automatic config of TMODE on F9
the Drotek F9 GPS ships with TMODE enabled, which means we don't get a
3D fix.

This also adds the VALGET/VALSET msgs we will need for automatic
moving baseline config
2019-11-09 17:11:32 +11:00
Andrew Tridgell
4dd1ec37f1 AP_UAVCAN: support RTCMStream for RTCM injection 2019-11-09 17:11:32 +11:00
Andrew Tridgell
fdd2e93f7e HAL_ChibiOS: disable debug port on f103 to save memory 2019-11-09 17:11:32 +11:00
Andrew Tridgell
a90a2e20dc HAL_ChibiOS: enable CAN callbacks
this allows for much more reliable CAN comms in AP_Periph
2019-11-09 17:11:32 +11:00
Peter Barker
d0e62b0e0b AP_RangeFinder: serial subclasses rely on base class for update() 2019-11-09 08:01:53 +11:00
Peter Barker
60cbefc1ae AP_RangeFinder: move update function to serial base class 2019-11-09 08:01:53 +11:00
Peter Barker
b18f1a8e22 AP_RangeFinder: move uLanding to using common serial backend 2019-11-09 08:01:53 +11:00
Peter Barker
9829a1d08b AP_RangeFinder: move wasp to using common serial backend 2019-11-09 08:01:53 +11:00
Peter Barker
62f2f3e19e AP_RangeFinder: factor constructor, use to move Lanbao to serial baseclass 2019-11-09 08:01:53 +11:00
Peter Barker
acc1f955ef AP_RangeFinder: make Benewake backend use new intermediate class 2019-11-09 08:01:53 +11:00
Peter Barker
0246dd990e AP_RangeFinder: make MaxsonarSerialLV backend use new intermediate class 2019-11-09 08:01:53 +11:00
Peter Barker
ff7c5af437 AP_RangeFinder: make LeddarOne backend use new intermediate class 2019-11-09 08:01:53 +11:00
Peter Barker
15d3a59d67 AP_RangeFinder: make NMEA backend use new intermediate class 2019-11-09 08:01:53 +11:00
Peter Barker
82268ab12c AP_RangeFinder: make BLPing backend use new intermediate class 2019-11-09 08:01:53 +11:00
Peter Barker
692c89a972 AP_RangeFinder: make LightWareSerial backend use new intermediate class 2019-11-09 08:01:53 +11:00
Peter Barker
3538fe360b AP_RangeFinder: add intermediate serial backend class to share common code 2019-11-09 08:01:53 +11:00
Peter Barker
11b372a986 AP_NavEKF3: use enum-class for RangeFinder Status 2019-11-09 08:01:53 +11:00
Peter Barker
9735684184 AP_NavEKF2: use enum-class for RangeFinder Status 2019-11-09 08:01:53 +11:00
Peter Barker
82db4383d4 AP_RangeFinder: use enum-class for Status 2019-11-09 08:01:53 +11:00
Peter Barker
1989decbc1 AP_RangeFinder: use enum-class for RangeFinder function 2019-11-09 08:01:53 +11:00
Peter Barker
db36ef3433 Sub: use enum-class for RangeFinder type 2019-11-09 08:01:53 +11:00
Peter Barker
ea26e94f66 AP_RangeFinder: use enum-class for RangeFinder type 2019-11-09 08:01:53 +11:00
Peter Barker
c1acdc4994 SITL: increase simulated rangefinder frequency to 5Hz 2019-11-09 08:01:53 +11:00
Peter Barker
7b046c8b75 SITL: improve testing instructions for simulated rangefinders 2019-11-09 08:01:53 +11:00
Peter Barker
fdb9fb2f62 AP_HAL_SITL: add support for simulated serial rangefinders
AP_HAL_SITL: add Benewake rangefinder simulator

AP_HAL_SITL: add support for simulated LightWareSerial rangefinder

AP_HAL_SITL: add support for simulated Lanbao rangefinder

AP_HAL_SITL: add support for simulated BLping rangefinder

AP_HAL_SITL: add support for simulated LeddarOne rangefinder

AP_HAL_SITL: add support for simulated uLanding rangefinders

AP_HAL_SITL: add support for simulated MaxsonarSerialLV rangefinders

AP_HAL_SITL: add support for simulated Wasp rangefinders

AP_HAL_SITL: add support for simulated NMEA rangefinders
2019-11-08 20:12:28 +11:00
Peter Barker
df0233a7d1 SITL: add support for simulated serial rangefinders
SITL: add base class for serial rangefinder simulators

SITL: add Benewake rangefinder simulator

SITL: add support for simulated LightWareSerial rangefinder

SITL: add support for simulated Lanbao rangefinder

SITL: add support for simulated BLping rangefinder

SITL: add support for simulated LeddarOne rangefinder

SITL: add support for simulated uLanding rangefinders

SITL: add support for simulated MaxsonarSerialLV rangefinders

SITL: add support for simulated Wasp rangefinders

SITL: add support for simulated NMEA rangefinders
2019-11-08 20:12:28 +11:00
Peter Barker
990273a778 SITL: add accessor for rangefinder range 2019-11-08 20:12:28 +11:00
Peter Barker
9da0e480f2 AP_HAL_SITL: add support for bi-directional simulated serial devices 2019-11-08 20:12:28 +11:00
Peter Barker
270831d70d SITL: add bidirectional communication for simulated serial devices 2019-11-08 20:12:28 +11:00
Peter Barker
10c50844fd AP_HAL: stop emitting extra CR before a LF as part of our printf 2019-11-08 17:37:04 +11:00
Peter Barker
f407e0dd55 AP_Airspeed: correct example; need instantiated AHRS for windspeed_max 2019-11-08 14:34:15 +11:00
Matt Lawrence
7a63bda027 Frame_params: Updated solo params for Copter 4 2019-11-08 07:28:17 +08:00
Mark Whitehorn
a25846b8a2 GCS_MAVLink: change in_sensor_config_error to in_config_error 2019-11-08 10:14:34 +11:00
Mark Whitehorn
3873baf676 AP_HAL_SITL: change in_sensor_config_error to in_config_error 2019-11-08 10:14:34 +11:00
Mark Whitehorn
f8d4cba667 AP_Param: rename sensor_config_error to config_error 2019-11-08 10:14:34 +11:00
Mark Whitehorn
00948c33d5 AP_InertialSensor: rename sensor_config_error to config_error 2019-11-08 10:14:34 +11:00
Mark Whitehorn
5276cb7f2b AP_IOMCU: rename sensor_config_error to config_error 2019-11-08 10:14:34 +11:00
Mark Whitehorn
a1868b8b67 AP_Baro: rename sensor_config_error to config_error 2019-11-08 10:14:34 +11:00
Mark Whitehorn
285901f57c RC_Channel: enter config_error loop for invalid RC option 2019-11-08 10:14:34 +11:00
Mark Whitehorn
9cf708b846 AP_BoardConfig: rename sensor_config_error to config_error 2019-11-08 10:14:34 +11:00
Mark Whitehorn
7f6e89bee8 RC_Channel: enter error loop on invalid RC option 2019-11-08 10:14:34 +11:00
Mark Whitehorn
c5abcb5584 RC_Channel: don't panic on unsupported RCn_OPTION in SITL 2019-11-08 10:14:34 +11:00
Peter Barker
3f9a4ee5f9 AP_HAL: fix unit test compilation due to -Werror=format-truncation 2019-11-06 21:42:18 +11: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
7139c1121f AP_Mount: correct use of disparate altitude frames in AP_Mount 2019-11-05 19:55:45 +11:00
Peter Barker
47ad331135 AP_Mount: use AHRS singleton to get current position 2019-11-05 19:55:45 +11:00
Peter Hall
58d2c9669e AP_HAL_SITL: pass ADSB home location not string 2019-11-05 11:46:59 +11:00
Peter Hall
3d8a5de1f0 SITL: ADSB: pass home location not string 2019-11-05 11:46:59 +11:00
Henry Wurzburg
78e51ac03f SRV_Channel: remove winch from SERVOx_FUNTION list since its disabled 2019-11-05 11:30:43 +11:00
Henry Wurzburg
f1efc957fc RC_Channel: OPTION:Copter re-order,add STANDBY, rmv winch,Rover rename Simple 2019-11-05 11:30:43 +11:00
Peter Barker
48922d76f5 AP_KDECAN: correct format string issue 2019-11-05 11:29:08 +11:00
Peter Barker
acd03c6636 SIM_AirSim: correct format string issue 2019-11-05 11:29:08 +11:00
Peter Barker
b0f3c89939 AP_HAL_SITL: correct format string 2019-11-05 11:29:08 +11:00
Peter Barker
66d460c19b GCS_MAVLink: correct format in short-write panic message 2019-11-05 11:29:08 +11:00
Peter Barker
cbe73b91d5 AP_HAL_Linux: correct format-string warnings
Using the string template to determine the size of the array to print
into strikes issues as varargs passes the stack variables as integer
types, so the perceived range is larger.
2019-11-05 11:29:08 +11:00
Peter Barker
f5635a557a AP_FlashStorage: correct format-string warnings 2019-11-05 11:29:08 +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
Mark Whitehorn
23ee9eef5f AP_NavEKF2: fail prearm on any core setup failure 2019-11-05 11:23:54 +11:00
Mark Whitehorn
489ae83604 AP_NavEKF2: handle core setup failures 2019-11-05 11:23:54 +11:00
Mark Whitehorn
7c6630e216 AP_NavEKF2: EKF2 prefix for prearm failures and camelCase 2019-11-05 11:23:54 +11:00
Mark Whitehorn
95ea6ad807 AP_NavEKF2: provide reasons for init failures 2019-11-05 11:23:54 +11:00
Peter Barker
561920aad6 AC_AutoTune: cope with change in namespace of LogEvent enum 2019-11-05 08:19:26 +08:00
Peter Barker
8686fb30f8 RC_Channel: remove old comments to do with gripper grab/release 2019-11-05 08:19:26 +08:00
Peter Barker
08d99b96ec AP_Gripper: log event when gripper grabbed or released 2019-11-05 08:19:26 +08:00
Peter Barker
daf071f7f6 RC_Channel: cope with change in namespace of LogEvent enum 2019-11-05 08:19:26 +08:00
Peter Barker
04c005a213 AP_Parachute: cope with change in namespace of LogEvent enum 2019-11-05 08:19:26 +08:00
Peter Barker
f337d011e7 AP_Logger: make LogEvent an enum class, split off LogDataID
We were mixing the enumeration values across different messages, which
isn't great
2019-11-05 08:19:26 +08:00
Andrew Tridgell
381af923c5 AP_Scripting: re-gen 2019-11-04 13:06:45 +11:00
Andrew Tridgell
8ad2920151 AP_SerialLED: check for valid channel 2019-11-04 13:06:08 +11:00
Andrew Tridgell
bc7651cfcb AP_Scripting: fixed chan check in LED bindings 2019-11-04 13:05:52 +11:00
Andrew Tridgell
48ba63ba11 AP_Scripting: added example script for LEDs
show LED values based on roll
2019-11-04 13:01:59 +11:00
Andrew Tridgell
7caac67487 AP_Scripting: re-gen bindings 2019-11-04 13:01:59 +11:00
Andrew Tridgell
ea681c7a1e AP_Scripting: added bindings for LEDs 2019-11-04 13:01:59 +11:00
Andrew Tridgell
38ba08e0ce AP_Scripting: increase default heap size
we will need a better fix than this. Adding a couple of bindings costs
us nearly 1k of ram even if unused
2019-11-04 13:01:59 +11:00
Andrew Tridgell
e598c69a22 SRV_Channel: added singleton access for Lua 2019-11-04 13:01:59 +11:00
Andrew Tridgell
fbfe11f9ed AP_Notify: implement SITL serial LEDs 2019-11-04 13:01:59 +11:00
Andrew Tridgell
fc4577dce8 HAL_SITL: support simulated serial LEDs 2019-11-04 13:01:59 +11:00
Andrew Tridgell
ae289052e9 SITL: added LED state 2019-11-04 13:01:59 +11:00
Andrew Tridgell
513b279f46 AP_SerialLED: added library API to access WS2812 LEDs
used by Lua scripting
2019-11-04 13:01:59 +11:00
Andrew Tridgell
1db4afb844 HAL_ChibiOS: enable MatekF765 LED pin
- use tonealarm for buzzer
 - add more baro options
2019-11-04 08:14:27 +11:00
Andrew Tridgell
43da68ae59 GCS_MAVLink: added ftp_push_replies() 2019-11-02 22:52:06 +11:00
Andrew Tridgell
10ed848dd7 GCS_MAVLink: fixed comment 2019-11-02 22:52:06 +11:00
Andrew Tridgell
7c35d2d56a AP_Filesystem: make unlink do both directories and files on posix
match FATFS behaviour
2019-11-02 22:52:06 +11:00
Andrew Tridgell
15fc3f3d75 GCS_MAVLink: fixed session handling for ftp 2019-11-02 22:52:06 +11:00
Andrew Tridgell
00549d13fa GCS_MAVLink: rename emit_dir_entry to gen_dir_entry
comment from Sid
2019-11-02 22:52:06 +11:00
Andrew Tridgell
e5321b6201 GCS_MAVLink: fixes from my review 2019-11-02 22:52:06 +11:00
Michael du Breuil
6f538dd45a GCS_MAVLink: Initial FTP support 2019-11-02 22:52:06 +11:00
Michael du Breuil
dc0e4bea53 AP_Terrain: Don't include all of AP_FS 2019-11-02 22:52:06 +11:00
Michael du Breuil
b0e232b30b AP_Filesystem: Split the available define to it's own header 2019-11-02 22:52:06 +11:00
Michael du Breuil
14bf946fe2 AP_Filesystem: Add dir type to fatfs 2019-11-02 22:52:06 +11:00
Andrew Tridgell
236ce28339 AP_InertialSensor: updated for heater changes 2019-11-02 16:31:04 +11:00
Andrew Tridgell
a11f2b5cfb AP_IOCMU: added singleton in AP namespace 2019-11-02 16:31:04 +11:00
Andrew Tridgell
64aae4f67e HAL_ChibiOS: removed heater control 2019-11-02 16:31:04 +11:00
Andrew Tridgell
f458d58dde AP_BoardConfig: moved heater PI to AP_BoardConfig
and made tunable
2019-11-02 16:31:04 +11:00
Andrew Tridgell
ad69f6802f AC_PID: added AC_PI controller
will be used by IMU heater
2019-11-02 16:31:04 +11:00
Michael du Breuil
d623da0de6 AP_GPS: Always send GPS2_RAW after we've seen the second GPS
This significantly improves the GCS's ability to correctly display whats
happening with the second GPS.
2019-11-02 10:35:08 +11:00
Peter Barker
4838ee6f58 GCS_MAVLink: check reply channel for space rather than current channel 2019-11-02 10:34:03 +11:00
Andrew Tridgell
d8445928d1 HAL_ChibiOS: fixed SPI timeout bug
thanks to CUAV for noticing
2019-11-01 22:11:17 +11:00
Randy Mackay
45ce8e8d79 AP_ToshibaCAN: add get_present_mask for use in pre-arm checks 2019-11-01 16:09:52 +08:00
Randy Mackay
ad55b961a4 AP_ToshibaCAN: consume current sent by ESC 2019-11-01 16:09:52 +08:00
Randy Mackay
f6b669e3d8 AP_ToshibaCAN: rename millivolts to voltage_mv
also add some comments
2019-11-01 16:09:52 +08:00
Peter Barker
3e4e7bdd18 AC_AutoTune: Log_Write events directly rather than via subclass 2019-11-01 14:47:52 +08:00
Andrew Tridgell
6c0c09e690 Revert "HAL_ChibiOS: lower speed of mpu9250"
This reverts commit a4e51f3942.

This commit led to more errors on the first IMU on a normal
CubeBlack. I don't yet know why this happens, but I'm removing this in
master for now as it affects primary IMU
2019-11-01 11:20:32 +11:00
Andrew Tridgell
22f0e8a065 HAL_ChibiOS: added RM3100 in f303-GPS 2019-11-01 10:53:53 +11:00
Andrew Tridgell
207dffba88 HAL_ChibiOS: moved compass support for f103-GPS
not needed for other builds
2019-11-01 10:53:53 +11:00
Andrew Tridgell
9e9be95943 HAL_Linux: fixed build 2019-11-01 10:53:53 +11:00
Andrew Tridgell
53fe84e88a AP_FlashStorage: fix for F3 MCUs 2019-11-01 10:53:53 +11:00
Andrew Tridgell
1d44718016 HAL_ChibiOS: added f303-periph and f303-GPS firmware 2019-11-01 10:53:53 +11:00
Andrew Tridgell
7df87b5a8b AP_UAVCAN: fix for renamed AP_HAL::CAN 2019-11-01 10:53:53 +11:00
Andrew Tridgell
bc1de7a208 HAL_ChibiOS: support STM32F3xx MCUs 2019-11-01 10:53:53 +11:00
Andrew Tridgell
29a2351fd0 AP_HAL: rename AP_HAL::CAN to AP_HAL::CANHal
avoid conflict with ChibiOS STM32F3xx headers
2019-11-01 10:53:53 +11:00
Andrew Tridgell
3750ed2925 AP_BLHeli: fixed critical errors caused by BLHeli code 2019-11-01 08:44:54 +11:00
Leonard Hall
5979c750f9 AP_Motors: yaw headroom fix 2019-10-31 16:12:11 +09:00
Leonard Hall
3ca713fdcb AC_AttitudeControl: limit ATC_MOT_MIX_MAX in case of a fly away 2019-10-31 12:23:48 +08:00
Peter Barker
39863bf0b4 AP_Proximity: remove empty constructors
Well, some of them were only essentially empty
2019-10-31 11:58:15 +08:00
Peter Barker
5b2689a7a8 AP_Proximity: use rangefinder singleton 2019-10-31 11:58:15 +08:00
Peter Barker
34eff6d1c6 GCS_MAVLink: adjust for proximity status namespace change 2019-10-31 11:58:15 +08:00
Peter Barker
daba5e26a5 AC_Logger: adjust for proximity status namespace change 2019-10-31 11:58:15 +08:00
Peter Barker
64281eee60 AC_Arming: adjust for proximity status namespace change 2019-10-31 11:58:15 +08:00
Peter Barker
0d624785f3 AC_Avoid: adjust for proximity status namespace change 2019-10-31 11:58:15 +08:00
Peter Barker
8fe16f5627 AP_Proximity: use enum class for status 2019-10-31 11:58:15 +08:00
Peter Barker
f5f6eb8231 AP_Proximity: correct checking of valid instance in various getters 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
Peter Barker
de7e3acc29 AP_Proximity: use enum class for proximity type
Removes verbiage from AP_Proximity.cpp
2019-10-31 11:58:15 +08:00
Peter Barker
4962b7a98e AP_Proximity: stop passing serial manager around, use singleton 2019-10-31 11:58:15 +08:00
Leonard Hall
368a8028ae Heli: Prevent loss of yaw control during large angle recovery 2019-10-31 11:53:27 +08:00
Leonard Hall
5afb5b4956 AC_AttitudeControl: Prevent loss of yaw control during large angle recovery. 2019-10-31 11:53:27 +08:00
Randy Mackay
5b8d7a35e7 AP_BLHeli: minor style fix for get_average_moto_frequency_hz 2019-10-31 12:20:41 +09:00
Andy Piper
6381183aa3 AP_InertialSensor: expose harmonic notch tracking mode 2019-10-31 11:18:40 +08:00
Andy Piper
b242c5071b AP_BLHeli: add get_average_motor_frequency_hz() for dynamic filtering
correctly calculate rpm from erpm
2019-10-31 11:18:40 +08:00
Andy Piper
22111f59e8 Filter: add harmonic notch dynamic tracking mode
update harmonic notch REF docs
2019-10-31 11:18:40 +08:00
Leonard Hall
a8913d0df5 AP_Motors: Add full yaw range calculation back 2019-10-31 11:04:40 +08:00
Leonard Hall
f840f96276 AP_Motors: Freeze motor lost index on enabling thrust boost 2019-10-31 10:49:45 +08:00
Randy Mackay
f24afbcf4b AP_NavEKF3: initialise pre-arm failure message 2019-10-31 09:51:27 +08:00
Randy Mackay
cc5facf6d2 AP_NavEKF2: initialise pre-arm failure message 2019-10-31 09:51:27 +08:00
Mirko Denecke
fe46dc34d4 AP_RCProtocol: remove duplicated definition from protocol_detected 2019-10-31 08:24:30 +11:00
Michael du Breuil
38e17e2068 AP_Scripting: Add Location get_distance_NED and get_distance_NE
Fixes a regression with nil punning which broke Location:offset() and
adds a test script that is suitable for CI to test this sort of thing
2019-10-31 07:10:55 +11:00
Siddharth Purohit
8c413d3c09 HAL_ChibiOS: fix writing into a NULL pointer CANFD interrupt 2019-10-30 22:15:04 +11:00
Randy Mackay
96616343ce GCS_MAVLink: mission item support more mav frames 2019-10-30 18:27:07 +08:00
Andrew Tridgell
ecd9e45568 AP_Motors: switched tricopter to use rc_write_angle()
simplies tricopter handling
2019-10-30 16:01:15 +08:00
Andrew Tridgell
1fe146c409 AP_Compass: remove expected error
this happens with AK09916 probing on invensense sensor
2019-10-30 15:21:07 +11:00
Peter Barker
a08443ff19 SITL: break out a SIM_SerialDevice base class, use it for SIM_Vicon 2019-10-29 18:41:13 +11:00
Mark Whitehorn
6e73feca5c AP_NavEKF2: add prearm failure message for null core pointer 2019-10-29 11:59:29 +08:00
Mark Whitehorn
3e21ef1389 AP_NavEKF3: add prearm failure message for null core pointer 2019-10-29 11:59:29 +08:00
Andrew Tridgell
8f14ea9e80 HAL_ChibiOS: enable advanced timers if we have any N PWM channels 2019-10-29 13:09:14 +11:00
Andrew Tridgell
ff30ba87bc HAL_ChibiOS: fixed build of sparky2
running out of flash
2019-10-29 12:15:12 +11:00
yaapu
dddfaa256f Ap_Frsky_Telem: replaced the passthrough scheduler with a WFQ one.
This replaces the default scheduler with a WFQ one
2019-10-29 10:27:17 +11:00
Patrick José Pereira
e18883fddf SITL: Add missing shove forces in SIM_Submarine
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2019-10-29 09:44:24 +11:00
Andrew Tridgell
fcf9356e2c HAL_ChibiOS: fixed build of f103 rangefinder 2019-10-29 08:07:29 +11:00
Andrew Tridgell
76dd2f0838 AP_RangeFinder: fixed failover between rangefinders
this fixes the case where we have one rangefinder that can handle
short range and another that is good for long range but no good for
short range (quite common, eg radar and lidar)

If possible we want to use the first rangefinder that is in range for
the right orientation. If none are in range then use the first for the
orientation
2019-10-28 21:13:18 +11:00
vierfuffzig
c97f785443 AP_BLHeli: fix eRPM conversion 2019-10-28 21:09:22 +11:00
Andrew Tridgell
a4e51f3942 HAL_ChibiOS: lower speed of mpu9250
it isn't handling the full speed well, getting some SPI transfer
errors
2019-10-28 21:06:41 +11:00
Michael du Breuil
5bafd7d72c AP_GPS: Don't defeat the GCS message interval code 2019-10-28 00:26:28 -07:00
Andrew Tridgell
2708c99bfb AP_SerialManager: added set_protocol_and_baud()
used by AP_Periph for rangefinders
2019-10-28 15:53:16 +11:00
Andrew Tridgell
513fd4065b AP_Menu: use strtof() instead of atof() 2019-10-28 15:53:16 +11:00
Andrew Tridgell
34f5b40919 AP_IOMCU: use crc32_small() in AP_IOMCU
the slower speed is not noticible and this saves 1k ram
2019-10-28 15:53:16 +11:00
Andrew Tridgell
1ec921560e AP_WindVane: use strtof instead of atof
we don't need double precision
2019-10-28 15:53:16 +11:00
Andrew Tridgell
c7fce7568e AP_Proximity: use strtof instead of atof
we don't need double precision
2019-10-28 15:53:16 +11:00
Andrew Tridgell
31b0663115 AP_Param: use strtof instead of atof
we don't need double precision
2019-10-28 15:53:16 +11:00
Andrew Tridgell
ff2cfbaafb AP_Math: added smaller footprint crc32 2019-10-28 15:53:16 +11:00
Andrew Tridgell
5898dc757c AP_RangeFinder: use single precision string to float 2019-10-28 15:53:16 +11:00
Andrew Tridgell
b5af1edf0d HAL_ChibiOS: moved app_descriptor to start of flash
this prevents the bootloader from finding it's own image as a false
posititve in searching for the app_descriptor
2019-10-28 15:53:16 +11:00
Andrew Tridgell
3800d7c084 HAL_ChibiOS: added crazyflie2 bootloader 2019-10-28 09:27:31 +11:00
murata
233fb94417 AP_Baro: Add I2C Access 2019-10-27 20:02:27 +11:00
Andrew Tridgell
3e72538f07 AP_TECS: added TECS_LAND_PMIN for min pitch in flare
this is useful to narrow the range of available pitch after flare
2019-10-26 18:05:17 +11:00
Andrew Tridgell
d1bc0f236d HAL_ChibiOS: added pragma once for watchdog header 2019-10-26 15:32:10 +11:00
Andrew Tridgell
fc8d9e8af5 HAL_ChibiOS: added RTC_BOOT_FWOK value for RTC reboot register
this is used in CAN firmware to know if the main app firmware has run
for long enough to be considered good
2019-10-26 15:32:10 +11:00
Peter Barker
6b92f3dae9 AP_NMEA_Output: add example 2019-10-26 00:38:27 +11:00
Andrew Tridgell
378d5c7a5a HAL_ChibiOS: added expected delay in bootloader flash 2019-10-25 21:36:55 +11:00
Andrew Tridgell
7fb44d1164 AP_ROMFS: fixed return size for uncompressed ROMFS 2019-10-25 21:36:55 +11:00
Andrew Tridgell
4593697634 GCS_MAVLink: use new flash_bootloader() API 2019-10-25 21:36:55 +11:00
Andrew Tridgell
81325ab14d HAL_ChibiOS: fixed multi-page bootloader update
and use new enum
2019-10-25 21:36:55 +11:00
Andrew Tridgell
9a778418a5 AP_HAL: use enum for flash_bootloader() result 2019-10-25 21:36:55 +11:00
Peter Barker
f4433773be AP_Arming: adjust for rename of AP_UAVCAN_Server to AP_UAVCAN_DNA_Server 2019-10-25 20:24:54 +11:00
Peter Barker
4ddfe2715b AP_UAVCAN: adjust for rename of AP_UAVCAN_Server to AP_UAVCAN_DNA_Server 2019-10-25 20:24:54 +11:00
Peter Barker
8084e5c264 AP_UAVCAN: rename AP_UAVCAN_Server to AP_UAVCAN_DNA_Server 2019-10-25 20:24:54 +11:00
Andrew Tridgell
15f709e6ab SRV_Channel: added rate output channel docs 2019-10-25 17:11:56 +11:00
Andrew Tridgell
37566d079f AP_Motors: support direct rate outputs for multicopters 2019-10-25 17:11:56 +11:00
Andrew Tridgell
892f2d4256 SRV_Channel: added direct output of rate control on multicopters 2019-10-25 17:11:56 +11:00
Andrew Tridgell
6f9fda5094 HAL_ChibiOS: removed CAN_APP_VERSION_MAJOR from hwdef.dat 2019-10-25 13:52:43 +11:00
Michael du Breuil
0edc8a55a0 AP_Scripting: Add plane failsafe example script 2019-10-25 08:48:22 +08:00
Michael du Breuil
610dff61d8 AP_Scripting: Fix nullable arguments numbering, add location bearing 2019-10-25 08:48:22 +08:00
Michael du Breuil
a99f67fd5b AP_Common: Add a radian method for getting location bearings 2019-10-25 08:48:22 +08:00
Michael du Breuil
82a7116142 AP_Scripting: Allow scripts to set the mode 2019-10-25 08:48:22 +08:00
Michael du Breuil
c369139be0 AP_Logger: Support new ModeReason 2019-10-25 08:48:22 +08: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
Michael du Breuil
a44a7f541b AP_Vehicle: Support set_mode 2019-10-25 08:48:22 +08:00
Peter Barker
0f4337b7b1 AP_HAL_Linux: release mutex lock before calling write(c)
It instantly tries to take it, but we're still holding it, leading to
instant failure.

This mirrors the same code in AP_HAL_ChibiOS.
2019-10-25 11:38:16 +11:00
Andrew Tridgell
2818151a39 AP_RangeFinder: disable some incompatible drivers for AP_Periph 2019-10-25 09:35:27 +11:00
Andrew Tridgell
1bf037297d HAL_ChibiOS: set correct APJ_BOARD_ID for ZubaxGNSS 2019-10-25 09:35:27 +11:00
Andrew Tridgell
83eeca2586 AP_Scripting: fixes for modified AP_ROMFS API
need to use AP_ROMFS::free()
2019-10-24 22:03:43 +11:00
Andrew Tridgell
c4d78a7d8c AP_OSD: fixes for modified AP_ROMFS API
need to use AP_ROMFS::free()
2019-10-24 22:03:43 +11:00
Andrew Tridgell
ef1aaa6db0 AP_IOMCU: fixes for modified AP_ROMFS API
need to use AP_ROMFS::free()
2019-10-24 22:03:43 +11:00
Andrew Tridgell
1a1d7e0525 AP_ROMFS: support uncompressed romfs data 2019-10-24 22:03:43 +11:00
Andrew Tridgell
49e669aa1f HAL_ChibiOS: support uncompressed bootloader on f103-periph
this allows update with very low memory
2019-10-24 22:03:43 +11:00
Andrew Tridgell
cffb434de8 HAL_ChibiOS: tweak stack on f103-periph 2019-10-24 22:03:43 +11:00
Andrew Tridgell
a3b61a1b02 HAL_ChibiOS: enable ROMFS for ZubaxGNSS and f103-periph
this allows for bootloader update
2019-10-24 22:03:43 +11:00
Andrew Tridgell
513e483821 AP_Compass: disable HIL for AP_Periph
this saves several k of flash
2019-10-24 22:03:43 +11:00
Andrew Tridgell
a224342b18 HAL_ChibiOS: enable ROMFS for CUAV_GPS 2019-10-24 22:03:43 +11:00
Andrew Tridgell
14cdac9202 AP_GPS: fixed GPS to UART mapping
this allows for first GPS as UAVCAN and 2nd as UART. That is not
possible currently unless you waste a uart
2019-10-24 14:37:30 +11:00
Peter Barker
f6b6aa68ed AP_Scripting: add a hello world example 2019-10-24 13:50:51 +11:00
Peter Barker
099379713c AP_Scripting: add simple example of a loop 2019-10-24 13:50:51 +11:00
Peter Barker
c30873097a AP_Logger: use ahrs singleton to log ATT, POS and AHRS2 2019-10-24 13:15:46 +11:00
Vlad-Andrei Dorobantu
d7132928d1 Copter: corrected undefined data member causing linking error 2019-10-24 10:00:35 +11:00
Randy Mackay
01c36fa6aa AP_Compass: LEARN param default to 0 for all vehicles 2019-10-23 17:15:57 +11:00
Peter Hall
43449a4adb AR_WPNav: remove unneeded overshoot methods 2019-10-23 08:28:39 +08:00
Andrew Tridgell
f69be70772 HAL_ChibiOS: save some memory in f103-periph build 2019-10-22 17:51:24 +11:00
Randy Mackay
b4a8691a9e AP_NavEKF3: remove wheel encoder update limit 2019-10-22 07:15:48 +08:00
Randy Mackay
63309c6925 AP_NavEKF3: suppress ekf fail-to-set-origin if core disabled 2019-10-22 07:15:48 +08:00
Randy Mackay
e32a8556b2 AP_NavEKF2: suppress ekf fail-to-set-origin if core disabled 2019-10-22 07:15:48 +08:00
Randy Mackay
353cb648f6 AP_RPM: rename px4-pwm to just pwm 2019-10-22 07:15:48 +08:00
Peter Barker
e84082a099 AP_Logger: canonicalize on STANDBY rather than STANDY_BY 2019-10-21 21:22:17 +08:00
Peter Barker
3bec1c7d4f RC_Channel: correct description of standby option
Also canonicalise on STANDBY rather than STANDBY
2019-10-21 21:22:17 +08:00
Andrew Tridgell
0a4576728e HAL_ChibiOS: support a app->bootloader comms region in SRAM
this allows for UAVCAN update without a 2nd BeginFirmwareUpdate call
2019-10-21 19:12:01 +11:00
Andrew Tridgell
5605ad6c59 HAL_ChibiOS: enable MissionPlanner compatible app descriptor 2019-10-21 19:12:01 +11:00
Andrew Tridgell
6b841e781c HAL_ChibiOS: pat watchdog immediately in expect_delay_ms()
this fixes a watchdog issue on AP_Periph if we don't have a timer
thread
2019-10-21 19:12:01 +11:00
Andrew Tridgell
7973a25c40 HAL_ChibiOS: fixed stack on ZubaxGNSS 2019-10-21 19:12:01 +11:00
Andrew Tridgell
910129eafc HAL_ChibiOS: enable watchdog in AP_Periph firmwares 2019-10-21 19:12:01 +11:00
Andrew Tridgell
e392416942 AP_BoardConfig: allow enable of watchdog in hwdef.dat
this will be used for AP_Periph
2019-10-21 19:12:01 +11:00
Andrew Tridgell
40431100a9 AP_Flashstorage: fixed init bug on F1
we can't mark available just before we mark in use on F1
2019-10-21 19:12:01 +11:00
Andrew Tridgell
5efaea2d92 HAL_ChibiOS: fixed flash storage in ZubaxGNSS 2019-10-21 19:12:01 +11:00
Andrew Tridgell
e376884377 HAL_ChibiOS: fixed Zubax bootloader debug 2019-10-21 19:12:01 +11:00
Andrew Tridgell
1f06aa069e HAL_ChibiOS: fixed uprintf() in bootloader 2019-10-21 19:12:01 +11:00
Andrew Tridgell
e6cb35090c HAL_ChibiOS: fixed page size for STM31F105 flash 2019-10-21 19:12:01 +11:00
Andrew Tridgell
0ef2a60682 HAL_ChibiOS: support ZubaxGNSS as a AP_Periph target 2019-10-21 19:12:01 +11:00
Andrew Tridgell
44f895ab16 HAL_ChibiOS: fixed for ZubaxGNSS build 2019-10-21 19:12:01 +11:00
Andrew Tridgell
8c796ecd2c HAL_ChibiOS: support f103-RangeFinder 2019-10-21 19:12:01 +11:00
Andrew Tridgell
ca1bd8be3c AP_RangeFinder: disable logging for AP_Periph 2019-10-21 19:12:01 +11:00
Andrew Tridgell
3cd7dd9f12 HAL_ChibiOS: disable GPS and MAG in base f103 build
enable in f103-GPS
2019-10-21 19:12:01 +11:00
Andrew Tridgell
282936eab2 AP_RangeFinder: allow for less rangefinder instances
for AP_Periph
2019-10-21 19:12:01 +11:00
Andrew Tridgell
3ca478747c HAL_ChibiOS: enable airspeed in f103-ADSB 2019-10-21 19:12:01 +11:00
Andrew Tridgell
f51378f2e8 AP_Airspeed: enable for use in AP_Periph 2019-10-21 19:12:01 +11:00
Andrew Tridgell
fa6b6140e3 HAL_ChibiOS: split out f103-GPS from base f103-periph
this makes it easier to create more peripheral variants
2019-10-21 19:12:01 +11:00
Tom Pittenger
bbd6f3aa6c SITL: morse simulator should generate packets from same vehicle sysid 2019-10-21 14:29:30 +09:00
Henry Wurzburg
119f0a95ad RC_Channel: added RC option for new takeoff mode 2019-10-21 08:41:58 +11:00
Mirko Denecke
b84dcd483d AP_HAL_ChibiOS: remove unnecessary tabs and whitespaces 2019-10-21 08:01:56 +11:00
Mirko Denecke
12c9e50aef AP_IOMCU: remove unnecessary tabs and whitespaces 2019-10-21 07:57:44 +11:00
Andrew Tridgell
e90bd27435 HAL_ChibiOS: fixed I2C on F103
we need to use open-drain, and the sign of the constant matters
2019-10-20 20:31:02 +11:00
Andrew Tridgell
6f11926dbd HAL_ChibiOS: enable NCP5623 LED in f103-GPS 2019-10-20 20:31:02 +11:00
Jaaaky
54f8e1137e AP_NavEKF3: added EK3_MAG_EF_LIM parameter
Adapted from EKF2 implementation as of commits
3835d2613, e9ed3540f and df4fc0fff
this sets a limit on the difference between the earth field from the
WMM tables and the learned earth field inside the EKF. Setting it to
zero disables the feature. A positive value sets the limit in mGauss.
2019-10-20 07:34:35 +11:00
Vlad-Andrei Dorobantu
83c641c76f AP_Compass: corrected the cause of SIGSEGV signal when running AP_Compass_test 2019-10-19 09:58:42 +11:00
Siddharth Purohit
eff316dd6b AP_KDECAN: update prearm method to support snprintf methods 2019-10-19 09:55:38 +11:00
Siddharth Purohit
9b2c060cc5 AP_Arming: add support for reporting UAVCAN Server errors 2019-10-19 09:55:38 +11:00
Siddharth Purohit
fb48d8ee1b AP_Math: add method for generating hash 2019-10-19 09:55:38 +11:00
Siddharth Purohit
2b410479af HAL_ChibiOS: remove unused code 2019-10-19 09:55:38 +11:00
Siddharth Purohit
4034af6ef1 StorageManager: add storage aread for CAN Dynamic Node Alloc 2019-10-19 09:55:38 +11:00
Siddharth Purohit
9bd379e236 AP_UAVCAN: setup uavcan server with internal storage 2019-10-19 09:55:38 +11:00
Peter Barker
aae524b9d5 AP_Mission: add sanity check that 16-bit commands aren't stored_in_location
This is a rather confusing problem when it happens during development,
so a sanity check is good.  What you see in dev is that your latitude
gets corrupted between when you store and retrieve it, with no warnings
that you're doing something wrong.
2019-10-18 15:16:21 +11:00
Randy Mackay
dee4e867e4 AP_Logger: add vibration failsafe error subsystem 2019-10-18 11:15:25 +09:00
Leonard Hall
e5f724bc3a AC_PosControl: add high vibration compensation 2019-10-18 11:15:25 +09:00
Randy Mackay
0052dcc8f8 AC_PID: update pid_info when integrator set 2019-10-18 11:15:25 +09:00
Randy Mackay
adf4d8fd47 AP_InertialNav: use ekf::get_vert_pos_rate during high vibration 2019-10-18 11:15:25 +09:00
Randy Mackay
5baed38266 AP_NavEKF3: reduce EK3_HRT_FILT max to 30 2019-10-18 11:15:25 +09:00
Paul Riseborough
5b1d9ed868 AP_NavEKF3: Add missing vertical position derivative calculation 2019-10-18 11:15:25 +09:00
Randy Mackay
e2d3afaaa7 AP_NavEKF2: reduce EK2_HRT_FILT max to 30 2019-10-18 11:15:25 +09:00
Paul Riseborough
c26c6fd078 AP_NavEKF2: Add missing vertical position derivative calculation
Use a third order order complementary filter to estimate the rate of change of vertical position output.
2019-10-18 11:15:25 +09:00
Randy Mackay
4a1247b9f7 AP_AHRS: add get_innovations 2019-10-18 11:15:25 +09:00
Leonard Hall
05f1161e63 RC_Channel: Support for Standby functions 2019-10-17 14:57:18 +09:00
Leonard Hall
e8e969af62 AP_Logger: Support for Standby functions 2019-10-17 14:57:18 +09:00
Leonard Hall
5acfc77a3c AC_AttitudeControl: Support for Standby functions 2019-10-17 14:57:18 +09:00
Michael du Breuil
3274398bc2 AP_Scripting: Fix up uint32_t manipulation, fix AP_Notify
This also adds a touched up version of the foxhunt demo that was done at
the 2019 developer unconf
2019-10-16 21:57:41 -07:00
Andrew Tridgell
c03796d7de GCS_MAVLink: fixed uninitialised bytes in send_named_float()
this fixes an issue with mavproxy with python3
2019-10-17 13:50:35 +11:00
Peter Barker
49687d4e5d AP_HAL_SITL: ToneAlarm doesn't play tones if disabled via param 2019-10-16 16:00:35 +11:00
Peter Barker
47fbf70e85 SITL: create SITL tonealarm files to hold enable parameter 2019-10-16 16:00:35 +11:00
Peter Barker
d6f10a12eb AP_Notify: add a simulated buzzer for SITL 2019-10-16 16:00:35 +11:00
Peter Barker
111c17d0b4 AP_HAL_SITL: add a simulated buzzer 2019-10-16 16:00:35 +11:00
Peter Barker
32ec6d7e9a SITL: add a simulated buzzer 2019-10-16 16:00:35 +11:00
Andrew Tridgell
df90cee8a0 AP_ADSB: added handle_adsb_vehicle() API
this allows for UAVCAN ADSB adapters
2019-10-16 13:13:24 +11:00
Andrew Tridgell
8650229ad4 AP_ADSB: added singleton interface 2019-10-16 13:13:24 +11:00
Andrew Tridgell
16bc7f800e AP_UAVCAN: support ADSB over UAVCAN 2019-10-16 13:13:24 +11:00
Andrew Tridgell
b9885034b1 HAL_ChibiOS: added a f103-ADSB firmware
for presenting a ping ADSB device as UAVCAN
2019-10-16 13:13:24 +11:00
Andrew Tridgell
85271a8747 HAL_ChibiOS: split out f103-GPS from base f103-periph
this makes it easier to create more peripheral variants
2019-10-16 13:13:24 +11:00
Michael du Breuil
e54acb8bde AP_Scripting: Add an example message interval script 2019-10-16 09:48:55 +09:00
Michael du Breuil
076cf0bdc8 AP_Scripting: Add a one arg variant of uint32_t, and expose table unpack 2019-10-16 09:48:55 +09:00
Bill Geyer
63d9b47530 AP_Motors: make init_targets_on_arming global 2019-10-16 08:17:09 +09:00
bnsgeyer
d1a0635ec2 AC_AttitudeControl: incorporate SysID into tradheli 2019-10-16 08:17:09 +09:00
Leonard Hall
0834726b48 AC_AttitudeControl: Support System ID tests 2019-10-16 08:17:09 +09:00
Andrew Tridgell
b7ae12a9d3 HAL_ChibiOS: reduce max compasses to 1 on AP_Periph 2019-10-16 08:58:52 +11:00
Andrew Tridgell
7ad91fa1c9 AP_Compass: don't show too many params when max compasses 1 2019-10-16 08:58:52 +11:00
Michael du Breuil
a80ff80061 AP_Motors: Fix safe disarm 2019-10-16 08:46:49 +11:00
Leonard Hall
6e8413f122 AP_Motors: Use safety timer to enable pwm before spool up 2019-10-16 08:46:49 +11:00
Michael du Breuil
df8c9e5825 AP_Scripting: Raise default heap size 2019-10-15 15:35:12 -06:00
Michael du Breuil
cf94a02207 AP_Scripting: Stop running scripts if the enable flag ever goes false 2019-10-15 15:35:12 -06:00
Peter Barker
9fee2a9c06 AP_Vehicle: add singleton 2019-10-15 13:24:20 +11:00
Leonard Hall
d4b922336b Copter: add voltage compensation to _throttle_thrust_max 2019-10-15 10:45:36 +09:00
Andrew Tridgell
00260db65a AP_GPS: fixed UAVCAN GPS status when disconnected
this fixes the status reported for a UAVCAN GPS when the cable is
unplugged. It should be "NO GPS", but was instead reporting "NO
FIX". The user had no way to distinguish between not finding a CAN GPS
at all and it not getting satellites

thanks to CUAV for reporting
2019-10-14 19:08:37 -06:00
murata
000aa4f515 AP_RangeFinder: Add TF03-180 2019-10-15 10:07:53 +09:00
Randy Mackay
6588c93e44 SRV_Channel: renamed EPM to Gripper in FUNCTION param docs 2019-10-15 09:11:06 +09:00
Andrew Tridgell
c2067d5bc2 AP_NavEKF3: set a min yaw accuracy from GPS of 5 degrees
GPS modules tend to be rather optimistic about their yaw accuracy. By
setting a min or 5 degrees we prevent the user constantly getting
warnings about yaw innovations
2019-10-15 11:06:11 +11:00
Andrew Tridgell
37fb028532 AP_GPS: improved checking for valid yaw for moving baseline
and fixed check for carrSolnFixed
2019-10-15 11:06:11 +11:00
Michael du Breuil
2587b13ae7 AP_GPS: UBLOX: Parse RELPOSNED messages
This does not yet:
  - validate the receiver configuration
  - manage timing out stale GPS heading info
  - relPosNormalized usage isn't clear, which may defeat the STRICT_LENGTH_CHECK
2019-10-15 11:06:11 +11:00
Michael du Breuil
cb5bba8379 AP_Logger: Log GPS yaw accuracy 2019-10-15 11:06:11 +11:00
Michael du Breuil
f0e742caa3 AP_Scripting: Fix generation of uint32_t arguments
This also fixes the message interval description not generating
correctly, it must have been manually edited before
2019-10-14 17:51:54 -06:00
Andrew Tridgell
97dc76732c HAL_ChibiOS: drop mRoControlZeroF7 DPS310 clock to 5MHz 2019-10-15 10:22:15 +11:00
Andrew Tridgell
94418ca70e AP_Baro: added register checking and reset to DPS280 driver
this is to fix an issue found on a mRoControlZeroF7
2019-10-15 10:22:15 +11:00
Randy Mackay
7ce2fb8783 GCS_Mavlink: handle_preflight_reboot made virtual 2019-10-15 07:41:44 +09:00
Henry Wurzburg
c515f4b317 AP_HAL_ChibiOS/hwdef: update KakuteF4 readme 2019-10-14 10:04:30 +11:00
Andy Piper
28b866cc8f AP_HAL_ChibiOS: hardware definitions for Kakute F7 Mini 2019-10-12 21:53:55 +11:00
liang
8de44ec319 AP_Airspeed: protect sample timestamp while get data 2019-10-12 18:15:06 +11:00
Michael du Breuil
05d104675e AP_Logger: Fix logging of current on non primary instances 2019-10-11 08:39:28 +11:00
Andy Piper
ef7f8531fb Filter: set the harmonic notch filter ref default to zero (disabled)
Modify parameter descriptions for tradheli
2019-10-10 20:26:02 +09:00
Leonard Hall
4a1a5e81ea AP_Motors: Add variable to record the final thrust value
Add Throttle_Out for other frames
2019-10-10 20:26:02 +09:00
Andrew Tridgell
d6e17b0c2b AP_InertialSensor: publish an IMU temperature
makes testing of mavlink extension easier
2019-10-10 13:23:03 +11: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
Andrew Tridgell
77bf67e15f HAL_ChibiOS: fixed padding of neopixel bits
lack of padding at start caused occasional glitches in colors
displayed
2019-10-10 10:41:19 +11:00
Peter Barker
25fd04d402 AP_Proximity: declare RangeFinder as a class to avoid circular include issue 2019-10-08 11:26:04 +11:00
Peter Barker
9aaa6c49fa AP_BoardConfig: correct include of AP_Vehicle_Type 2019-10-08 11:26:04 +11:00
Peter Barker
083d4ac3ea DataFlash: adjust for new vehicle base class 2019-10-08 11:26:04 +11:00
Peter Barker
405bf0ce7f AP_Mission: adjust for new vehicle base class 2019-10-08 11:26:04 +11:00
Peter Barker
8e412d0885 AP_Compass: adjust for new vehicle base class 2019-10-08 11:26:04 +11:00
Peter Barker
cf201afdf6 AP_AccelCal: adjust for new vehicle base class 2019-10-08 11:26:04 +11:00
Peter Barker
8bb51f4b7d AC_AttitudeControl: adjust for new vehicle base class 2019-10-08 11:26:04 +11:00
Peter Barker
1ea365d52a AP_Vehicle: move many members up to base class 2019-10-08 11:26:04 +11:00
Peter Barker
a6b6bb99f3 AP_NMEA_Output: skip sending sentences if no space on UART
AP_NMEA_Output: clean scope by removing unneeded temps

AP_NMEA_Output: redo last_sent to last_run

AP_NMA_Output: early-exit if no data
2019-10-08 11:07:19 +11:00
Peter Barker
5428d13502 AP_Arming: remove bogus ARMING_CHECK_NONE 'bitmask value'
This looks like a bitmask value, but if you treat it like one (and
people have in the past!) by using logical operations then you get the
incorrect result.

Places which were checking for equivalence to ARMING_CHECK_NONE now
simply check the bitmask to see if it is all-empty.
2019-10-08 10:31:07 +11:00
murata
371f11b7f4 AP_Motors: Change to description(NFC) 2019-10-08 08:26:17 +09:00
Andrew Tridgell
4866fd68b5 AP_BoardConfig: fixed CAN init without SLCAN 2019-10-08 10:02:14 +11:00
Andrew Tridgell
15d98220e0 AP_HAL: enabled SLCAN on fmuv2 and Pixhawk1-1M
this fits for now, and is needed for CAN GPS for now
2019-10-08 10:02:14 +11:00
Andrew Tridgell
08b3bc4506 AP_UAVCAN: cleanup ifdefs for SLCAN enable 2019-10-08 10:02:14 +11:00
Andrew Tridgell
53fab5767f AP_HAL: cleanup ifdefs for SLCAN enable 2019-10-08 10:02:14 +11:00
Andrew Tridgell
15e4641e51 AP_HAL_ChibiOS: cleanup ifdefs for SLCAN enable 2019-10-08 10:02:14 +11:00
Andrew Tridgell
6b3c10f0e7 AP_BoardConfig: cleanup ifdefs for SLCAN enable 2019-10-08 10:02:14 +11:00
Henry Wurzburg
4a42a3a23a Rover: implement steering trim save in armed/manual mode only 2019-10-08 07:41:57 +09:00
vierfuffzig
cb054e714b AP_RTC: add local time support 2019-10-07 19:55:42 +11:00
vierfuffzig
1f9b2f712e AP_OSD: add clock panel 2019-10-07 19:55:42 +11:00
Randy Mackay
e4336551cd AP_Follow: add clear_offsets_if_required method
this restores the offsets to zero if they were initialised from zero when the lead vehicle was first spotted
2019-10-07 08:30:45 +09:00
Ebin
f6c7ac88d0 SITL: Yaw rate calculation uses wheel offset 2019-10-07 07:31:53 +11:00
Peter Barker
e32d8ecda1 AP_WheelEncoder: add SITL backend
AP_WheelEncoder: added update function for SITL quadrature encoder
2019-10-07 07:31:51 +11:00
Peter Barker
4d17a7cf89 AP_Logger: tidy MessageWriter stages using enum class 2019-10-05 16:37:43 +10:00
Henry Wurzburg
880285dad4 AP_BLHeli: Change descriptions in SERVO_BLH_PORT param to actual AP port 2019-10-05 16:35:59 +10:00
Michel Pastor
dec5b97275 AP_Logger: fix logging on 256Mbit flash chips 2019-10-05 16:25:22 +10:00
Andrew Tridgell
39182e70e4 AP_Motors: enable docs for hover thr learning in plane 2019-10-04 14:01:08 +10:00
Michel Pastor
49bf0a3057 AP_Logger: fix AP_Logger_Block::get_num_logs() 2019-10-04 12:49:16 +10:00
Randy Mackay
db7836ad48 AP_SmartRTL: fixup compile error
fix typo introduced by me attempting a minor fixup before merging
2019-10-04 10:01:49 +09:00
Peter Barker
fd0a8b72b4 AP_Logger: correct uninitialised value when logging all rally points 2019-10-04 10:39:01 +10:00
Henry Wurzburg
13e66e9f7c AP_SmartRTL: give warning buffer is about to fill-up 2019-10-04 08:57:30 +09:00
Andrew Tridgell
555f56a8af HAL_ChibiOS: removed wait on CAN peripheral in H7
these wait busy loops can take a very long time, and end up causing
interrupts to be lost elsewhere in the system, causing lost bytes on
UARTs

We should not have while loops waiting on peripharals like this. If we
do need to wait for a flag to clear then it needs to be done in a low
priority thread, or we need to check for completion in a timer

CAN still seems to work with this change, but needs flight testing
2019-10-03 15:26:47 +10:00
Henry Wurzburg
9717548cb5 AP_Follow: hide params not used by Rover 2019-10-03 07:18:47 +09:00
Andrew Tridgell
3ebc69320c AP_Logger: fixed LOG_FILE_DSRMROT with delayed log stop
now that we persist logging for 15s after disarm we need to also delay
the log rotation if LOG_FILE_DSRMROT=1. Otherwise we will put the log
data into the next log, which defeats the purpose of the 15s
persistance
2019-10-03 07:17:16 +10:00
vierfuffzig
b89c60d5b0 AP_BLHeli: fix watchdog resets with telemetry active from non-multirotor motors 2019-10-02 21:06:22 +10:00
Randy Mackay
8686197c59 GCS_MAVLink: add comment above set-message-interval 2019-10-02 16:17:09 +09:00
Randy Mackay
3a113a31bb GCS_MAVLink: minor fix to set_message_interval 2019-10-02 16:09:44 +09:00
Tatsuya Yamaguchi
5039bdc8ea AP_Scripting: add set_message_interval binding 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
Andrew Tridgell
ddde512b74 AP_Scheduler: use fill_nanf() on each scheduler function 2019-10-01 17:35:26 +10:00
Andrew Tridgell
cbe34320b5 AP_NavEKF2: fixed build
broken by recent common variable change
2019-10-01 17:35:26 +10:00
Andrew Tridgell
b9291d95f0 HAL_SITL: pre-fill stack on each loop with NaN
this allows us to catch use of uninitialised stack variables in SITL
without having valgrind running
2019-10-01 17:35:26 +10:00
Andrew Tridgell
66b4e92444 AP_Math: make fill_nanf() use a signalling NaN
we want use of these values to trigger a FPE
2019-10-01 17:35:26 +10:00
Andrew Tridgell
f79907bd1e AP_NavEKF: fixed build with vector index checking 2019-10-01 15:39:03 +10:00
Andrew Tridgell
3995db49a4 AP_NavEKF3: use parent class for intermediate static variables
this makes the code faster as well as using less memory when both EK2
and EK3 are enabled
2019-10-01 15:39:03 +10:00
Andrew Tridgell
f7e138bddd AP_NavEKF2: use parent class for intermediate static variables
this makes the code faster as well as using less memory when both EK2
and EK3 are enabled
2019-10-01 15:39:03 +10:00
Andrew Tridgell
688b01c6c6 AP_NavEKF: added a common parent class for EKF2 and EKF3 core classes
this provides a common location for static intermediate variables in
EK2 and EK3. This has a few benefits:

 - the compiler can determine the address of the frequently accessed
   variables at compile time, making them faster

 - by sharing between EK2 and EK3 we save a lot of memory if both EK2
   and EK3 are enabled

 - we can fill all these with NaN in SITL on every loop, which allows
   us to catch cases where the variables are ever re-used between
   loops, which guarantees we aren't mixing data between EKF lanes or
   between EK2 and EK3
2019-10-01 15:39:03 +10:00
IamPete1
3b9a35da27 AP_Motors: add reversed tricopter option 2019-10-01 09:39:08 +10:00
vierfuffzig
2af0be3947 AP_AHRS: fix custom orientation ToRad conversion 2019-10-01 09:35:09 +10:00
Andrew Tridgell
0deef76875 GCS_MAVLink: use HAL_MEM_CLASS for status sizes 2019-10-01 09:29:55 +10:00
Andrew Tridgell
889b18022b AP_Logger: use HAL_MEM_CLASS for logging buffer size 2019-10-01 09:29:55 +10:00
Andrew Tridgell
3bf3ebb703 AP_Logger: try harder to use close to user buffer size
this stops us drastically reducing buffer size when low on memory
2019-10-01 09:29:55 +10:00
Andrew Tridgell
2d00298070 AP_HAL: added HAL_MEM_CLASS for amount of memory 2019-10-01 09:29:55 +10:00
Andrew Tridgell
47f2f1764d HAL_ChibiOS: generate HAL_MEMORY_TOTAL_KB for each board 2019-10-01 09:29:55 +10:00
Peter Barker
13352a4ca7 AP_ADSB: move is_valid_octal to is_valid_callsign and add tests for it 2019-10-01 09:18:15 +10:00
Peter Barker
6fe09b6120 AP_Math: move is_valid_octal into adsb
This doesn't ensure the value is octal digits - there's more magic in
it.
2019-10-01 09:18:15 +10:00
Andrew Tridgell
1a34fccc71 AP_Proximity: fixed incorrect use of fabs() 2019-10-01 08:12:07 +09:00
Andrew Tridgell
e3a965272c HAL_ChibiOS: added Pixhawk1-1M
this is for 1M versions of the Pixhawk1. It is smaller than fmuv2 as
it only links the specific sensors needed for Pixhawk1
2019-10-01 09:08:25 +10:00
Andrew Tridgell
b5217412f9 AP_GPS: fixed a bug in handling corrupt u-blox packets
when we have corrupt input due to loss of bytes on a UART we can end
up with a u-blox packet with zero payload bytes. When that happens we
need to bypass payload reading as otherwise we will end up keeping
reading bytes until the driver resets at 4 seconds, causing a GPS
outage.

This was causing GPS outages every few hours in copters running 3.6.7,
and was also reproduced in SITL using SIM_GPS_BYTELOSS.
2019-09-30 15:20:30 -06:00
Mark Whitehorn
0a6ae60c89 AP_IOMCU: fix IO fast channel mask 2019-10-01 07:13:33 +10:00
Mark Whitehorn
d8a07b6c44 HAL_ChibiOS: fix FMU fast_channel_mask
fix IO fast channel mask
use IOMCU chmask to only set right channels
remove unused variable
2019-10-01 07:13:33 +10:00
Andrew Tridgell
748cf39116 HAL_ChibiOS: disable DMA for RCIN on Pixracer
this frees up DMA for USART1_RX, which gives DMA for input over the
SERIAL5 WiFi port, which is important for applications where a
pixracer is being fed vision data over WiFi
2019-09-30 07:58:40 +10:00
mhefny
92d55fa126 SITL: removed unnecessary files of webots 2019-09-30 04:46:38 +10:00
Peter Barker
04ee459e8c AP_Baro: exclude Sub pressure transducers from non-sub builds 2019-09-28 16:41:06 +10:00
Andrew Tridgell
c29867ecad AP_Common: removed fcntl overrides
not needed with AP_Filesystem, and fixes lots of warnings with newer
compilers
2019-09-28 14:19:46 +10:00
Andrew Tridgell
81711eb28e AP_HAL: fixed build on g++ 7.3 for stm32
the system maths headers don't like our maths defines, but are happy
if we include math.h first
2019-09-28 14:19:46 +10:00
Henry Wurzburg
cf3bd2487b AP_OSD: add current averaging filter to reduce jitter (~5 sample timeconstant) 2019-09-28 14:17:59 +10:00
Randy Mackay
0d032ecd86 AC_Avoidance: add enabled and margin accessors 2019-09-28 11:13:14 +09:00
Randy Mackay
6be4adbe02 RC_Channels: define surface tracking auxiliary function 2019-09-28 11:13:14 +09:00
Randy Mackay
9aeac012d2 AC_Avoid: add support for complex fence types
AP_OABendyRuler: support exclusion polygons

AP_OADijkstra: support exclusion polygons

AC_Avoid: adjust_velocity supports exclusion polygons

AC_Avoidance: handle fence::get_boundary_points returning nullptr instead of setting num_points to zero

AC_Avoidance: Dijkstra's works with only exclusion polygons

AC_Avoidance: Dijkstra: check for fence counts instead of polyfence validity

We really only care whether fences can be returned - and they won't be
returned unless they are valid

AC_Avoidance: BendyRuler: just try to get inclusion fence rather than checking validity

AC_Avoidance: BendyRuler supports exclusion circles

AC_Avoid: Dijkstra support for exclusion circles

AC_Avoid: BendyRuler support for inclusion circles

AC_Avoid: stop an inclusion/exclusion circular fences

AC_Avoid: stop at inclusion/exclusion circular fences

AC_Avoid: fixes to Dijkstra's use of inclusion/exclusion circles and polygons

AP_Avoidance: take semaphores when interacting with AHRS and polyfence

AC_Avoid: Dijkstra's fix for some_fences_enabled inclusion circles
2019-09-28 07:58:48 +09:00
Randy Mackay
3431938bce AP_Logger: add error code to Write_OADijkstra 2019-09-28 07:58:48 +09:00
Peter Barker
a0c6ff95e4 AP_Proximity: polyfence valid() has been renamed 2019-09-28 07:58:48 +09:00
Peter Barker
714a3e2462 AC_Fence: support for multiple polygon fences
AC_Fence: add interface for retrieving exclusion polygons

AC_Fence: add interface to get exlusion polygons to polyfence loader

AC_Fence: add suport for inclusion circles

AC_Fence: add option for compiling-out FENCE_POINT protocol support

AC_Fence: get_exclusion_polygon and get_boundary_points set num_points to zero on failure

AC_Fence: use Debug(...) to hide debug messages

AC_PolyFence_loader: add methods to retrieve all inclusion zones

AC_PolyFence_loader: valid simply returns true if a polygon boundary can be returned

AC_Fence: add get_exclusion_circle

AC_Fence: add get_exclusion_circle_update_ms accessor

AC_Fence: PolyFence_loader gets inclusion circle accessors

AC_PolyFence_loader: add and use semaphore to protect loaded fence

AC_Fence: move fence breach check below fence type checks

This allows us to provide more information to the user about why they
are breached.

For example, if the radius is negative you are considered in breach of
it - but we'd tell you you were breached, not that your radius was
invalid

AC_Fence: clear the fence if we discover the user has set the fence count to zero
2019-09-28 07:58:48 +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
Peter Barker
f3b0148719 AP_OADijkstra: cope with polyfence holding boundary points 2019-09-28 07:58:48 +09:00
Peter Barker
dfca32a2af AP_OABendyRuler: cope with polyfence holding boundary points 2019-09-28 07:58:48 +09:00
Peter Barker
3a7f1b882e AC_Avoidance: cope with polyfence holding boundary points 2019-09-28 07:58:48 +09:00