Commit Graph

17766 Commits

Author SHA1 Message Date
Siddharth Purohit
ca54123b7d AP_GPS: move UAVCAN GPS related code to AP_GPS_UAVCAN backend 2018-08-29 22:54:59 +01:00
Siddharth Purohit
6e85003b56 AP_BattMonitor: move BattInfo message subscription and handling to AP_BattMonitor 2018-08-29 22:54:59 +01:00
Siddharth Purohit
14b701cff8 AP_Compass: move UAVCAN mag subscribers and handlers to Compass Backend 2018-08-29 22:54:59 +01:00
Siddharth Purohit
5ef5537371 AP_Baro: move Baro UAVCAN subscribers and handlers to AP_Baro_UAVCAN 2018-08-29 22:54:59 +01:00
Andrew Tridgell
62fbe13690 AP_UAVCAN: send ESCs when disarmed
we should only be checking the safety state
2018-08-29 22:54:59 +01:00
Siddharth Purohit
0125b2cdd2 AP_UAVCAN: remove UAVCAN sensors related code 2018-08-29 22:54:59 +01:00
Siddharth Purohit
f01cc254d3 AP_UAVCAN: add Callback API to link UAVCAN backend callbacks 2018-08-29 22:54:59 +01:00
Andrew Tridgell
c79650a8d8 AP_Notify: fixed remote play tune 2018-08-29 13:47:20 +10:00
Michael du Breuil
80597d5cba RC_Channel: Fix accidental quantization of override_timeout to 1 second 2018-08-28 14:18:54 +10:00
Randy Mackay
3e8d9f4131 RangeFinder: shorten comment 2018-08-28 09:23:38 +09:00
Randy Mackay
1b0f0a7559 AP_RangeFinder: support last_reading_ms
Benewake, LeddarOne, LightWareSerial, MAVLink, MaxsonarI2CXL, MaxsonarSerialLV, NMEA, PX4_PWM, uLanding and Wasp already stored the last read time so for these drivers, this change just moves that storage to the state structure
analog, BBB_PRU, Bebop, LightWareI2C, PulsedLightLRF, TeraRangerI2C, VL53L0X did not store the last read time so this was added
2018-08-28 09:23:38 +09:00
Randy Mackay
9e27b93538 AP_RangeFinder: move some backend implementations to cpp file 2018-08-28 09:23:38 +09:00
Randy Mackay
9a7b378ddd AP_RangeFinder: minor format change
lines up with parameter variables below
2018-08-28 09:23:38 +09:00
Michael du Breuil
e878558d41 AP_Mission: Reduce the number of places _set_cmd is called from 2018-08-28 10:01:36 +10:00
Peter Barker
43f3d611b2 AP_Math: pragma away the float-equal test for the maths tests
There are legitimate reasons for doing direct equivalence in these files
2018-08-28 09:54:47 +10:00
Peter Barker
3e9294a2ae SITL: eliminate float-equals issues 2018-08-28 09:54:47 +10:00
Peter Barker
8fee27937a AP_Math: eliminate SITL float-equals issues 2018-08-28 09:54:47 +10:00
Peter Barker
04c36efdbf AP_InertialSensor: eliminate SITL float-equals issues 2018-08-28 09:54:47 +10:00
Peter Barker
d968e27b45 AP_HAL_SITL: eliminate float-equals issues 2018-08-28 09:54:47 +10:00
Andrew Tridgell
8c962e6f0f HAL_ChibiOS: use a larger TX buffer on USB
this is needed for fast log download on vehicles with 50Hz main loop
2018-08-28 08:50:50 +10:00
Patrick José Pereira
0f42702910 AP_Mount: Remove unused check
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2018-08-27 23:35:34 +01:00
Patrick José Pereira
fb7c46bda0 AP_HAL_SITL: Remove unused check
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2018-08-27 23:35:34 +01:00
Patrick José Pereira
10ffd89a0c AP_GPS: Remove unused operation
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2018-08-27 23:35:34 +01:00
Pierre Kancir
7d9c947b9b AP_HAL_SITL: update parameter with using command line speedup option 2018-08-28 07:26:26 +10:00
Randy Mackay
106b8abab7 AR_AttitudeControl: get_throttle_out_from_pitch accepts vehicle speed 2018-08-27 16:44:33 +09:00
Randy Mackay
785da8add9 AP_WheelRateControl: lib to control wheel rate with encoders 2018-08-27 16:44:33 +09:00
Randy Mackay
912dd0c4cc AP_WheelEncoder: update parameter descriptions 2018-08-27 16:44:33 +09:00
Randy Mackay
6b89c24cc6 AP_WheelEncoder: calculate rate from last iteration 2018-08-27 16:44:33 +09:00
Randy Mackay
b381ae7bf3 AC_PID: support storing actual 2018-08-27 16:44:33 +09:00
Randy Mackay
397e035cf7 DataFlash: replace unused AFF with actual in PID_Info 2018-08-27 16:44:33 +09:00
Randy Mackay
d5ef3c2e0f AR_AttitudeControl: get_throttle_out_from_pitch uses motor limits
This allows removing I-term build up from throttle hitting 100%
2018-08-27 16:44:33 +09:00
Randy Mackay
65b020eac3 AR_AttitudeControl: re-order pitch control to match other similar methods 2018-08-27 16:44:33 +09:00
Pierre Kancir
2661ad2ed3 GCS_Common: remove status text for gripper 2018-08-27 14:39:49 +10:00
Pierre Kancir
3ab635f100 AP_Gripper: use gripper_sim feedback 2018-08-27 14:39:49 +10:00
Pierre Kancir
a5e2f96a59 SITL: Better gripper sim options 2018-08-27 14:39:49 +10:00
Peter Barker
f258a25138 AP_Arming: remove double PreArm: in battery prearm report
Also use check_failed throughout
2018-08-27 11:12:52 +09:00
Randy Mackay
a5c59ce36e AP_Motors: include boost_throttle in get_motor_mask 2018-08-27 10:35:02 +09:00
Randy Mackay
f85e84cc89 AP_Motors: add override keyword to get_motor_mask 2018-08-27 10:35:02 +09:00
pierre-louis.k
e62ed19759 AP_RangeFinder: Remove range enforcement on out of range 2018-08-27 10:25:51 +09:00
pierre-louis.k
5577b8b33c AP_RangeFinder: Rework function structure in TeraRanger driver 2018-08-27 10:25:49 +09:00
pierre-louis.k
b6f1647c31 AP_RangeFinder: Rename function in TeraRanger driver 2018-08-27 10:25:47 +09:00
pierre-louis.k
1b990c116d AP_RangeFinder: Give back semaphore on whoami error 2018-08-27 10:25:45 +09:00
pierre-louis.k
4d45b68fa3 AP_RangeFinder: Clean TeraRanger driver 2018-08-27 10:25:43 +09:00
pierre-louis.k
d162afb790 AP_RangeFinder: Add error codes rejection for TeraRanger sensors 2018-08-27 10:25:41 +09:00
Dr.-Ing. Amilcar do Carmo Lucas
c9bbc2773d AP_ADSB: Add valid parameter range to squawk codes 2018-08-26 09:13:10 -07:00
Andrew Tridgell
33076be585 HAL_ChibiOS: fixed handling of 16 bit timers
when we have a 16 bit timer then systime_t is 16 bit, and we need to
handle wrap of get_systime_us32()
2018-08-26 18:34:26 +10:00
Dr.-Ing. Amilcar do Carmo Lucas
b9df513705 GCS_MAVLink: remove redundant ret = true statements (NFC) 2018-08-26 18:21:45 +10:00
Dr.-Ing. Amilcar do Carmo Lucas
9c97f35b19 AP_GPS: Use GPS_AUTO_SWITCH parameter to choose exacly which GPS to use 2018-08-26 01:05:09 -07:00
Andrew Tridgell
1762a2708c AP_Notify: removed unused hal variable 2018-08-26 07:57:05 +10:00
Andrew Tridgell
0289ad03df AP_Mission: added semaphore for thread access 2018-08-25 15:44:36 +10:00
Andrew Tridgell
935c9167ab AP_Avoidance: added semaphore 2018-08-25 15:44:36 +10:00
Andrew Tridgell
9897bf6127 AP_AHRS: support locked access to AHRS data 2018-08-25 15:44:36 +10:00
Andrew Tridgell
0aeceb22d9 AP_Common: added #pragma once to Semaphores.h 2018-08-25 15:44:36 +10:00
Andrew Tridgell
dc20e2baed HAL_ChibiOS: support recursive semaphores 2018-08-25 15:44:36 +10:00
Andrew Tridgell
edeab9d152 HAL_SITL: support HAL_Semaphore_Recursive 2018-08-25 15:44:36 +10:00
Andrew Tridgell
1397c85f8e HAL_PX4: added Semaphore_Recursive 2018-08-25 15:44:36 +10:00
Andrew Tridgell
b347027e13 HAL_Linux: added Semaphore_Recursive 2018-08-25 15:44:36 +10:00
Andrew Tridgell
55dfefb2d6 AP_HAL: added HAL_Semaphore_Recursive 2018-08-25 15:44:36 +10:00
Patrick José Pereira
ab31fcb8f4 AP_HAL_SITL: Makes scheduler compile under Mac OS
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2018-08-25 11:25:17 +10:00
pierre-louis.k
bf274cd9db AP_Proximity: Change min and max range to support both 60m and 600Hz 2018-08-25 10:22:11 +09:00
Mateusz Sadowski
08332102fe AP_Proximity: Fix sensor order on TeraRanger Tower Evo 2018-08-25 10:22:11 +09:00
Mateusz Sadowski
4b8b8347f2 AP_Proximity: Correctly handle TeraRanger Tower Evo initialization 2018-08-25 10:22:11 +09:00
Mateusz Sadowski
f1b550647d AP_Proximity: Change TeraRanger Tower Evo sequence mode to Tower 2018-08-25 10:22:11 +09:00
Mateusz Sadowski
2ca567f409 AP_Proximity: Add support for TeraRanger Tower Evo 2018-08-25 10:22:11 +09:00
Andrew Tridgell
db9a8f16ed HAL_ChibiOS: enable terrain on Pixracer, minpx-v2 and mini-pix 2018-08-24 19:43:27 +10:00
Andrew Tridgell
3fd25ad548 AP_Baro: added HAL_BARO_ALLOW_INIT_NO_BARO 2018-08-23 13:29:59 +10:00
Andrew Tridgell
5526dac4fc HAL_ChibiOS: probe all i2c baros for revo-mini
this ensures we build this functionality in CI
2018-08-23 13:29:59 +10:00
Andrew Tridgell
1439b1a730 AP_Baro: added option to probe any i2c baro using GND_PROBE_EXT
This adds a hwdef.dat define HAL_PROBE_EXTERNAL_I2C_BAROS. When set,
we get a new parameter GND_PROBE_EXT that is a bitmask of i2c
barometers to look for.

