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