Commit Graph

15118 Commits

Author SHA1 Message Date
davidaroyer
7d2e44862f AP_HAL_Linux: add support for Aerotenna OcPoC-Zynq hardware 2017-09-08 07:30:49 -07:00
davidaroyer
8862e76284 AP_HAL: add support for Aerotenna OcPoC-Zynq hardware 2017-09-08 07:30:49 -07:00
Georgii Staroselskii
e79fc893fa AP_HAL_Linux: HAL_Linux_Class: delay SPIUARTDriver static initialization
There's an implicit (apart from the name) dependency between SPI and
SPIUARTDriver which results in a crush on a restart or a shutdown.

By moving the initialization we're making sure that all objects are
deleted in the right order.
2017-09-08 07:26:54 -07:00
Georgii Staroselskii
226eeeb738 AP_HAL_Linux: RCOutput_Sysfs: fix deleting _pwm_channels array
delete [] should be called rather than delete.
2017-09-08 07:26:54 -07:00
Georgii Staroselskii
f6858821a6 AP_HAL_Linux: PWM_Sysfs: remove unneeded free() in ~PWM_Sysfs_Base
_export_path and _duty_path will have been already long time gone by the
time dtors kick in.

Probably better to use OwnPtr around those. But it's better to be done
in a separate PR.
2017-09-08 07:26:54 -07:00
VikingDai
9f0e8a64d5 Update HAL_PX4_Class.cpp
"ttys5" used both for console and common usart ,it should be initialized by AP_SerialManager ;
2017-09-08 10:33:40 +10:00
Michael du Breuil
fb77d0739e AP_Compass: Remove unused time calls, stash the time in the read loop 2017-09-07 19:53:14 +01:00
Peter Barker
85ebe923b6 SITL: avoid FPE when running fly.ArduPlane
Program received signal SIGFPE, Arithmetic exception.
__expf_finite () at ../sysdeps/x86_64/fpu/e_expf.S:132
132     ../sysdeps/x86_64/fpu/e_expf.S: No such file or directory.
(gdb) u
2017-09-06 20:22:52 +10:00
Peter Barker
97b6ca218b AP_AHRS: send ekf status reports even when EKF inactive 2017-09-06 10:50:49 +10:00
Michael du Breuil
be371e09f9 AP_GPS: SBF: Reject short packets early, allow 256 byte long messages to be decoded 2017-09-06 10:41:36 +10:00
Andrew Tridgell
048dfee68a AP_GPS: make SBF driver more robust
this fixes a crash bug in the SBF GPS driver where a badly formed packet
could cause crc16_ccitt to reference invalid memory
2017-09-06 10:41:33 +10:00
Lucas De Marchi
b62e8909c4 AP_GPS: add missing fallthrough 2017-09-01 13:45:22 -07:00
Lucas De Marchi
cb9c626577 AP_ADSB: fix getting a copy rather than a reference
These have been caught by making constructors private and enforcing
calling a create() method to create objects are supposed to be
statically allocated only.

The Vector3f reference was just nearby and was a change copied from
similar PR from Peter Barker (#6873).
2017-09-01 13:45:22 -07:00
Lucas De Marchi
2c72fc94ba AP_HAL: change aerofc baud to 921600 2017-09-01 07:55:47 -07:00
Peter Barker
698f18566b AP_Terrain: cast to int32_t to avoid warning about signedness
../../libraries/AP_Terrain/TerrainIO.cpp: In member function ‘void
AP_Terrain::open_file()’:
../../libraries/AP_Terrain/TerrainIO.cpp:176:46: warning: format ‘%u’
expects argument of type ‘unsigned int’, but argument 5 has type
‘__gnu_cxx::__enable_if<true, double>::__type {aka double}’ [-Wformat=]
              abs((uint32_t)block.lon_degrees));
                                              ^
../../libraries/AP_Terrain/TerrainIO.cpp:176:46: warning: format ‘%u’
expects argument of type ‘unsigned int’, but argument 7 has type
‘__gnu_cxx::__enable_if<true, double>::__type {aka double}’ [-Wformat=]
2017-09-01 13:30:56 +01:00
Peter Barker
6ad3541a24 DataFlash: clean up public interface 2017-09-01 10:58:07 +01:00
Peter Barker
ac806b650f GCS_MAVLink: move handling of do_send_banner up 2017-08-30 15:54:47 +01:00
Peter Barker
1544a92f8b GCS_MAVLink: factor out a send_banner 2017-08-30 15:54:47 +01:00
Peter Barker
2e078f7c5e GCS_MAVLink: send fw_string, px4 git hash and nuttx hash on param request 2017-08-30 15:54:47 +01:00
Peter Barker
8a7a1b77dd GCS_MAVLink: handle param_request_list in GCS_MAVLINK base class 2017-08-30 15:54:47 +01:00
Peter Barker
50242178b3 GCS_MAVLink: handle param_set in GCS_MAVLINK base class 2017-08-30 15:54:47 +01:00
Peter Barker
95ff94bfad GCS_MAVLink: factor out a handle_common_param_message 2017-08-30 15:54:47 +01:00
Peter Barker
add1743c12 GCS_MAVLink: move send_autopilot_request calls up to GCS base class 2017-08-30 15:54:46 +01:00
Peter Barker
e9204a66ee GCS_MAVLink: include version for AP_FWVersion 2017-08-30 15:54:46 +01:00
Peter Barker
f32651a38c DataFlash: include version for AP_FWVersion 2017-08-30 15:54:46 +01:00
Peter Barker
445777429b AP_FWVersion: add structure to hold firmware version 2017-08-30 15:54:46 +01:00
Randy Mackay
aaac6b3692 AP_Common: Bitmask formatting fix 2017-08-30 20:07:04 +09:00
ChrisBird
46c982d64f AP_Mission: add OPTIONS parameter
First option added now is to clear the mission on reboot
Fixes #5743
2017-08-29 21:28:19 +01:00
Michael du Breuil
a895d69b42 GCS_MAVLink: Correct a bug in the FOR_EACH_ACTIVE_CHANNEL macro 2017-08-29 13:27:27 -07:00
Jacob Walser
e492c733d8 AP_Baro: fixup Keller LD comments 2017-08-29 12:30:32 -04:00
Michael du Breuil
db6d8c9c43 AP_Mission: Use a static assert to check content size 2017-08-29 14:37:56 +01:00
Jacob Walser
f4dfbb9dad AP_JSButton: input_hold_toggle -> input_hold_set 2017-08-29 08:10:05 -04:00
Jacob Walser
07e00de549 AP_Baro: Tweak Keller LD driver for better performance after initial tests 2017-08-29 08:08:16 -04:00
Jacob Walser
2a71afd3ba AP_Baro: Remove superfluous casts 2017-08-29 08:08:16 -04:00
Jacob Walser
a08da4ecc4 AP_Baro: New AP_Baro_Keller device driver 2017-08-29 08:08:16 -04:00
Andrew Tridgell
7e1368f7a5 AP_InertialSensor: implement notch filter on gyro 2017-08-29 13:52:29 +10:00
Andrew Tridgell
50dcca39bd Filter: added a notch filter
maths from Leonard
2017-08-29 13:52:29 +10:00
Peter Barker
0f22f923e1 AC_InputManager: remove MAIN_LOOP_RATE in favour of parameter value 2017-08-29 08:41:07 +09:00
Andrew Tridgell
4aa068d63d SITL: added simple launch sim for plane
allow for bungee, catapult and hand launches
2017-08-29 07:35:04 +10:00
Peter Barker
9783c0c3ba DataFlash: log dataflash-file statistics periodically 2017-08-28 22:05:44 +01:00
Peter Barker
776d88bb6b DataFlash: remove duplicate variables 2017-08-28 22:05:44 +01:00
Andrew Tridgell
29fe432dd7 AP_SerialManager: enable debug console use for other protocols
this allows SERIAL5_PROTOCOL to be set on FMUv2 and FMUv3 for use by
other protocols
2017-08-28 17:57:28 +10:00
Andrew Tridgell
d09b549144 HAL_PX4: allow uart5 to be used for non-nsh on FMUv2/FMUv3 2017-08-28 17:57:28 +10:00
Andrew Tridgell
0155434057 RC_Channel: fixed bug in manual with TRIM == MIN
This fixes the bug described here:

https://discuss.ardupilot.org/t/arduplane-reverse-thrust-setup/18324/5

which otherwise would prevent output with TRIM == MIN or TRIM == MAX
2017-08-26 20:30:54 +10:00
Peter Barker
2f9fb581fe DataFlash: remove bad FALLTHROUGH causing compilation failure 2017-08-24 15:49:15 +09:00
Peter Barker
921985fe27 GCS_MAVLink: allow statustext logging from any source system
Turns out this is terribly useful for companion computers if
you allow them to log things when they're not your GCS.