This allows boards that have no builtin baro to work without
rebuilding
2018-08-23 13:29:59 +10:00
Andrew Tridgell
f937589810 AP_Baro: fixed BMP085 probe 2018-08-23 13:29:59 +10:00
Michael du Breuil
8850e4b9a1 SRV_Channel: Remove the trim_all interface, constrain failsafes to non motor outputs 2018-08-23 13:19:08 +10:00
Andrew Tridgell
912e4f16ec AP_Common: added #pragma once 2018-08-23 08:21:48 +10:00
Andrew Tridgell
b2cc992e0c AP_Baro: convert to use WITH_SEMAPHORE() 2018-08-23 08:21:48 +10:00
Peter Barker
3251e43f03 AP_Radio: adjust for namespacing of interrupt names 2018-08-21 20:34:01 +09:00
Peter Barker
d9f393f42e AP_RSSI: convert to HAL attach_interrupt
AP_RSSI: add error reporting for attaching of interrupts

AP_RSSI: use detach_interrupt method
2018-08-21 20:34:01 +09:00
Peter Barker
f2b8c9e501 RC_Channel: improve debug when failing to initialise RC channel 2018-08-21 20:34:01 +09:00
Peter Barker
2209e4a697 AP_HAL_ChibiOS: new HAL functor-based methods
AP_HAL_ChibiOS: adjust for irq-type enumeration change

