Commit Graph

27661 Commits

Author SHA1 Message Date
Andrew Tridgell 84bbc707fc AP_HAL_ChibiOS: added stack logging 2021-10-12 16:04:06 +11:00
auturgy 7c3c3a0a41 HAL_Chibios: support modalai_fc-v1 flight controller
Based on M0018 version. Thanks to ModalAI for assistance
2021-10-12 15:47:51 +11:00
Andrew Tridgell d8c0d82857 AP_RCProtocol: allow DSM bind using uart RX pin directly 2021-10-12 15:47:51 +11:00
Andrew Tridgell 6fa9768eab HAL_ChibiOS: support GPIO get_mode and set_mode 2021-10-12 15:47:51 +11:00
Andrew Tridgell 029743e27a AP_HAL: added support for saving and restoring GPIO settings
this allows for using any pin (eg. UART TX, RX, RTS, CTS) as a GPIO,
and restoring the old mode. Initial use is for spektrum bind on RX pin
2021-10-12 15:47:51 +11:00
Andrew Tridgell 25324ae0e2 HAL_ChibiOS: support SDMMC2 for sdcard 2021-10-12 15:47:51 +11:00
Andrew Tridgell 281b8eb234 AP_BattMonitor: support LTC2946 I2C battery monitoring 2021-10-12 15:47:51 +11:00
Andrew Tridgell 2903e10fc0 AP_BattMonitor: added INA231 backend
only enabled via hwdef.dat for now
2021-10-12 15:47:51 +11:00
Andrew Tridgell 8d9c9d9130 AP_BoardConfig: allow override of BRD_SAFETYENABLE default 2021-10-12 15:47:51 +11:00
Peter Barker 5b8a3c3ff9 SITL: use enumeration in place of O_RDWR for I2C register defs 2021-10-12 14:44:31 +11:00
Iampete1 82cd9e24c3 RC_Channel: add configured_in_storage metthod 2021-10-11 22:19:17 -04:00
Iampete1 d16be50e57 AP_Motors: add PWM min and max param conversion function 2021-10-11 22:19:17 -04:00
Iampete1 14dfac42e7 AP_Motors: remove use of external PWM min and max 2021-10-11 22:19:17 -04:00
Andrew Tridgell d962e094e7 HAL_ChibiOS: change RCIN PULLUP to PULLDOWN
this makes us more consistent between boards
2021-10-12 11:52:36 +11:00
Andrew Tridgell 47da7f5c9b HAL_ChibiOS: change RCIN FLOAT to PULLDOWN
this lowers the chance of noise on a RCIN pin causing incorrect
protocol detection
2021-10-12 11:52:36 +11:00
Nick Exton ffa2bba35c HAL_ChibiOS: add missing return to Dual CDC get_usb_baud() 2021-10-12 10:54:44 +11:00
Andrew Tridgell e6aae3caf6 HAL_ChibiOS: fix G4 I2c bus speeds 2021-10-12 10:54:07 +11:00
Iampete1 0f8bcbf4b8 AP_Scripting: optimise genrated bindings for size 2021-10-12 10:08:56 +11:00
Iampete1 c1dbb1c046 AP_Scripting: change all -FLT_MAX FLT_MAX ranges to no check 2021-10-12 10:08:56 +11:00
Iampete1 302e855dab AP_Scripting: add 'skip_check keyword to skip argument range check 2021-10-12 10:08:56 +11:00
Iampete1 0772af5539 AP_Scripting: generator: dont initalise trivial types 2021-10-12 10:08:56 +11:00
Iampete1 32d6919ae2 AP_Scripting: generator: remove unneeded else in nullable returns 2021-10-12 10:08:56 +11:00
Peter Barker 90f8cbde13 SITL: provide HAL_x_ENABLED for many SITL features
This allows for the feature to be compiled out
2021-10-12 09:04:55 +11:00
Peter Barker aa4f375015 SITL: SIM_RichenPower: remove reference to stderr 2021-10-12 09:00:45 +11:00
Peter Barker c9df857f16 SITL: avoid use of stderr/::fprintf 2021-10-12 09:00:17 +11:00
Peter Barker 94ad32b91c SITL: remove HIL_MODE vestiges 2021-10-12 08:57:05 +11:00
Peter Barker d98cda12c6 AP_HAL_SITL: remove HIL_MODE vestiges 2021-10-12 08:57:05 +11:00
Willian Galvani 34b42d8252 AP_HAL: Navigator: set HAL_BARO_EXTERNAL_BUS_DEFAULT to 6
This is the bus exposed in the board for external sensors.
This is required as HAL_Linux doesn't probe all i2c buses.
2021-10-11 17:57:52 -03:00
Willian Galvani 2feb740a03 AP_Baro: add option to set BARO_EXT_BUS default value
This allows boards to define their own BARO_EXT_BUS default value.
This is mostly relevant for linux boards, as HAL_LINUX doesn't
probe all buses when BARO_EXT_BUS == -1.
2021-10-11 17:57:52 -03:00
tajisoft 68274ff996 AP_Scripting: fix switch check in ahrs-source 2021-10-11 20:59:46 +11:00
Andrew Tridgell 5f6af3567a SRV_Channel: added SERVO_GPIO_MASK
this allows for channels to be set as GPIO without setting
SERVOn_FUNCTION=-1. That allows for use of UAVCAN or SBUS outputs on
those channels with a servo function, while using the aux pin as a
GPIO
2021-10-11 19:28:11 +11:00
Rishabh 13f3d04300 AC_Avoid: Early exit Dijkstra's path finder if destination is found 2021-10-11 02:21:48 -04:00
Andrew Tridgell 08fcfa04ae APM_Control: only save autotune gains when P finished
this prevents saving values which are temporarily high due to tuning
process