The original check was bogus; if someone is talking to you via
mavlink they can do much worse than fill your logs!
2017-08-23 15:58:47 +01:00
Jacob Walser
e8f5967682 GCS_MAVLink: Add MSG_NAMED_FLOAT ap_message id 2017-08-23 13:40:52 +01:00
Lucas De Marchi
3414883f05 AP_GPS: remove tabs and fix coding style 2017-08-22 23:59:13 -07:00
Lucas De Marchi
927289aa64 DataFlash: use FALLTHROUGH define
When falling through on a case switch, allow to add an empty statement
with the correct attribute to tell the compiler this behavior is
intended.
2017-08-22 23:59:13 -07:00
Lucas De Marchi
7b0d6166e1 AP_RangeFinder: use FALLTHROUGH define
When falling through on a case switch, allow to add an empty statement
with the correct attribute to tell the compiler this behavior is
intended.
2017-08-22 23:59:13 -07:00
Lucas De Marchi
b37ca322f1 AP_Landing: use FALLTHROUGH define
When falling through on a case switch, allow to add an empty statement
with the correct attribute to tell the compiler this behavior is
intended.
2017-08-22 23:59:13 -07:00
Lucas De Marchi
0e502d89a3 AP_HAL: use FALLTHROUGH define
When falling through on a case switch, allow to add an empty statement
with the correct attribute to tell the compiler this behavior is
intended.
2017-08-22 23:59:13 -07:00
Lucas De Marchi
8389158d76 AP_GPS: use FALLTHROUGH define
When falling through on a case switch, allow to add an empty statement
with the correct attribute to tell the compiler this behavior is
intended.
2017-08-22 23:59:13 -07:00
Lucas De Marchi
7c6f9a004e AP_Baro: use FALLTHROUGH define
When falling through on a case switch, allow to add an empty statement
with the correct attribute to tell the compiler this behavior is
intended.
2017-08-22 23:59:13 -07:00
Lucas De Marchi
e2e836f676 AP_Airspeed: use FALLTHROUGH define
When falling through on a case switch, allow to add an empty statement
with the correct attribute to tell the compiler this behavior is
intended.
2017-08-22 23:59:13 -07:00
Lucas De Marchi
3102247a85 AP_Common: add FALLTHROUGH define 2017-08-22 23:59:13 -07:00
Randy Mackay
e13f4d0d56 DataFlash: removed unused optFlowEnabled from Log_Write_EKF 2017-08-23 11:19:14 +09:00
Randy Mackay
59ffc3cd65 AP_OpticalFlow: minor order declaration change
non-functional change
2017-08-23 11:19:14 +09:00
Randy Mackay
cf24eef359 AP_OpticalFlow: init checks if enabled 2017-08-23 11:19:14 +09:00
Randy Mackay
bc38affcb1 AP_OpticalFlow: px4flow retries init 10 times at startup
This resolves an issue in which some px4flow sensors are slow to startup
2017-08-23 11:19:14 +09:00
Randy Mackay
fdb4c7b5ee AP_OpticalFlow: failure to init leaves enabled unchanged 2017-08-23 11:19:14 +09:00
Randy Mackay
a7afffe14a AP_OpticalFlow: rename BUS_ID parameter to ADDR
This makes the parameter more consistent with RangeFinder
2017-08-23 11:19:14 +09:00
chobits
d6845a911a AP_AHRS: fix get_relative_position_NE_home calcalation 2017-08-19 10:23:24 +09:00
Lucas De Marchi
66a1e420cb AP_HAL_Linux: RCInput_SoloLink: better name to first field
Checking the time on the tcpdump capture, it matches the first fields
from the data:

$ tshark -n -c 4 -r  ~/tmp/solo/rc.pcap
    1   0.000000     10.1.1.1 → 10.1.1.10    UDP 68 5005 → 5005 Len=26
    2   0.019976     10.1.1.1 → 10.1.1.10    UDP 68 5005 → 5005 Len=26
    3   0.040046     10.1.1.1 → 10.1.1.10    UDP 68 5005 → 5005 Len=26
    4   0.059961     10.1.1.1 → 10.1.1.10    UDP 68 5005 → 5005 Len=26

From the previous commit (first 2 packets):

     5fa8 f441 3414 0500 73d7  dc05 dc05 dc05 db05 e803 e803 e803 f401
     73f6 f441 3414 0500 74d7  dc05 dc05 dc05 db05 e803 e803 e803 f401

0x0005143441f45fa8 - 0x0005143441f4f673 = 0x4E14 = 19988 (usec)