AP_HAL_ChibiOS: implement attach-AP_HAL::Proc to interrupt interface
2018-08-21 20:34:01 +09:00
Peter Barker
d366842d15 AP_WheelEncoder: move to using HAL's attach_interrupt methods
AP_WheelEncoder: add error reporting for attaching of interrupts

AP_WheelEncoder: use detach_interrupt method

AP_WheelEncoder: correct initialisation of wheelencoder instances

AP_WheelEncoder: make update_phase_and_error_count non-static

AP_WheelEncoder: use (uint8_t)-1 in place of 255
2018-08-21 20:34:01 +09:00
Peter Barker
20027bad17 AP_RPM: attach_interrupt now takes a functor
AP_RPM: move PX4 IRQ handling into AP_HAL_PX4

AP_RPM: correct RPM sensor initialisation

The initialisation code used the type from the wrong configuration
parameters (if the first rpm sensor wasn't configured then the sensing
for the second sensor would use the type from the first).

The packing of drivers[...] was done in a non-sparse manner - i.e. if a
sensor wasn't detected then it would not take up space in the array.
The PX4 PWM backend relies on the instance number (offset in the drivers
array) corresponding to the parameters, so making this sparse is
required.

The main detection block fills in drivers based on the number of
instances detected so far, but the nullptr check checks based on the
number of detected backends.  If the second instance wasn't configured we
wouldn't attempt to configure a third.