See this bug report
https://discuss.ardupilot.org/t/plane-4-1-0-stable/76507/45
2021-10-10 19:00:57 +11:00
Iampete1 f0bc041b86 AP_Gererator: IE Fuel Cell: reset health timer at init 2021-10-08 19:34:34 -04:00
Lucas De Marchi 24adf18685 AP_HAL_Linux: small fixes to cpu affinity
- Do not mention x:y form in the comment since it's not supported
  - Give more detail in the help output regarding the meaning of each form
  - No prints in the helper parse function, let the caller print it
2021-10-08 16:08:52 -07:00
HefnySco 9f1cbdc0a5 AP_HAL_Linux: cpu affinity 2021-10-08 13:47:56 -07:00
Stephen Dade e85f803e27 SITL: Expand multi-drone example 2021-10-08 17:29:10 +11:00
Peter Barker 521918d74c SITL: remove set-but-not-used _framerate member variable 2021-10-08 14:23:18 +11:00
olliw42 312604f577 AP_Mount: add handle_global_position_int() method to backend and use it + little spelling 2021-10-08 14:22:43 +11:00
murata fa609afc44 AP_Scripting: Change the script file name for messages 2021-10-07 18:21:11 -04:00
Josh Henderson 1e0ae4b998 GCS_MAVLINK: Common capacity_remaining_pct checks healthy status and has_current 2021-10-07 22:16:02 +11:00
Josh Henderson ca568953d9 AP_BattMonitor: capacity_remaining_pct add checks for healthy status and has_current 2021-10-07 22:16:02 +11:00
bugobliterator f298ea406e HAL_ChibiOS: enable RNG only for H7 based boards off for the rest by default 2021-10-07 19:43:11 +11:00
bugobliterator fc4d59c5a4 HAL_ChibiOS: setup hw random number generator for stm32 chips 2021-10-07 19:43:11 +11:00
bugobliterator 792e6666a3 HAL_ChibiOS: add random number generator implementation for ChibiOS 2021-10-07 19:43:11 +11:00
bugobliterator e4f4b3ce1f AP_HAL: add true random number generator 2021-10-07 19:43:11 +11:00
Hwurzburg b327f80946 AP_Airspeed: do not cal if backend does not exist 2021-10-07 13:36:44 +11:00
Peter Barker 43e83f18be AP_AHRS: do not send EKF_STATUS_REPORT from DCM
This means that even if you configure DCM as your primary you won't get
its status.