Which seems to approximately match for the other packets as well. We are
not using the field since we rather get the time when we receive it, but
at least use a better name.
2017-08-17 12:04:27 -07:00
Lucas De Marchi
373d41fd6e AP_HAL_Linux: switch aero to RCInput_SoloLink 2017-08-17 12:04:27 -07:00
Lucas De Marchi
79b004cf6a AP_HAL_Linux: add prototype for handling SoloLink
This allows to use a Solo controller to control Linux-based flight
controllers. The protocol has been derived by analyzing a tcpdump
trace: some fields are ignored. Example trace of RC data (obtained
with `tshark -T fields -e data -n -c 5 -r  rc.pcap`

 unkonwn              seq   ch1  ch2  ch3  ...                ch8
 5fa8 f441 3414 0500 73d7  dc05 dc05 dc05 db05 e803 e803 e803 f401
 73f6 f441 3414 0500 74d7  dc05 dc05 dc05 db05 e803 e803 e803 f401
 dc44 f541 3414 0500 75d7  dc05 dc05 dc05 db05 e803 e803 e803 f401
 bc92 f541 3414 0500 76d7  dc05 dc05 dc05 db05 e803 e803 e803 f401
 dfe0 f541 3414 0500 77d7  dc05 dc05 dc05 db05 e803 e803 e803 f401
2017-08-17 12:04:27 -07:00
Peter Barker
154b212545 GCS_MAVLink: move serial_control case to base class 2017-08-17 12:42:31 +01:00
Peter Barker
b17c0482fb GCS_MAVLink: move play_tune and led_control handling to base class 2017-08-17 12:27:10 +01:00
Peter Barker
23d91c93c8 AP_HAL_Linux: correct compilation warning
../../../libraries/AP_HAL_Linux/RCInput_RPI.cpp:129:35: warning: ignoring return value of ‘ssize_t read(int, void*, size_t)’, declared with attribute warn_unused_result [-Wunused-result]
         ::read(file, &pageInfo, 8);
2017-08-17 11:28:36 +01:00
Randy Mackay
222dd0c9be AC_WPNav: correct comments
all position vectors are offsets from the ekf origin (not from the ahrs home)
2017-08-17 16:05:08 +09:00
Jacob Walser
b8e7d23cc4 AP_Arming: Add bool check_min_max parameter for Copter/Sub RC checks 2017-08-16 11:37:46 -04:00
Peter Barker
2a07a077d9 GCS_MAVLink: use GCS_MAVLINK subclasses to handle set_mode 2017-08-16 11:05:37 +10:00
Peter Barker
48c4e48225 AP_HAL_PX4: send statustext for RC input decoding type 2017-08-15 22:04:00 +01:00
Mateusz Sadowski
eb56a010b3 AP_RangeFinder: TeraRangerI2C: use address from parameter instead of hardcoded 2017-08-15 19:42:10 +01:00
Mateusz Sadowski
0993300506 AP_Rangefinder: rename trone to TeraRangerI2C 2017-08-15 19:27:49 +01:00
Peter Barker
b6076bcb77 GCS_MAVLink: adapt to new rangefinder method name 2017-08-15 19:00:29 +01:00
Peter Barker
30c4ea8123 AP_RangeFinder: stop storing sensor type as a variable
And change method name
2017-08-15 18:58:16 +01:00
Peter Barker
c79cbd71af GCS_MAVLink: use rangefinder backend accessors 2017-08-15 18:31:58 +01:00
Peter Barker
f1d350bbb1 DataFlash: use rangefinder backend accessors 2017-08-15 18:30:45 +01:00
Peter Barker
63440800fc AP_NavEKF3: use rangefinder backend accessors 2017-08-15 18:30:45 +01:00
Peter Barker
1e83ef3c44 AP_NavEKF2: use rangefinder backend accessors 2017-08-15 18:30:45 +01:00
Peter Barker
e0bea597c0 AP_Proximity: use rangefinder backend accessors 2017-08-15 18:30:45 +01:00
Peter Barker
c0aa10d84b AP_RangeFinder: move rangefinder backend data accessors to backend 2017-08-15 18:30:45 +01:00
Michael du Breuil
067335f68d GCS_MAVLink: Handle termination requests from the GCS 2017-08-15 15:14:56 +01:00
Michael du Breuil
97c1785bef AP_AdvancedFailsafe: Allow the GCS to request terminations 2017-08-15 15:14:56 +01:00
Miguel Arroyo
fc155eac7e AP_HAL_PX4: Adds UARTF as commandline option 2017-08-15 14:31:51 +01:00
JU Han
eebef857f1 AP_TECS: gain scaler K_STE2Thr multiplies by (THRmax - THRmin)
Makes both feed forward and feed-back consistent
2017-08-15 14:27:43 +01:00
Randy Mackay
9f876dc7a0 AR_AttitudeControl: throttle and steering control library
Throttle controller has these advantages over existing controller:
based on velocity in vehicle's forward-back axis rather than ground-speed
straight-forward PID controller using speed error as input
speed control acceleration limts
stop control slows vehicle smoothly
configurable filtering

Steer controller has these advantages over existing controller:
output scaled properly for skid-steering vehicles
layered P and PID controller for angular error and rate control
configurable filtering
2017-08-15 20:47:19 +09:00
Peter Barker
7173025b43 AP_Arming: warn about uncalibrated throttle but do not fail check
We can tighten this check up later, and will allow us to use
this common function for Plane and Rover in the future
2017-08-14 15:32:25 +09:00
Peter Barker
b2459c67d5 AP_Arming: move Copter RC checking code into library 2017-08-14 15:32:25 +09:00
Peter Barker
e3599ab4f9 AP_Param: remove CLI 2017-08-14 10:23:50 +09:00
Peter Barker
bff31e8b42 GCS_MAVLink: remove CLI 2017-08-14 10:23:50 +09:00
Andrew Tridgell
1a25087dd5 AC_AttitudeControl: fixed PIRO_COMP index
this is a new conflict due to stricter checking in AP_Param
2017-08-14 09:28:57 +09:00
Michael du Breuil
58e784024f AP_HAL_SITL: Add support for blocked pitot tube simulations 2017-08-10 20:15:35 +10:00
Michael du Breuil
4dbe282121 SITL: Add airspeed failure parameters 2017-08-10 20:15:35 +10:00
priseborough
2310cb6d19 AP_NavEKF3: Enable external control over use of GPS vertical velocity 2017-08-10 19:49:45 +10:00
priseborough
f2f3067326 AP_NavEKF2: Add interface to control GPS vertical velocity use 2017-08-10 19:49:45 +10:00
Mark Whitehorn
3642ecd9ef AP_COMPASS: fix errors in addition of alternate LIS3MDL I2C address
testing shows ROTATION_YAW_90 is correct for mRo Neo M8N GPS/compass
2017-08-10 19:46:26 +10:00
Mark Whitehorn
a6e9baa8f6 AP_Compass: probe for LIS3MDL in mRo Neo-M8N GPS module 2017-08-10 19:46:26 +10:00
Peter Barker
1fc82442a0 GCS_MAVLink: remove dummy functions; examples are linked with all libs 2017-08-09 16:18:22 +01:00
Peter Barker
7aaabea4ea GCS_MAVLink: send gps messages as separate queued messages 2017-08-09 16:18:22 +01:00
Peter Barker
ee5874ab32 GCS_MAVLink: move sending of gps_raw up 2017-08-09 16:18:22 +01:00
Peter Barker
4e3cc6fd27 GCS_MAVLink: move sending of system_time up 2017-08-09 16:18:22 +01:00
Peter Barker
d1a9128118 GCS_MAVLink: move sending of camera_feedback up 2017-08-09 16:18:22 +01:00
Peter Barker
d03c7389f7 GCS_MAVLink: move sending of meminfo up 2017-08-09 16:18:22 +01:00
Michael du Breuil
5fca7d02b3 AdvancedFailsafe: Rework status texts to be more uniform 2017-08-09 15:39:17 +01:00
Peter Barker
127edce39e AP_RangeFinder: move prearm checks into backend 2017-08-09 13:58:53 +01:00
Peter Barker
0b1c67d170 AP_RangeFinder: remove unused parameters from detect and constructors 2017-08-09 13:58:53 +01:00
Peter Barker
08cd3f4a77 AP_RangeFinder: move instance parameters into instance state 2017-08-09 13:58:53 +01:00
Randy Mackay
f995106c1e AC_PID: minor formatting change 2017-08-09 18:03:09 +09:00
Peter Barker
a841fddb3e GCS_MAVLink: rename MSG_RETRY_DEFERRED to MSG_LAST and clarify comments 2017-08-05 23:13:48 +01:00
Peter Barker
0c5f66dc59 GCS_MAVLink: refactor code into new retry_deferred method 2017-08-05 23:11:09 +01:00
Peter Barker
fdac13d3d3 GCS_MAVLink: tidy send_message function 2017-08-05 23:09:37 +01:00
Randy Mackay
164096225b AP_SteerController: fix get_steering_out_rate bug when reversing 2017-08-05 11:20:58 +09:00
Randy Mackay
638ba02d5f AP_Mission: add support for Set-Yaw-Speed command
This is initially only intended for use by Rover
2017-08-05 11:20:58 +09:00
Randy Mackay
42cab6b533 AP_LandingGear: add startup position selection parameter 2017-08-05 11:20:41 +09:00
Francisco Ferreira
e0f4d3dbe5
AP_HAL: remove unused HAL_AIRSPEED_MS4515DO_I2C_BUS macro 2017-08-05 03:15:53 +01:00
Francisco Ferreira
d3ed4420e6
AP_Airspeed: remove unused MS4525D0_I2C_BUS macro 2017-08-05 03:15:52 +01:00
Vinicius Juvinski
78deddabda AP_Airspeed: MS4525: Add support to I2C Bus 2
BBBMini use I2C Bus number 2 and MS4525 just use up to bus 1, so I
addedd this bus 2 to address struct.
2017-08-05 03:15:32 +01:00
José Roberto de Souza
9ee007f924 AP_HAL_PX4: Map PX4_I2C_BUS_EXPANSION1 2017-08-04 12:47:01 -07:00
José Roberto de Souza
e674d6ee20 AP_HAL_PX4: aeorfc: Move GPS to UART7
The UART3 also have the I2C bus 2 functions so moving GPS to UART7 to
have one additional I2C.
To keep GPS working is also necessary update the FPGA RTL to version
0xC1 or higher.
2017-08-04 12:47:01 -07:00
Francisco Ferreira
6cf8791eb5
AP_Compass: correct comment in LIS3MDL driver
Commit 17f2393c1b decreased timer frequency but didn't change comment to match
2017-08-04 19:56:26 +01:00
Lucas De Marchi
5ea1784838 global: remove AP_HAL::in_timerprocess()
This is not used and in the only places it would make sense would be
internally to the scheduler so remove it.
2017-08-03 20:25:14 -07:00
Lucas De Marchi
08637f1dcc AP_HAL_VRBRAIN: Scheduler: replace use of in_timerprocess()
This function actually checks if we are not in the main thread rather
than if we are in the timer thread.

Add a new function that does what it's supposed to do.
2017-08-03 20:25:11 -07:00
Lucas De Marchi
1aaba01622 AP_HAL_QURT: Scheduler: replace use of in_timerprocess()
This function actually checks if we are not in the main thread rather
than if we are in the timer thread.

Add a new function that does what it's supposed to do.
2017-08-03 20:25:07 -07:00
Lucas De Marchi
9e66938f68 AP_HAL_PX4: Scheduler: replace use of in_timerprocess()
This function actually checks if we are not in the main thread rather
than if we are in the timer thread.

Add a new function that does what it's supposed to do.
2017-08-03 20:25:01 -07:00
Lucas De Marchi
93a558ce5c AP_HAL_Linux: do not call delay callbacks on other threads
If a thread other than the main one calls Scheduler::delay() we could
end up triggering the call of delay callbacks. Those should only ever
happen on the main thread.
2017-08-03 20:24:57 -07:00
Peter Barker
ad2c3d27ec GCS_MAVLink: move try_send_message queued_param_send up 2017-08-03 14:34:33 +01:00
Peter Barker
679bb7f7a5 GCS_MAVLink: move try_send_message send_hwstatus up 2017-08-03 14:33:37 +01:00
Peter Barker
3b472ccc17 GCS_MAVLink: move try_send_message mission handling up 2017-08-03 14:24:47 +01:00
Peter Barker
b8cb758fac GCS_MAVLink: move try_send_message compass message handling up 2017-08-03 14:24:46 +01:00
Lucas De Marchi
e98fe2d7d5 AP_HAL: RingBuffer: add missing include 2017-08-02 21:10:55 -07:00
Lucas De Marchi
61aed0f0d7 RingBuffer: example: integrate with build system
It's only compatible with Linux so for now disable the other boards.
2017-08-02 16:08:55 -07:00
Murilo Belluzzo
641671a366 AP_HAL: Add simple stress test for RingBuffer class
It runs a Producer/Consumer thread pair endless reading and writing a
ByteBuffer. Producer writes a number sequence that is twice the
ByteBuffer size so a given position have a different data on each write
pass. Consumer makes sure that this pattern is not broken and aborts the
program if it is.

It is possible to spawn more pairs by informing a number as argument of
the program.
2017-08-02 15:30:35 -07:00
Lucas De Marchi
dbd074b250 AP_HAL: remove register_timer_process with extra arg 2017-08-02 08:00:53 -07:00
Lucas De Marchi
c170c2a847 AP_HAL_Linux: remove register_timer_process with extra arg
This is not used anymore.
2017-08-02 08:00:53 -07:00
Lucas De Marchi
6bab28397a AP_Compass: remove user of timesliced logic 2017-08-02 08:00:53 -07:00
Lucas De Marchi
0a158f6d3f AP_HAL_Linux: remove support for timesliced timer
This has long been replaced by the bus per thread scheme.
2017-08-02 08:00:53 -07:00
ljwang
5a7ec7d429 Delete write registers at start,using another way to repair 2017-08-02 16:15:14 +10:00
ljwang
648871a388 Fixed the QMC5883 identification,add check ID 2017-08-02 16:15:14 +10:00
Peter Barker
b445313bf1 AP_Scheduler: remove loop-period argument from load_average
This now comes from a parameter rather than being hard-set
in the vehicle code

Also adds a method returning the max loop period based on the
loop rate
2017-08-01 19:39:27 +01:00
Michael du Breuil
efe70c8d3a AP_NavEKF3: Fix possible compass nullptr dereference 2017-08-01 15:25:05 +01:00
Michael du Breuil
dffa3d3b40 AP_NavEKF2: Fix possible compass nullptr dereference 2017-08-01 15:25:05 +01:00
Andrew Tridgell
99f5229a34 SRV_Channel: added copy_radio_in_out_mask() 2017-08-01 08:25:32 +10:00
Andrew Tridgell
1f1b4241c3 SRV_Channel: added get/set for reversed and function
these are needed in plane for auto-conversion of old elevon code
2017-08-01 08:25:32 +10:00
Andrew Tridgell
75999dbb39 SRV_Channel: prevent negative slew rate
thanks to Michael for pointing this out
2017-08-01 08:25:32 +10:00
khancyr
15398f8b0e AP_Math: correct variable init and remove define in polygon 2017-07-31 17:35:08 +09:00
Randy Mackay
f5f6ec5238 AP_Arming: rename _MIN_VOLT to _VOLT_MIN
Also _MIN_VOLT2 to _VOLT2_MIN
2017-07-31 17:19:55 +09:00
Randy Mackay
2f3a57e0aa AP_Arming: minor variable type change
no functional change
2017-07-31 17:19:55 +09:00
Randy Mackay
330a6065ca AP_Arming: Copter gets MIN_VOLT parameters 2017-07-31 17:19:55 +09:00
Michael du Breuil
2894b7cbea L1_Control: Ensure that LIM_BANK passes a sea level sanity check
This fixes #6637 where the LIM_BANK can be set such that the vehicle demands a radius at sea level that is much higher then the loiter radius was configured to be. This effectively feels like a fly away and is due to bad parameters usually. If this happens just fall back to the simple EAS2TAS scaling of the radius.
2017-07-30 12:42:21 -07:00
Peter Barker
975d2fd0d1 DataFlash: add debug for io thread failure 2017-07-28 17:06:49 +01:00
Peter Barker
b4688bd3d4 GCS_MAVLink: move common mavlink camera handling up 2017-07-28 14:32:58 +01:00
Peter Barker
bb06b02df6 AP_Camera: add const to some parameters 2017-07-28 14:32:58 +01:00
Peter Barker
a94bf851eb AP_Camera: use multiplication in place of division 2017-07-28 14:27:53 +01:00
Peter Barker
9390539231 AP_Camera: tidy up usage of trigger_pic 2017-07-28 14:27:53 +01:00
Peter Barker
84ef63edc7 AP_Camera: camera is responsible for taking distance-based-images and logging 2017-07-28 14:27:53 +01:00
Peter Barker
7f59279670 AP_GPS: make time_epoch_usec const 2017-07-28 14:27:53 +01:00
priseborough
db7c8439c6 AP_NavEKF3: Fix bug in wheel odometry timestamp correction 2017-07-28 12:48:38 +09:00
Matt
5b605d6e1c AP_Notify: Fix for Oreo LED gyro init inidication
If parameter INS_GYRO_CAL is disabled, usually because operator is
arming on a moving vehicle such as a boat, the Oreo LEDs would wait
indefinitely for a gyro calibration that will never happen.  This
removes that dependency.  The LEDs will strobe blue only when gyros are
actually initializing. Not before.  Consequently, this greatly
simiplifies that portion of the code.
2017-07-27 20:43:58 +09:00
khancyr
f583121433 AC_Fence: reset fences breach on disable
Also rename enable function parameter
2017-07-27 20:41:40 +09:00
Peter Barker
e7ff5107fb AP_GPS: tidy mavlink message handling using switch statement 2017-07-27 12:03:25 +01:00
Peter Barker
2ad453fc89 AP_GPS: handle inject packets as part of handle_msg 2017-07-27 12:03:25 +01:00
Peter Barker
60ffe00164 GCS_MAVLink: move gps inject handling up
Also, make AP_GPS responsible for decoding inject packets
2017-07-27 12:03:25 +01:00
priseborough
c7f6d52065 AP_NavEKF3: Add wheel encoder odometry
Uses the existing body frame odometry observation model.
Handles each sensored wheel as a separate sensor.
2017-07-27 16:52:27 +09:00
priseborough
cbe8f97489 AP_NavEKF3: rename struct used for velocity odometry observations
Do this so we can add other odometry observation types.
2017-07-27 16:52:26 +09:00
priseborough
08a3f55c90 AP_NavEKF3: Fix error in scaling of observation error 2017-07-27 16:52:25 +09:00
priseborough
593437ca95 AP_NavEKF3: Add tuning of visual odometry observation error
Also adjust default values based on replay analysis.
2017-07-27 16:52:25 +09:00
Randy Mackay
eaf8aad5ad AP_WheelEncoder: last_reading is last update time instead of system time 2017-07-27 14:19:08 +09:00
Randy Mackay
2c7b9d9cf7 AP_WheelEncoder: add get_delta_angle
The total angular change measured by the wheel encoder in radians
2017-07-27 14:19:08 +09:00
Randy Mackay
a53e254bd0 AP_WheelEncoder: replace scaling with CPR and radius
CPR is the wheel encoder's counts per revolution of the wheel
radius is the radius of the wheel in meters
2017-07-27 14:19:08 +09:00
Randy Mackay
cd71984705 AP_WheelEncoder: 3d position offset 2017-07-27 14:19:08 +09:00
Randy Mackay
1ddf38869a AP_AHRS: set AP_Notify gps_glitching flag 2017-07-27 14:16:23 +09:00
Randy Mackay
0d5c98ad45 AP_Notify: add gps glitch notification 2017-07-27 14:16:23 +09:00
Randy Mackay
9123b6034e SRV_Channel: update_aux_servo_function first checks function is valid
This resolves a bug in which the board could become unresponsive if an invalid function is selected
2017-07-27 11:09:57 +09:00
Patrick José Pereira
1eeea82e31 AP_Parachute: Add function to return _release_in_progress status
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2017-07-26 17:51:34 +01:00
Randy Mackay
572df8b859 SRV_Channel: minor formatting fixes
no functional change
2017-07-26 13:28:07 +09:00
Randy Mackay
298eaaeb3e SRV_Channels: rename SERVO_DEF_RATE to SERVO_RATE 2017-07-26 13:28:07 +09:00
Randy Mackay
687ec98e5d AP_HAL_PX4: set default servo update rate only when changed
This removes the chance a small switch occurring whenever this function is called
2017-07-26 13:28:07 +09:00
Peter Barker
85a0da6178 GCS_MAVLink: handle common GPS messages in base GCS_MAVLINK class 2017-07-25 14:00:45 +01:00
Randy Mackay
a657daf635 Compass: disable QMC5883 compass driver by default
This driver causes occasional heading issues so disabling until these are resolved
2017-07-25 09:27:29 +09:00
khancyr
2d0bce18a8 AP_Baro: rename all local variable with prefix
fix last missing spaces
2017-07-24 10:15:15 -07:00
khancyr
35ac86ff8d AP_Baro: fix some style and const correctness 2017-07-24 10:15:15 -07:00
khancyr
0e895f5c74 AP_Baro: fix instance shadowing 2017-07-24 10:15:15 -07:00
khancyr
42516f7079 DataFlash: simplify Log_Write_Proximity 2017-07-24 13:44:43 +01:00
khancyr
8abcb7a0e3 GCS_MAVLink: simplify send_proximity 2017-07-24 13:44:43 +01:00
khancyr
603621f2c4 DataFlash: move proximity log from Copter (NFC) 2017-07-24 13:44:43 +01:00
khancyr
ec2ea1c903 GCS_MAVLink: move send_proximity to GCS common code (NFC)
Also clean two comments
2017-07-24 13:44:43 +01:00
Andrew Tridgell
4ca3546551 SRV_Channel: added SERVO_DEF_RATE parameter
this allows for the default rate of servo outputs to be set. This is
needed for some planes where 50Hz isn't enough (eg. tailsitters)
2017-07-24 14:07:28 +10:00
Andrew Tridgell
5b43698e25 HAL_PX4: added rcout set_detault_rate() 2017-07-24 14:07:28 +10:00
Andrew Tridgell
0188d6463d AP_HAL: added rcout set_detault_rate() 2017-07-24 14:07:28 +10:00
Kevin Lopez Alvarez
df406c4389 AP_Compass : increase max possible offset 2017-07-24 13:48:20 +10:00
Kevin Lopez Alvarez
17f2393c1b AP_Compass: Decrease LIS3MDL ODR and timer 2017-07-24 13:48:20 +10:00
Kevin Lopez Alvarez
16a96b0643 HAL_PX4: Adjust SPI params for ppro
Add SPI prescalers for 180 MHz and decrease LIS3MDL SPI speed
2017-07-24 13:48:20 +10:00
Kevin Lopez Alvarez
08b531e6a8 AP_Compass: LIS3MDL correct orientation 2017-07-24 13:48:20 +10:00
Kevin Lopez Alvarez
cf8c1c2665 AP_Compass: Remove comments and use correct board number 2017-07-24 13:47:44 +10:00
Kevin Lopez Alvarez
a5a5bd3a95 AP_BoardConfig: Remove comments and use correct board number 2017-07-24 13:47:06 +10:00
Kevin Lopez Alvarez
ca3627c140 AP_InertialSensor: add ppro support 2017-07-24 13:47:06 +10:00
Kevin Lopez Alvarez
88958b2dbf HAL_PX4: add ppro support 2017-07-24 13:47:06 +10:00
Kevin Lopez Alvarez
1467daee2a AP_Compass: add ppro support
disable lis3mdl for now
2017-07-24 13:47:06 +10:00
Kevin Lopez Alvarez
d6d1a3e08c AP_HAL_PX4: initial FMUv4pro support 2017-07-24 13:45:37 +10:00
Kevin Lopez Alvarez
fb6f368575 AP_HAL: initial FMUv4pro support 2017-07-24 13:45:37 +10:00
Kevin Lopez Alvarez
a51bf8c918 AP_BoardConfig: initial FMUv4pro support 2017-07-24 13:45:37 +10:00
Kevin Lopez Alvarez
d0ec5a6111 AP_BattMonitor: initial FMUv4pro support 2017-07-24 13:45:37 +10:00
Kevin Lopez Alvarez
18dab4829a AP_Baro: initial FMUv4pro support 2017-07-24 13:45:37 +10:00
Andrew Tridgell
401a6f5373 AP_BoardConfig: fixed FMUv1 IO update
when doing an IO firmware update uartC is used to talk to the IO
bootloader. We need to close uartC to prevent corruption of the
bootloader protocol. The uart is automatically re-opened when it is
needed
2017-07-22 16:25:17 +10:00
Michael du Breuil
126296b61d AP_Arming: Compass calibration running is a pre arm failure, rather then an arming failure 2017-07-21 13:38:50 +09:00
Peter Barker
1fd4eb4bfb DataFlash: do not send in-progress messages back to streaming GCSs 2017-07-20 14:57:54 +01:00
Peter Barker
90c2db119e DataFlash: send log data on requesting channel only 2017-07-20 14:57:54 +01:00
Peter Barker
954eda990a AP_Arming: prepare log for arming and check it is ready
Also add comment that this should be the last check to be made
2017-07-19 16:37:28 +01:00
Peter Barker
0769432e63 DataFlash: move log-write-started logic to be backend-specific 2017-07-19 16:37:28 +01:00
Peter Barker
1f0a14ab33 DataFlash: add PrepForArming method 2017-07-19 16:37:28 +01:00
Peter Barker
31083653b2 DataFlash: examples: move starting of new logs into DataFlash 2017-07-19 16:37:28 +01:00
Francisco Ferreira
a1115ba5d0
DataFlash: move some code from WritesOK into a new ShouldLog method 2017-07-19 16:37:21 +01:00
Peter Barker
b572c13ca9 DataFlash: move starting of new logs into DataFlash 2017-07-19 16:37:16 +01:00
Peter Barker
4234f4ef7a DataFlash: move _initialised into DataFlash_Backend 2017-07-19 16:37:16 +01:00
Peter Barker
999a5e6cda AP_Arming: correct bit used to indicate blended-gps-checking 2017-07-19 16:34:57 +01:00
Peter Barker
b8ddf8a289 AP_Arming: use HAL_HAVE_BOARD_VOLTAGE rather than magic-0 2017-07-19 16:34:57 +01:00
Dr.-Ing. Amilcar Do Carmo Lucas
b791fef7cb AP_GPS: Publish the number of satellites in the RTK correction messages, and the age of the RTK correction messages 2017-07-19 20:42:23 +09:00
Dr.-Ing. Amilcar Do Carmo Lucas
ae47ac5a09 AP_GPS: implement missing "RTK number of satellites" and "RTK correction age" information in the GPS2_RAW MAVLink message 2017-07-19 20:42:23 +09:00
Dr.-Ing. Amilcar Do Carmo Lucas
059c213d19 AP_GPS: Improve comments and documentation (NFC) 2017-07-19 20:42:23 +09:00
Randy Mackay
cf47a0d563 AP_AdvancedFailsafe: minor formatting fix 2017-07-19 15:24:21 +09:00
Andrew Tridgell
732dc5984a AP_Compass: added COMPASS_TYPEMASK parameter
this allows driver type to be disabled, to avoid probing them and
wasting CPU on sensors that are not being used

This also moves UAVCAN compass to be detected last, as discussed in the
dev call
2017-07-19 15:53:22 +10:00
Michael du Breuil
5684a5dd36 AP_GPS: Only setup state's instance field during init 2017-07-18 21:21:50 +01:00
Michael du Breuil
52ddaa3e72 DataFlash: POS.RelOriginAlt should be NaN if unknown 2017-07-18 21:21:17 +01:00
Andrew Tridgell
82e7e44cc3 AP_GPS: fixed UAVCAN as 2nd GPS
This fixes the issue here:

  https://discuss.ardupilot.org/t/ac3-6-dev-dual-gps-issues/19172

thanks to Francisco for spotting the issue

this is tested with UAVCAN as 2nd GPS, ublox as primary
2017-07-18 18:57:55 +01:00
Peter Barker
eb1cf0e73a GCS_MAVLink: remove MSG_STATUSTEXT entirely 2017-07-18 16:12:59 +01:00
Michael du Breuil
e092a83ca2 AP_Landing: Deepstall: Allow requiring a minimum altitude to abort a landing 2017-07-17 08:43:50 -07:00
Michael du Breuil
202b40562f Landing: Fix bad deepstall parameter group 2017-07-17 08:43:50 -07:00
Michael du Breuil
8de96ee4a1 AP_Param: Check for duplicate group id's before handling groups 2017-07-17 08:43:50 -07:00
Peter Barker
06647cde2c GCS_MAVLink: move handling of PREFLIGHT_SET_SENSOR_OFFSETS up 2017-07-17 14:17:19 +01:00
Peter Barker
bd28bdd907 GCS_MAVLink: move handling of MAG_CAL command longs up 2017-07-17 14:17:19 +01:00
Peter Barker
6b53b5b5f3 AP_Compass: make handle_mag_cal_command return type stricter 2017-07-17 14:17:19 +01:00
Peter Barker
a7e57aa3fc GCS_MAVLink: move MAV_CMD_START_RX_PAIR handling to base class 2017-07-17 14:17:19 +01:00
priseborough
58d58b4eac AP_NavEKF3: Initialise EKF origin height to field elevation
Enables copters to set bit position 2 in the EK3_OGN_HGT_MASK parameter without having a large jump in reported local position height.
2017-07-17 02:22:02 +01:00
priseborough
ac568bae53 AP_NavEKF2: Initialise EKF origin height to field elevation
Enables copters to set bit position 2 in the EK2_OGN_HGT_MASK parameter without having a large jump in reported local position height.
2017-07-17 02:22:02 +01:00
priseborough
0827b13feb AP_NavEKF3: Fix default behaviour for height origin corrections
Previous default was to apply in-flight height origin changes to local position instead of to reported origin height. This caused problems with copters that took off before getting GPS lock.
2017-07-17 02:22:02 +01:00
priseborough
027552ef44 AP_NavEKF2: Fix default behaviour for height origin corrections
Previous default was to apply in-flight height origin changes to local position instead of to reported origin height. This caused problems with copters that took off before getting GPS lock.
2017-07-17 02:22:02 +01:00
Peter Barker
318861e824 GCS_MAVLink: move mavlink support for servo/relay up 2017-07-16 23:56:00 +01:00
Peter Barker
cfc8d7feba GCS_MAVLink: add common handling of mavlink command messages 2017-07-16 23:56:00 +01:00
Michael du Breuil
6b60c110a5 AP_Baro: Improve GND_TEMP parameter docs 2017-07-16 20:22:00 +01:00
Michael du Breuil
3dd47bff8b AP_BattMonitor: Allow generic SMBus batteries to not have cell voltages 2017-07-15 14:53:53 +01:00
Peter Barker
69eb9cbdd2 GCS_MAVLINK: add missing mavlink mission msgid to case 2017-07-15 17:01:18 +09:00
Michael du Breuil
f14667225d AP_Baro: Avoid a FPE when ground pressure is negative 2017-07-15 10:49:16 +09:00
khancyr
f60e7df309 AP_Proximity: correct missing use of PROXIMITY_MAX_DIRECTION 2017-07-14 18:59:36 +01:00
Andrew Tridgell
42181ee7c8 HAL_SITL: use SIM_GPS_LOCKTIME 2017-07-14 15:02:14 +10:00
Andrew Tridgell
a7967e00e4 SITL: added SIM_GPS_LOCKTIME parameter 2017-07-14 15:02:12 +10:00
Siddharth Bharat Purohit
807ba9d520 HAL: use correct datatype for time conversion 2017-07-13 18:23:00 -07:00
Siddharth Bharat Purohit
caf8dce75c HAL_VRBRAIN: use correct datatype for time conversion 2017-07-13 18:23:00 -07:00
Siddharth Bharat Purohit
d1e0f9733e HAL_Linux: use correct datatype for time conversion 2017-07-13 18:23:00 -07:00
Siddharth Bharat Purohit
66a94f7a10 HAL_PX4: use correct datatype for time conversion 2017-07-13 18:23:00 -07:00
Peter Barker
aa6b339252 GCS_MAVLink: improve rally debug strings 2017-07-14 01:28:05 +01:00
Peter Barker
99cc684d0a GCS_MAVLink: GCS_Rally: increase severity of mavlink statustexts
This matches plane, sending at an increased level
2017-07-14 01:28:05 +01:00
Peter Barker
ebe3dcef6f GCS_MAVLink: move rally-point handling up 2017-07-14 01:28:05 +01:00
Peter Barker
1748e7cb0c AP_Baro: make backends responsible for setting their health
This resolves a problem in SITL where the barometer would
not change value for prolonged period of time, making it
go unhealthy
2017-07-14 07:28:48 +09:00
Randy Mackay
d61731cdd6 AP_WheelEncoder: minor formatting fix 2017-07-14 07:27:26 +09:00
Randy Mackay
d356e60269 AP_WheelEncoder: library to read from wheel encoders 2017-07-14 07:27:26 +09:00
Peter Barker
3338de827e GCS_MAVLink: remove unneeded telemetry_delayed parameter
Also make it protected
2017-07-12 17:02:54 +01:00
Peter Barker
129d7220e6 GCS_MAVLink: move handling of incoming statutext messages up 2017-07-12 16:52:24 +01:00
ljwang
603e903ccd AP_Compass: QMC5883 Add internal i2c bus and fix rotation error 2017-07-12 12:56:59 +10:00
Peter Barker
ae6df4fc04 AC_Fence: remove global static send_statustext_chan 2017-07-11 23:53:53 +01:00
Peter Barker
5c0aa27b2f GCS_MAVLink: remove global static send_statustext_chan 2017-07-11 23:53:53 +01:00
Peter Barker
a599bc9031 GCS_MAVLink: eliminate GCS_MAVLINK::send_statustext_all 2017-07-11 23:53:53 +01:00
Peter Barker
f6a09d0657 DataFlash: eliminate GCS_MAVLINK::send_statustext_all 2017-07-11 23:53:53 +01:00
Peter Barker
33a974d7f5 AP_Tuning: eliminate GCS_MAVLINK::send_statustext_all 2017-07-11 23:53:53 +01:00
Peter Barker
85756b7226 AP_Terrain: eliminate GCS_MAVLINK::send_statustext_all 2017-07-11 23:53:53 +01:00
Peter Barker
196f94aaae AP_Soaring: eliminate GCS_MAVLINK::send_statustext_all 2017-07-11 23:53:53 +01:00
Peter Barker
93e09c51d3 AP_NavEKF3: eliminate GCS_MAVLINK::send_statustext_all 2017-07-11 23:53:53 +01:00
Peter Barker
5da3759ff4 AP_NavEKF2: eliminate GCS_MAVLINK::send_statustext_all 2017-07-11 23:53:53 +01:00
Peter Barker
35d8f11e46 AP_Motors: eliminate GCS_MAVLINK::send_statustext_all 2017-07-11 23:53:53 +01:00
Peter Barker
eab60e6163 AP_Mission: eliminate GCS_MAVLINK::send_statustext_all 2017-07-11 23:53:53 +01:00
Peter Barker
cc150f75c7 AP_Landing: eliminate GCS_MAVLINK::send_statustext_all 2017-07-11 23:53:53 +01:00
Peter Barker
1beb1550ae AP_IceEngine: eliminate GCS_MAVLINK::send_statustext_all 2017-07-11 23:53:53 +01:00
Peter Barker
76847a2487 AP_GPS: eliminate GCS_MAVLINK::send_statustext_all 2017-07-11 23:53:53 +01:00
Peter Barker
31ffc83f64 AP_Camera: eliminate GCS_MAVLINK::send_statustext_all 2017-07-11 23:53:53 +01:00
Peter Barker
4312d1a500 AP_BoardConfig: eliminate GCS_MAVLINK::send_statustext_all 2017-07-11 23:53:53 +01:00
Peter Barker
9e76223c34 AP_Arming: eliminate GCS_MAVLINK::send_statustext_all 2017-07-11 23:53:53 +01:00
Peter Barker
3214b48f8c AP_AirSpeed: eliminate GCS_MAVLINK::send_statustext_all 2017-07-11 23:53:53 +01:00
Peter Barker
ad7cb6ef32 AP_AdvancedFailsafe: eliminate GCS_MAVLINK::send_statustext_all 2017-07-11 23:53:53 +01:00
Peter Barker
e69bc5f46b AP_ADSB: eliminate GCS_MAVLINK::send_statustext_all 2017-07-11 23:53:53 +01:00
Peter Barker
69c7402c9c GCS_MAVLink: add const chan method to GCS_Dummy 2017-07-11 23:48:50 +01:00
Peter Barker
731aaed8af GCS_MAVLink: eliminate global static GCS_MAVLINK::send_home_all 2017-07-11 23:48:39 +01:00
Peter Barker
6cc19fee35 GCS_MAVLink: GCS_Dummy and GCS_routing get get_mission 2017-07-11 23:47:52 +01:00
Peter Barker
726007efde GCS_MAVLink: move common mission handling up to GCS_MAVLINK 2017-07-11 23:45:17 +01:00
Michael du Breuil
cb1b9b6674 AP_GPS: Fix SBF race condition on start
Unsure what the underlying problem is, but the length of the first string in
the initilisation_blob increasing resulted in a race condition, waiting
longer before retrying the message resolves it, but we still need to identify
the underlying problem. This patch just results in the GPS working with current
configurations. Tested against AsteRx-M firmware 3.6.3
2017-07-11 09:40:02 +09:00
Jacob Walser
20889ff8a9 APMotors6DOF: Add motor reverse parameters for motors 9-12
Fix overruns found in coverity 145496-99
2017-07-11 09:34:40 +09:00
Andrew Tridgell
dd7c96a6cc AP_Radio: reseve an ID for AP_Radio
as discussed with Randy
2017-07-10 17:07:36 +10:00
Randy Mackay
bd2ba1565c AC_WPNav: minor format fix 2017-07-10 13:26:37 +09:00
Peter Barker
02532af64b GCS_MAVLink: a send_text method on the GCS singleton 2017-07-09 17:17:29 -04:00
Peter Barker
ca6e34dfbd GCS_MAVLink: use Notify singleton for sending statustext 2017-07-09 17:17:29 -04:00
Peter Barker
eb1f22fc67 AP_Notify: add singleton 2017-07-09 17:17:29 -04:00
Randy Mackay
d636e85eac AP_Proximity: SF40c driver treats zero distances as invalid 2017-07-08 14:09:17 +09:00
Randy Mackay
6982e58cf2 Baro: health check that values are changing 2017-07-08 08:40:19 +09:00
Randy Mackay
d64b2fcbf0 AP_NavEKF3: final mag reset at 2.5m 2017-07-08 08:39:43 +09:00
Randy Mackay
7e7f78d4b5 AP_NavEKF2: final mag reset at 2.5m 2017-07-08 08:39:43 +09:00
Peter Barker
c1264cf60a DataFlash: Use GCS_Dummy GCS singleton 2017-07-07 16:18:37 +01:00
Peter Barker
3e0ed6deae AP_AHRS: Use GCS_Dummy GCS singleton 2017-07-07 16:18:37 +01:00
Peter Barker
3f43789742 GCS_MAVLINK: provide a GCS singleton for examples and tools to use 2017-07-07 16:18:37 +01:00
Peter Barker
db27346fd7 GCS_MAVLink: move GCS functions up from GCS_Plane 2017-07-07 16:18:37 +01:00
Peter Barker
c163915f6e AP_HAL: correct storage example 2017-07-07 16:18:37 +01:00
Randy Mackay
51fa8fb0bd AP_InertialSensor: resolve member init order compiler warning 2017-07-07 17:27:23 +09:00
Eugene Shamaev
43e9c8370f AP_BoardConfig: increase start delay to 5 seconds 2017-07-03 11:44:32 +01:00
Eugene Shamaev
c6df13c795 AP_UAVCAN: changes to servo bitmasks to support multiple instances, baro, compass, gps changes for several CAN interfaces 2017-07-03 11:44:32 +01:00
Eugene Shamaev
a7921a273b AP_BoardConfig: move of CAN parameters into separate group and support of several interfaces 2017-07-03 11:44:32 +01:00
Eugene Shamaev
36655310b3 AP_HAL_PX4: support for several CAN interfaces and drivers, filtering support 2017-07-03 11:44:32 +01:00
Eugene Shamaev
ec8aa2e23f SRV_Channel: move of CAN bitmasks into AP_UAVCAN 2017-07-03 11:44:32 +01:00
Eugene Shamaev
5341e51f45 AP_GPS: support for multiple instances on different interfaces 2017-07-03 11:44:32 +01:00
Eugene Shamaev
aa1f6a7587 AP_Compass: united enumeration on startup, multiple CAN drivers, correct dev_id based on network and node ID 2017-07-03 11:44:32 +01:00
Eugene Shamaev
6e6efa7e1b AP_Baro: enumeration and multiple interfaces support 2017-07-03 11:44:32 +01:00
Eugene Shamaev
8f2306fd19 AP_HAL: support of several CAN managers (virtual drivers) 2017-07-03 11:44:32 +01:00
Andrew Tridgell
ca8a2a1f34 AP_RSSI: support receiver based RSSI protocols 2017-07-03 11:22:21 +10:00
Andrew Tridgell
a88693c487 HAL_PX4: support RSSI from receiver protocols 2017-07-03 11:22:21 +10:00
Andrew Tridgell
9868ffe13b HAL_Linux: support receiver based RSSI 2017-07-03 11:22:21 +10:00
Andrew Tridgell
94b5a9c6f0 AP_HAL: added RSSI interface for RCInput 2017-07-03 11:22:21 +10:00
Andrew Tridgell
64f722876f RC_Channel: use set_and_save_ifchanged 2017-07-03 11:17:42 +10:00
Andrew Tridgell
1d41dc034d SRV_Channel: deprecate aileron_with_input and elevator_with_input 2017-07-03 11:17:42 +10:00
Andrew Tridgell
b50ab75f4c RC_Channel: added set_and_save_trim() 2017-07-03 11:17:42 +10:00
Andrew Tridgell
cde4afd28e SRV_Channel: added set_trim_to_servo_out_for()
this will be used for new TRIM_AUTO functionality in plane
2017-07-03 11:17:42 +10:00
Andrew Tridgell
9cb672e85e SRV_Channel: added doc values for dspoilers
and fix missing Motor9 to Motor12 values
2017-07-03 11:17:42 +10:00
Andrew Tridgell
7627246ff8 SRV_Channels: added 4 channel dspoiler support 2017-07-03 11:17:42 +10:00
Andrew Tridgell
907534d55f SITL: added dspoiler support 2017-07-03 11:17:42 +10:00
Andrew Tridgell
6b3bb29398 SRV_Channel: rename flaperon1 and flaperon2 to flaperon_left and flaperon_right
this makes it more consistent with elevons and vtails
2017-07-03 11:17:42 +10:00
Randy Mackay
edc9d4db5b AP_InertialSensor: increase accel filter to 20hz 2017-07-03 09:38:15 +09:00
Peter Barker
7b3db490be DataFlash: correct examples 2017-06-29 15:43:39 +01:00
Peter Barker
9c2a2a3d94 AP_Module: correct example 2017-06-29 15:43:39 +01:00
Peter Barker
cbe9627bf5 AP_GPS: correct example 2017-06-29 15:43:38 +01:00
Peter Barker
12b4f2c4b6 AP_AHRS: correct example 2017-06-29 15:43:38 +01:00
Peter Barker
7258cfd20b AP_GPS: check dataflash to see if we should log backend gps messages 2017-06-29 15:43:38 +01:00
Peter Barker
6ae86a0b8c AP_InertialSensor: use DataFlash should_log to determine raw logging 2017-06-29 15:26:27 +01:00
Peter Barker
4dfdffde43 DataFlash: move should_log check of log bitmask into DataFlash 2017-06-29 15:26:27 +01:00
Francisco Ferreira
f35f0d59dd
AP_GPS: fix SBP2 driver build warnings by using memcpy
Build gave the following warnings:

../../libraries/AP_GPS/AP_GPS_SBP2.cpp: In member function ‘void AP_GPS_SBP2::_sbp_process_message()’:
../../libraries/AP_GPS/AP_GPS_SBP2.cpp:181:78: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             last_heartbeat = *((struct sbp_heartbeat_t*)parser_state.msg_buff);
                                                                              ^
../../libraries/AP_GPS/AP_GPS_SBP2.cpp:181:28: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             last_heartbeat = *((struct sbp_heartbeat_t*)parser_state.msg_buff);
                            ^
../../libraries/AP_GPS/AP_GPS_SBP2.cpp:186:76: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             last_gps_time = *((struct sbp_gps_time_t*)parser_state.msg_buff);
                                                                            ^
../../libraries/AP_GPS/AP_GPS_SBP2.cpp:186:27: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             last_gps_time = *((struct sbp_gps_time_t*)parser_state.msg_buff);
                           ^
../../libraries/AP_GPS/AP_GPS_SBP2.cpp:190:74: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             last_vel_ned = *((struct sbp_vel_ned_t*)parser_state.msg_buff);
                                                                          ^
../../libraries/AP_GPS/AP_GPS_SBP2.cpp:190:26: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             last_vel_ned = *((struct sbp_vel_ned_t*)parser_state.msg_buff);
                          ^
../../libraries/AP_GPS/AP_GPS_SBP2.cpp:194:74: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             last_pos_llh = *((struct sbp_pos_llh_t*)parser_state.msg_buff);
                                                                          ^
../../libraries/AP_GPS/AP_GPS_SBP2.cpp:194:26: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             last_pos_llh = *((struct sbp_pos_llh_t*)parser_state.msg_buff);
                          ^
../../libraries/AP_GPS/AP_GPS_SBP2.cpp:198:68: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             last_dops = *((struct sbp_dops_t*)parser_state.msg_buff);
                                                                    ^
../../libraries/AP_GPS/AP_GPS_SBP2.cpp:198:23: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             last_dops = *((struct sbp_dops_t*)parser_state.msg_buff);
                       ^
../../libraries/AP_GPS/AP_GPS_SBP2.cpp:202:74: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             last_event = *((struct sbp_ext_event_t*)parser_state.msg_buff);
                                                                          ^
../../libraries/AP_GPS/AP_GPS_SBP2.cpp:202:24: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             last_event = *((struct sbp_ext_event_t*)parser_state.msg_buff);
                        ^
2017-06-29 15:18:09 +01:00
ebethon
005dbf41a7 AP_GPS: Add SBP EXT_EVENT Message to dataflash log 2017-06-29 15:18:05 +01:00
ebethon
526d5a4c44 DataFlash: Add SBP EXT_EVENT Message 2017-06-29 15:18:05 +01:00
ebethon
4779a8f1f1 AP_GPS: Rename SBR1/SBR2 to SBRH/SBRM and change format
Add (sender_id, msg_len) in SBRM message
Add index/pages in SBRH/SBRM messages
Change format to integers to avoid GCS string parsing
Decrease data size in SBRH
2017-06-29 15:14:54 +01:00
ebethon
0b5dad33f2 DataFlash: Rename SBR1/SBR2 to SBRH/SBRM and change format
Add (sender_id, msg_len) in SBRM message
Add index/pages in SBRH/SBRM messages
Change format to integers to avoid GCS string parsing
Decrease data size in SBRH
2017-06-29 15:14:54 +01:00
Miguel Arroyo
7cea21afa2 AP_Math: Moves rand_vec3f from SITL_State. 2017-06-29 09:22:08 +10:00
Miguel Arroyo
86b9942d51 AP_HAL_SITL: move SITL Compass to standard sensor backend model 2017-06-29 09:22:08 +10:00
Miguel Arroyo
ee328c9683 AP_Compass: move SITL Compass to standard sensor backend model 2017-06-29 09:22:08 +10:00
Georgii Staroselskii
0203b4c1b1 AP_Notify: RCOutputRGBLed: remove cork()
cork()/push() will be called in the vehicle code.

The issue that led to this fix was as follows:
- on a Linux board (Navio 2) usage of this class didn't yield any PWM on
  the expected outputs on Rover (Copter and Plane worked as expected)

After dicsussion at #6339 rover code was changed (541538f) to use make
proper use of SRV_Channels API.

This fix is also the consequence of the discussion. TL;DR: the output is
only done when commanded by the vehicle.
2017-06-27 11:46:41 -07:00
Peter Barker
ad17709390 DataFlash: handle knowledge of in_log_download in DataFlash 2017-06-27 03:10:43 +01:00
Peter Barker
4c1aff03a3 GCS_MAVLink: move send-logs-via-mavlink code into DataFlash 2017-06-27 03:10:43 +01:00
Peter Barker
305531952f DataFlash: move send-logs-via-mavlink code into DataFlash 2017-06-27 03:10:43 +01:00
Peter Barker
cbbee995b6 GCS_MAVLink: move GCS_Logs into DataFlash directory 2017-06-27 03:10:43 +01:00
Rob Ratcliff
60c6f8ad60 AP_GPS: fix bug when injecting messages bigger than 255 bytes
Commit 5261654 changed the used injection method so change this method signature to use uint16 for message length like previous injection method did
2017-06-27 03:06:26 +01:00
priseborough
9d0fa09d39 AP_NavEKF3: Fix calculation of predicted LOS rate in terrain estimator 2017-06-26 14:58:06 +01:00
priseborough
c69c5440a0 AP_NavEKF2: Fix calculation of predicted LOS rate in terrain estimator 2017-06-26 14:58:06 +01:00
Francisco Ferreira
a83457ab07
AP_BattMonitor: complement commit d3314d7684 by adding to second battery monitor too 2017-06-26 13:41:12 +01:00
Miguel Arroyo
4394c5145b AP_HAL_SITL: Fixes bug with uartF.
uartF _timer_tick() was not being called in the scheduler.
2017-06-26 13:05:16 +01:00
fsherratt
d3314d7684 AP_BattMonitor: param desc explicitly list Pixhawk 2 PM1 pins
There is confusion over which pins to use with the pixhawk 2, updated documentation to explicitly state the PM1 pins as being the same as the original pixhawk
2017-06-24 11:01:03 +09:00
priseborough
a4d18696a7 AP_NavEKF3: Improve variable names and documentation
Also remove unnecessary calculation of innov * gain
2017-06-23 00:43:58 +01:00
priseborough
368983ed5a AP_NavEKF3: Clean up aiding mode logic using switch statements 2017-06-23 00:43:58 +01:00
priseborough
2a9eceaf10 AP_NavEKF3: Fix bugs causing height drift when using range beacons 2017-06-23 00:43:58 +01:00
Miguel Arroyo
6cf9b870b5 AP_Baro: AP_Baro_SITL more accurately simulates real sensor backend. 2017-06-23 09:36:28 +10:00
Pierre Kancir
ccbf281137 AP_RangeFinder: allow to set rangefinder type for mavlink 2017-06-22 16:17:58 +01:00
Leonard Hall
ed0063d10d AC_AttControl: save accel max using shorter set_and_save
no functional change
2017-06-22 15:20:16 +09:00
Leonard Hall
0544cf1d82 AC_AttControl: add step input for autotune 2017-06-22 15:18:04 +09:00
Michael du Breuil
249849dfa4 AP_GPS: Add an enum for _auto_config 2017-06-21 11:44:45 +01:00
Michael du Breuil
5f8633e322 AP_GPS: Allow backends to report their lag confidences 2017-06-21 11:44:45 +01:00
priseborough
7659e9c31f AP_NavEKF3: Improve checking of time delay validity when setting buffers
This change means that provided the GPS_DELAY_MS parameters are set for each GPS receiver attached, the EKF will not have to wait for the configuration of each receiver to be determined before it can start.
This significantly reduces start-up times when the delay parameters are set.
2017-06-21 11:44:45 +01:00
priseborough
7d63286088 AP_NavEKF3: update to match AP_GPS interface change 2017-06-21 11:44:45 +01:00
priseborough
fa5534502a AP_AHRS: Update to match AP_GPS interface change 2017-06-21 11:44:45 +01:00
priseborough
5dcfc94371 AP_GPS: Add validity boolean to GPS lag reporting 2017-06-21 11:44:45 +01:00
priseborough
bd0229b7bc AP_GPS: Fix bug in calculation of blended GPS delay 2017-06-21 11:44:45 +01:00
Francisco Ferreira
da5060964b AP_Math: uniformize template type parameter keyword
Use typename everywhere instead of class
2017-06-21 18:19:31 +09:00
Francisco Ferreira
1ffe12008c AP_Math: adapt test for new norm method API 2017-06-21 18:19:31 +09:00
Francisco Ferreira
7b98f41947 AP_Math: correct norm to need two arguments
Correctly use sqrtf instead of the double version
Stop casting to float since sq already returns one
2017-06-21 18:19:31 +09:00
Andrew Tridgell
f3d995a716 AP_Compass: improved robustness of BMM150 detection code
cope with bus errors on startup
2017-06-21 16:25:37 +10:00
Andrew Tridgell
68460144df AP_Compass: added retries on init in BMM150 2017-06-21 16:25:37 +10:00
Andrew Tridgell
9b093c4a33 AP_Compass: fixed a numerical issue in BMM150 driver
we were getting the following:

  ret=-32768 z=5 rhall=6267 z1=23743 z2=712 z3=-1035 z4=0 xyz1=6264 dividend=163840 dividend2=-1073577207 divisor=5253

the signed/unsigned casts for rhall and xyz1 did not produce the
desired result
2017-06-21 16:25:37 +10:00
Andrew Tridgell
0623db98d6 AP_Compass: cope with bus errors in BMM150
if we have bus errors the BMM150 can get confused, giving rubbish
output. This uses the checked register code to reset, and a full soft
reset after 250ms of no samples.
2017-06-21 16:25:37 +10:00
Andrew Tridgell
fa3d40af8a AP_Compass: fixed shift typo
this doesn't affect LE MCUs like STM32
2017-06-21 16:25:37 +10:00
Andrew Tridgell
b8f628da83 HAL_PX4: fixed bug in last_sent
thanks to Francisco
2017-06-21 11:40:12 +10:00
Andrew Tridgell
17893958bf HAL_PX4: cope with brushed motors in read_last_sent()
we need the value before scaling is applied, so slew rates can work
2017-06-21 10:55:24 +10:00
Andrew Tridgell
bc8c13d053 SRV_Channel: cope with large time jumps in slew rate limiter 2017-06-20 20:53:44 +09:00
Randy Mackay
a303c40f1f AP_Beacon: initialise counter in get_next_boundary_point
This is not a bug but at least one compiler has complained about this
2017-06-20 16:34:41 +09:00
priseborough
06d40a7901 AP_NavEKF3: Fix terrain estimator innovation consistency check 2017-06-20 02:08:56 +01:00
priseborough
ce8e935896 AP_NavEKF2: Fix terrain estimator innovation consistency check 2017-06-20 02:08:56 +01:00
priseborough
284fc0f3c5 AP_NavEKF3: Fix bug in flow fusion for terrain estimation
Also remove unused class variables
2017-06-20 02:08:56 +01:00
priseborough
b7e6e6f95f AP_NavEKF2: Fix bug in flow fusion for terrain estimation
Also remove unused class variables
2017-06-20 02:08:56 +01:00
Michael du Breuil
0b26908359 Landing: Disarm on land for deepstall 2017-06-19 17:02:23 -07:00
Andrew Tridgell
a1508b58c1 AP_NavEKF3: use AHRS likely flying state
this sets inFlight when AHRS has indicated flying for 5s
2017-06-20 09:44:44 +10:00
Andrew Tridgell
cbffc29f0b AP_NavEKF2: use AHRS likely flying state
this sets inFlight when AHRS has indicated flying for 5s
2017-06-20 09:44:44 +10:00
Andrew Tridgell
770f697cfc AP_AHRS: added set/get for flying state
this allows the vehicle code to set the likely flying state, which can
be used by EKF to trigger changes which should only happen when flying
(such as mag alignment)
2017-06-20 09:44:44 +10:00
priseborough
647db728ce AP_NavEKF2: Improve is flying check for non fly forward vehicles
Will enable use of EK3_MAG_TYPE = 0 for coptersAP_NavEKF2:
2017-06-19 06:09:07 +10:00
priseborough
edee8396ba AP_NavEKF3: Improve in-flight check for non fly forward vehicles
This will enable the EK3_MAG_TYPE 0 option to be used for multirotors
2017-06-19 06:09:07 +10:00
Andrew Tridgell
a0e4ec0f3a AP_Compass: fixed bitmask typo 2017-06-18 18:15:47 +10:00
Touch
5da2e0b3fb Update code format 2017-06-18 17:25:20 +10:00
ljwang
8fff1ec4d4 add QMC5883L driver for GPS compass module 2017-06-18 17:25:20 +10:00
ljwang
e648f2e61e add QMC5883L driver for GPS compass module 2017-06-18 17:25:20 +10:00
Peter Barker
5c19f09cd7 DataFlash: handle mavlink messages, not just remote-log-block-statuses 2017-06-17 15:07:48 +01:00
Peter Barker
cf918d233f GCS_MAVLink: move MAVLINK_MSG_ID_REMOTE_LOG_BLOCK_STATUS handling up 2017-06-17 15:07:48 +01:00
Andrew Tridgell
abd0831239 AP_Motors: changed BRUSHED16kHz to BRUSHED 2017-06-17 17:37:45 +10:00
Andrew Tridgell
11396919c8 HAL_PX4: changed BRUSHED16kHz to BRUSHED 2017-06-17 17:37:45 +10:00
Andrew Tridgell
1c741e78e6 AP_HAL: changed BRUSHED16kHz to BRUSHED 2017-06-17 17:37:45 +10:00
Andrew Tridgell
96627bc4e5 HAL_PX4: allow any pulse freq in brushed mode 2017-06-17 17:37:45 +10:00
Andrew Tridgell
97e88501c6 AP_OpticalFlow: support pixart 3901 2017-06-16 17:14:10 +01:00
Peter Barker
6a03af8f3e DataFlash: make EnableWrites a frontend thing 2017-06-16 17:07:48 +01:00
Peter Barker
07e37281ef DataFlash: add a should_log method 2017-06-16 17:07:48 +01:00
Peter Barker
001d3a7118 DataFlash: correct consts on CardInserted 2017-06-16 17:07:48 +01:00
Peter Barker
244365767d DataFlash: remove DataFlash_Block and DataFlash_SITL 2017-06-16 13:52:45 +01:00
Dr.-Ing. Amilcar Do Carmo Lucas
6a01c65197 AP_NavEKF3: Fix long description of EK3_OGN_HGT_MASK parameter (NFC) 2017-06-16 12:05:20 +01:00
Dr.-Ing. Amilcar Do Carmo Lucas
7426bdb9b7 AP_NavEKF2: Fix long description of EK2_OGN_HGT_MASK parameter 2017-06-16 12:05:20 +01:00
Randy Mackay
a199604348 AP_Beacon: fix get_boundary_points num_points
Thanks @OXINARF for finding this!
2017-06-15 09:36:27 +09:00
priseborough
b42fb31d7d AP_NavEKF2: Change default value of EK2_OGN_HGT_MASK
Turn off by default.
Update parameter description
2017-06-14 12:44:41 +01:00
priseborough
49ec2b4032 AP_NavEKF3: Change default value of EK3_OGN_HGT_MASK
Turn off by default.
Update parameter description.
2017-06-14 12:44:41 +01:00
priseborough
fd25450632 AP_NavEKF2: Ensure reported local height = global height - origin height 2017-06-14 12:44:41 +01:00
priseborough
6d14cf0ab8 AP_NavEKF3: Ensure reported local height = global height - origin height 2017-06-14 12:44:41 +01:00
priseborough
798d5f85a2 DataFlash: Log EKF origin height 2017-06-14 12:44:41 +01:00
priseborough
a3483d0d34 AP_AHRS: Update for compatibility with EKF interface change 2017-06-14 12:44:41 +01:00
priseborough
3ae7998f51 AP_NavEKF3: Allow reporting of origin height for specified instance 2017-06-14 12:44:41 +01:00
priseborough
77d21f72d4 AP_NavEKF2: Allow reporting of origin height for specified instance 2017-06-14 12:44:41 +01:00
priseborough
e58ba8044d AP_NavEKF3: Improve protection for badly conditioned dVel bias covariances
If variance falls below desired minimum, set state noise to a larger value.
If variance drops below safe value, set to desired minimum and reset off-diagonals to zero.
2017-06-14 12:44:41 +01:00
priseborough
bf963f8b65 AP_NavEKF3: Raise lower limit on del vel bias state variances
This is required to prevent co-variance matrix errors due to long periods without movement causing height divergence.
2017-06-14 12:44:41 +01:00
priseborough
628d140319 AP_NavEKF3: Make target covariance time step larger
The target covariance time step has been increased from 10 to 12 msec to improve conditioning of the covariance prediction calculation.
2017-06-14 12:44:41 +01:00
priseborough
4c08622a7c DataFlash: Add logging for EKF3 state variances 2017-06-14 12:44:41 +01:00
priseborough
2b97d0f5c9 AP_NavEKF3: Add public accessor for state variances 2017-06-14 12:44:41 +01:00
priseborough
9f97cbfc3b AP_NavEKF3: Revert auto-code to original form and remove micro optimisations
To eliminate the possibility of editing errors, revert the covariance prediction auto-code to the original auto-code without the replacement fo the /2 and /4 operations. The compiler optimisations are able to correctly handle the /2 and /4 operations.

Also use local variables for intermediate covariance calculations. The use of class variables for these small arrays was unnecessary.
2017-06-14 12:44:41 +01:00
priseborough
f38fccd57c AP_NavEKF3: Prevent possible race condition re-zeroing state variances 2017-06-14 12:44:41 +01:00
priseborough
7adaea6019 AP_NavEKF3: Improve partitioning and efficiency of the covariance prediction
This patch ensures that covariance matrix entries for inactive states are always set to zero.
It also halves the number of copy operations from the updated to stored matrix.
2017-06-14 12:44:41 +01:00
priseborough
a1c117360c AP_NavEKF3: Ensure Kalman gain calculatons respect deactivated states
All Kalman gain calculations now explicity set gains for deactivated states to zero.
Previous use of loops to set gains to zero have been replaced with more efficient memset operations.
2017-06-14 12:44:41 +01:00
priseborough
5058405f8c AP_NavEKF3: add gyro bias state inhibit and rework index limit calculation
Inhibiting gyro bias estimation during the initial tilt alignment speeds alignment.
The calculation of the maxmum state index required has been modified so that it can handle all combinations of inhibited states.
Limiting the maximum state index accessed by all EKF operations result in significant processing reductions when higher index states are not being used.
2017-06-14 12:44:41 +01:00
priseborough
0cba133a1e AP_NavEKF3: Fix initialisation of state inhibit flags 2017-06-14 12:44:41 +01:00
priseborough
36e7dfb5f6 AP_NavEKF2: Improve GPS reference height estimator
Fix rounding error bug preventing state from updating after initial convergence.
Decouple GPS reference height from published EKf origin height.
Add bitmask parameter to control update and publishing of GPS reference height.
2017-06-14 12:44:41 +01:00
priseborough
9da3caca47 AP_NavEKF3: Improve GPS reference height estimator
Fix rounding error bug preventing state from updating after initial convergence.
Decouple GPS reference height from published EKf origin height.
Add bitmask parameter to control update and publishing of GPS reference height.
2017-06-14 12:44:41 +01:00
Pierre Kancir
e7a5dd6a69 AP_Marvelmind: fix warning in example 2017-06-14 12:40:47 +01:00
Pierre Kancir
914bc53100 Dataflash: fix shadowing of logstructure in SITL 2017-06-14 12:40:47 +01:00
Peter Barker
af6eb4e41d DataFlash: remove unused NeedPrep function 2017-06-14 12:20:29 +01:00
Peter Barker
9fb4ac2143 DataFlash: update examples for init simplification 2017-06-14 12:20:29 +01:00
Peter Barker
91b62abfe5 DataFlash: simplify dataflash initialisation 2017-06-14 12:20:29 +01:00
Randy Mackay
3bcc410048 AP_Beacon: fix pozyx west-east processing 2017-06-14 16:07:32 +09:00
Randy Mackay
af7f4fef0a DataFlash: protect against large testRatio from EKF
This should be resolved in the EKF but for now this stops the floating point exception
2017-06-14 16:07:32 +09:00
Shingo Matsuura
7b0f6edf31 AC_Avoidance: add adjust velocity by beacon fence 2017-06-14 16:07:32 +09:00
Randy Mackay
cded78022c AP_Beacon: update_boundary_points calculates outer perimeter around beacons 2017-06-14 16:07:32 +09:00
Shingo Matsuura
c9475c2747 AP_Beacon: add get_boundary_points 2017-06-14 16:07:32 +09:00
Paulo Neves
3158cafefd AP_Beacon: Added Marvelmind beacon example.
This commit includes an example program to
run the code of AP_Marvelmind class.
It also includes a dump from the marvelmind
serial as well as a script that injects
this dump into the example for demonstration.
2017-06-14 09:33:23 +09:00
Randy Mackay
3e130273a9 AP_AHRS: do not fallback to DCM if EKF can provide relative position 2017-06-14 09:12:20 +09:00
Michael du Breuil
3534d0a0eb AP_Landing: Fix missing doc for LAND_TYPE 2017-06-13 20:06:41 +09:00
Randy Mackay
c9cc0de83d AP_LandingGear: set pwm only when set_position called
Also simplify interface and internal state
2017-06-13 13:56:07 +09:00
Michael du Breuil
6c3db3939e AP_GPS: Update comment on get_rate_ms()
AP_GPS::get_rate_ms() is only meant to help the GPS backends
2017-06-12 01:06:38 +01:00
Peter Barker
b5029aad4f DataFlash: correct dataflash examples 2017-06-11 20:34:12 +01:00
Peter Barker
cdd0397bbf DataFlash: check all backends for sensor health 2017-06-11 20:34:12 +01:00
Peter Barker
7221b0def2 DataFlash: StartUnstartedLogging replaces logging_started/start_logging 2017-06-11 20:34:12 +01:00
Peter Barker
bd747006aa DataFlash: eliminate calls to manipulate _writes_enabled 2017-06-11 20:34:12 +01:00
Peter Barker
0be2e7962f DataFlash: create a WritesOK method for WritePrioritisedBlock 2017-06-11 20:34:12 +01:00
Randy Mackay
e84b5c63be LandingGear: remove unused enabled method
Also minor formatting fix
2017-06-10 10:34:33 +09:00
Randy Mackay
45147af455 AP_Beacon: fit SITL beacon location 2017-06-09 15:24:36 +09:00
Randy Mackay
db45442de2 AP_Math: remove unused angle method 2017-06-09 15:21:58 +09:00
Andrew Tridgell
bcd305c821 AP_Compass: fixes for merge with master 2017-06-09 14:56:33 +10:00
Andrew Tridgell
04430457d5 AP_Compass: attempts to diagnose the twitches in MMC3416 2017-06-09 14:56:33 +10:00
Andrew Tridgell
36932a2959 AP_Compass: implement full state machine for MMC3416
this uses 100Hz readings most of the time, but does slow offset
readings every 50 samples
2017-06-09 14:56:33 +10:00