AP_RPM: add error reporting for attaching of interrupts

AP_RPM: use detach_interrupt method

AP_RPM: use (uint8_t)-1 in place of 255
2018-08-21 20:34:01 +09:00
Peter Barker
9b9ec4db40 AP_HAL_Empty: attach_interrupt now takes a functor
AP_HAL_Empty: add type-safety for interrupt types
2018-08-21 20:34:01 +09:00
Peter Barker
5180e025bb AP_HAL_SITL: attach_interrupt now takes a functor
AP_HAL_SITL: add type-safety for interrupt types
2018-08-21 20:34:01 +09:00
Peter Barker
a7b79f7693 AP_HAL_VRBrain: attach_interrupt now takes a functor
AP_HAL_VRBRAIN: add type-safety for interrupt types
2018-08-21 20:34:01 +09:00
Peter Barker
8d5a9ead48 AP_HAL_Linux: attach_interrupt now takes a functor
AP_HAL_Linux: add type-safety for interrupt types
2018-08-21 20:34:01 +09:00
Peter Barker
4767666a2d AP_HAL_PX4: implement attach_interrupt 2018-08-21 20:34:01 +09:00
Peter Barker
74263f8412 AP_HAL: add attach_interrupt that takes a functor, not a AP_HAL::Proc
AP_HAL: add type-safety for interrupt types

AP_HAL: remove interrupt-low and interrupt-high, and interrupt-none

It is possible that the radio needs very tight timings - do not force
the use of the functor interface

AP_HAL: add detach_interrupt method
2018-08-21 20:34:01 +09:00
Peter Barker
c846a13d12 AP_HAL: functor: add != override 2018-08-21 20:34:01 +09:00
Peter Barker
a09154c45b AP_WheelEncoder: correct check for wheelencoder-max-instances 2018-08-21 20:34:01 +09:00
Peter Barker
21201b8816 AP_WheelEncoder: do not permit copies 2018-08-21 20:34:01 +09:00
Peter Barker
45ac3e6bb2 AP_BoardConfig: correct grammar in @DisplayName 2018-08-21 20:34:01 +09:00
Randy Mackay
f536c53fa6 AP_MotorsMatrix: minor format fix 2018-08-21 13:34:07 +09:00
Michael du Breuil
588d1898cd AP_ServoRelayEvents: More robust check if a channel is available 2018-08-20 21:31:06 -07:00
Peter Barker
df836ec70c AP_Notify: tidy and remove code duplications
Saves 60 bytes, too
2018-08-21 10:59:33 +10:00
Peter Barker
6daa241235 DataFlash: add sanity check for WritePrioritisedBlock size 2018-08-21 10:57:43 +10:00
Peter Barker
32bc1860de AP_Mission: starts_with_takeoff_cmd skips past mav_cmd_nav_delay 2018-08-20 14:15:40 +09:00
Peter Barker
9af11d79d1 AP_Mission: remove pointless else clauses 2018-08-20 14:15:40 +09:00
Andrew Tridgell
83f293305f AP_OSD: raise thread stack size to 1024
based on testing in SITL
2018-08-20 13:49:14 +10:00
Andrew Tridgell
836176297d HAL_SITL: added stack checking to SITL 2018-08-20 13:49:14 +10:00
Peter Barker
0a7399ae7d AC_PrecLand: use AHRS singleton, remove pointless initialisations 2018-08-17 21:14:57 +09:00
Peter Barker
898a46fe0e AP_Winch: undefine PASS_TO_BACKEND convenience function 2018-08-17 21:14:57 +09:00
Andrew Tridgell
60ec695f55 AP_TECS: set default pitch max to 15 2018-08-17 20:42:29 +10:00
Andrew Tridgell
7c57fb0c31 AP_L1_Control: lower default L1 period 2018-08-17 20:42:27 +10:00