Given the status was currently garbage, this isn't necessarily a bad
thing at the moment.
2021-10-06 19:10:36 +11:00
Peter Barker 2f69dcc085 AP_AHRS: cache some trig results for yaw in DCM backend 2021-10-06 19:10:36 +11:00
Peter Barker 44d56854be AP_AHRS: make AP_AHRS_DCM an AP_AHRS backend 2021-10-06 19:10:36 +11:00
Iampete1 2b402ed2d7 AP_BLHeli: use is_dshot_protocol in place of >= AP_HAL::RCOutput::MODE_PWM_DSHOT150 2021-10-06 18:59:57 +11:00
Iampete1 3b8b90d170 AP_HAL: move is_dshot_protocol to AP_HAL 2021-10-06 18:59:57 +11:00
Iampete1 9751cb5b24 AP_HAL_ChibiOS: move is_dshot_protocol up to AP_HAL 2021-10-06 18:59:57 +11:00
Iampete1 9b02baa5f0 AP_HAL: add note to output_mode enum about params using it 2021-10-06 18:59:57 +11:00
Iampete1 436f9a3f46 AP_BLHeli: move OTYPE to use RCOutput::MODE not AP_Motors::PWM_TYPE 2021-10-06 18:59:57 +11:00
Iampete1 9106835c93 AP_BLHeli: use motors is_digital_pwm_type helper 2021-10-06 18:59:57 +11:00
Iampete1 bc29735cb2 AP_Motors: make pwm_type protected and add helpers 2021-10-06 18:59:57 +11:00
Iampete1 b472300191 AP_MotorsUGV: make pwm_type private and add is_digital_pwm_type method 2021-10-06 18:59:57 +11:00
Iampete1 86e56934b6 AP_Scripting: update analog input example to check for valid pin 2021-10-06 18:42:51 +11:00
Iampete1 f50326c154 AP_WindVane: check for valid analog pins 2021-10-06 18:42:51 +11:00
Iampete1 e5ae023be2 AP_Scripting: AnalogSource set_pin returns bool 2021-10-06 18:42:51 +11:00
Iampete1 8f50eab6c2 AP_RSSI: check for valid analog pin 2021-10-06 18:42:51 +11:00
Iampete1 f667c098a2 AP_RangeFinder: analog: check for valid pin 2021-10-06 18:42:51 +11:00
Iampete1 5ea72bd371 AP_LeakDetector: check for valid analog pin 2021-10-06 18:42:51 +11:00
Iampete1 9f04cded3b AP_HAL_SITL: AnalogSource: return bool for set_pin 2021-10-06 18:42:51 +11:00
Iampete1 62474e6dc8 AP_HAL_Linux: AnalogSource: set_pin return true 2021-10-06 18:42:51 +11:00
Iampete1 f479964c5a AP_HAL_Empty: AnalogSource: return bool 2021-10-06 18:42:51 +11:00
Iampete1 f7cba024c1 AP_HAL_ChibiOS: AnalogSource: check for valid pin 2021-10-06 18:42:51 +11:00
Iampete1 bb04406496 AP_HAL: AnalogSource: set_pin returns bool 2021-10-06 18:42:51 +11:00
Iampete1 19f66803ff AP_BatteryMonitor: Analog: check valid pin 2021-10-06 18:42:51 +11:00
Iampete1 0731af751a AP_Airspeed: analog: check valid pin 2021-10-06 18:42:51 +11:00
Andrew Tridgell 613f970870 AP_Compass: added AK09918 support
minor update over AK09916
2021-10-06 18:16:00 +11:00
Andrew Tridgell 32731e2cd0 AP_Scripting: fixed bug in string logging with logger.write()
this dereferenced a bad pointer, leading to crash and watchdog

thanks to Charlie for finding this!
2021-10-06 18:14:54 +11:00
Andrew Tridgell 33529c98a9 HAL_ChibiOS: check the ROMFS line for IOMCU is added 2021-10-06 06:45:43 +11:00
Andrew Tridgell 52124cf602 HAL_ChibiOS: fixed f1 bootloader build errors 2021-10-06 06:44:36 +11:00
Andrew Tridgell 8deaa1b46b HAL_ChibiOS: fixed warning for USB 2021-10-06 06:44:36 +11:00
Andrew Tridgell 4daf4ad501 HAL_ChibiOS: lock in no warnings for chibios RTOS build 2021-10-06 06:44:36 +11:00
Peter Barker 402669f269 AP_HAL_SITL: add and use HAL_SITL &hal_sitl
analogous to our normal "extern hal" stuff but removes need for casting
2021-10-05 22:24:38 +11:00
Andrew Tridgell 4dbff85de7 HAL_ChibiOS: check for common hwdef.dat errors
catches missing GPIO type, mismatched timers and UARTs or bad pin types
2021-10-05 15:46:02 +11:00
Iampete1 f0a284c1e7 AP_Hal_ChibiOS: R9Pilot: add OUTPUT to GPIO 2021-10-05 15:46:02 +11:00
Iampete1 0143518954 AP_Hal_ChibiOS: mRoControlZeroF7: add OUTPUT to GPIO 2021-10-05 15:46:02 +11:00
Iampete1 a282a39866 AP_Hal_ChibiOS: F4BY: add OUTPUT to GPIO 2021-10-05 15:46:02 +11:00
Iampete1 6f1f26a72a AP_Hal_ChibiOS: CubeOrange: add OUTPUT to GPIO 2021-10-05 15:46:02 +11:00
Peter Barker 919dc26ff6 AP_Camera: use location methods to convert altitudes 2021-10-05 13:54:19 +11:00
Michel Pastor c590e1f1c5 OP_OSD_Screen: make the rangefinder distance element fixed length 2021-10-05 12:15:08 +11:00
Iampete1 5848510876 AP_HAL_ChibiOS: set flow control disabled if no RTS line 2021-10-05 12:11:47 +11:00
Iampete1 2d39836b42 AP_SerialManager: always set options 2021-10-05 12:11:47 +11:00
Michel Pastor a9fed2f9bc RCOutput: fix full throttle bug 2021-10-05 11:47:04 +11:00
Hwurzburg 3b543a8ceb AP_Compass: Change orientation labels to match order of rotation 2021-10-05 11:22:32 +11:00
Hwurzburg 873097c030 AP_AHRS: Change orientation labels to march order of rotation 2021-10-05 11:21:48 +11:00
Peter Barker e4ebea9e26 GCS_MAVLink: use AHRS position for location
This is our canonical source of position.
2021-10-05 10:20:44 +11:00
Peter Barker 07aa00f2b4 GCS_MAVLink: tidy sending of high-latency message 2021-10-05 10:20:44 +11:00
Peter Barker 3292128531 AP_HAL_SITL: allow for selection of Storage backend type at runtime 2021-10-05 10:16:54 +11:00
Peter Barker 102b1c6879 AP_HAL: allow for selection of Storage backend type at runtime 2021-10-05 10:16:54 +11:00
Tom Pittenger 9578b9bcd4 AP_ADSB: Ping200X update health, remove option for external baro, and gnss altitude units bugfix 2021-10-03 09:57:39 -05:00
Shiv Tyagi 9729377bb3 AP_Rangefinder : make get_temp const
This makes backend get_temp methods const

Co-Authored-By: Josh Henderson <69225461+hendjoshsr71@users.noreply.github.com>
2021-10-03 09:21:31 -04:00
Shiv Tyagi 5cca39e50a GCS_Common : send water depth for each rangefinder instance
This sends depth message for each downward facing rangefinder instance which has data.

Co-Authored-By: Josh Henderson <69225461+hendjoshsr71@users.noreply.github.com>
2021-10-03 09:21:31 -04:00
Andrew Tridgell 9a29f2558c HAL_SITL: fixed cygwin build
cygwin does not handle panic being weak, it gets a link error
2021-10-03 14:00:34 +11:00
Andrew Tridgell c15221fd53 HAL_ChibiOS: fixed orientation of ICM42605 on QiotekZealotF427 2021-10-03 14:00:09 +11:00
Andrew Tridgell 6953778b4c HAL_ChibiOS: use micros16() for blheli pass-thru IRQ
saves some IRQ overhead, makes time handling more consistent
2021-10-02 18:26:39 +10:00