Commit Graph

17134 Commits

Author SHA1 Message Date
Michael du Breuil 3af6b78d67 AP_HAL_VRBrain: Clear UART buffers when opening a port 2018-06-26 02:18:18 +01:00
Michael du Breuil 8680f1ab52 AP_HAL_SITL: Clear UART buffers when opening a port 2018-06-26 02:18:18 +01:00
Michael du Breuil 512939a839 AP_HAL_PX4: Clear UART buffers when opening a port 2018-06-26 02:18:18 +01:00
Michael du Breuil 7043738f3b AP_HAL_Linux: Clear UART buffers when opening a port 2018-06-26 02:18:18 +01:00
Michael du Breuil 153ee6ca8e AP_HAL_ChibiOS: Clear UART buffers when opening a port 2018-06-26 02:18:18 +01:00
Michael du Breuil 037e53ba8a AP_HAL_ChibiOS: Reduce flash space of UARTDriver
Saves 32 bytes
2018-06-26 02:18:18 +01:00
Peter Barker e7e0ee0b50 AP_Proximity: add methods covering sensor health, enable and present 2018-06-26 10:25:28 +10:00
Pierre Kancir bffe3f6c21 AC_WPNav: add getter for crosstrack_error 2018-06-26 08:42:14 +09:00
Michael du Breuil d977ca091a AP_Arming: Correct an edge case that would not run compass checks 2018-06-26 09:26:29 +10:00
Patrick José Pereira cd5c59773b AP_HAL_SITL: Use SITL, baro, INS and compass singletons
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2018-06-26 00:02:01 +01:00
Patrick José Pereira a4d8ed4b75 AP_HAL_SITL: Use reinterpret_cast with AP_Param::find_object
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2018-06-26 00:02:01 +01:00
Patrick José Pereira ae378f0fb3 SITL: Use reinterpret_cast with AP_Param::find_object
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2018-06-26 00:02:01 +01:00
Patrick José Pereira f68b07df1f SITL: Use SITL singleton
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2018-06-26 00:02:01 +01:00
Patrick José Pereira 00cb588257 AP_RPM: Use SITL singleton
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2018-06-26 00:02:01 +01:00
Patrick José Pereira 50613c3800 AP_Proximity: Use SITL singleton
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2018-06-26 00:02:01 +01:00
Patrick José Pereira 653784479e AP_OpticalFlow: Use SITL singleton
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2018-06-26 00:02:01 +01:00
Patrick José Pereira 0c06bf89e5 AP_InertialSensor: Use SITL singleton
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2018-06-26 00:02:01 +01:00
Patrick José Pereira e456655932 AP_Compass: Use SITL singleton
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2018-06-26 00:02:01 +01:00
Patrick José Pereira 37fbd6aaa1 AP_Beacon: Use SITL singleton
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2018-06-26 00:02:01 +01:00
Patrick José Pereira 4ae6bd2c7e AP_Baro: Use SITL singleton
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2018-06-26 00:02:01 +01:00
Patrick José Pereira 819f08b7f7 AP_AHRS: Use SITL singleton
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2018-06-26 00:02:01 +01:00
Andrew Tridgell a0b4553a26 HAL_ChibiOS: fixed bootloader build issue 2018-06-25 21:22:31 +10:00
Andrew Tridgell bf6fb72904 HAL_ChibiOS: fixed 32 bit flash writes 2018-06-25 21:22:31 +10:00
Andrew Tridgell f71d2a7417 HAL_ChibiOS: support bootloaders with no uarts 2018-06-25 21:22:31 +10:00
Andrew Tridgell 277836ccc7 HAL_ChibiOS: added bootloader definition for fmuv3
including UART support on 2 UARTs
2018-06-25 21:22:31 +10:00
Andrew Tridgell e40457d98f HAL_ChibiOS: avoid malloc in usbcfg
this avoids the need for malloc in the bootloader
2018-06-25 21:22:31 +10:00
Andrew Tridgell 369ac5edd0 HAL_ChibiOS: save more space in the bootloader 2018-06-25 21:22:31 +10:00
Andrew Tridgell e870b5f00a HAL_ChibiOS: use 32 bit flash operations when possible 2018-06-25 21:22:31 +10:00
Andrew Tridgell feefa05b41 HAL_ChibiOS: expose stm32_flash_ispageerased() 2018-06-25 21:22:31 +10:00
Andrew Tridgell dd1bd43a2e HAL_ChibiOS: added stm32_flash_keep_unlocked() 2018-06-25 21:22:31 +10:00
Alexander Malishev 95f3eb5ab6 HAL_ChibiOS: stop logging before reboot 2018-06-25 17:46:20 +10:00
Alexander Malishev cfa18b8e70 HAL_ChibiOS: reduce dataflash buffer size on targets with 128KB ram 2018-06-25 17:43:26 +10:00
Alexander Malishev 932cc4bb69 DataFlash: allow HAL to specify dataflash buffer sizes 2018-06-25 17:43:20 +10:00
Alexander Remizov dc15cbd513 AP_GPS: fixed ublox configuration 2018-06-24 15:25:00 -07:00
Andrew Tridgell dc0f2f9319 HAL_ChibiOS: use USB for stdout on more boards
don't waste a UART
2018-06-24 08:26:28 +10:00
Andrew Tridgell 2cfdc98453 HAL_ChibiOS: fixed omnibusf4pro bootloader LED pins 2018-06-24 08:26:28 +10:00
Andrew Tridgell b149089830 HAL_ChibiOS: fixed board IDs and added more bootloaders 2018-06-24 08:26:28 +10:00
Andrew Tridgell 2f8a534243 HAL_ChibiOS: expand param storage on F4 boards with flash storage
this allows for a lot more param space on these boards
2018-06-24 08:26:28 +10:00
Andrew Tridgell b983caa97e StorageManager: allow for 15k storage
this is for F4 boards using flash storage. They were using 8k, but can
actually fit 16k. This is optimised for lots of param space as we
expect to have a lot of customised params for OSD support
2018-06-24 08:26:28 +10:00
Andrew Tridgell e868a4fe8b HAL_ChibiOS: set FLASH_RESERVE_START_KB in the environment
used to correctly setup an intel hex file
2018-06-23 17:06:38 +10:00
Andrew Tridgell 1c807e0078 HAL_ChibiOS: added option to limit size of bootloader
this will ensure our F4 bootloaders stay under 16k
2018-06-23 17:06:38 +10:00
Peter Barker cba61598b1 AP_Arming: a check_failed function 2018-06-23 15:33:19 +10:00
Peter Barker a44c1378f7 GCS_MAVLink: add send_textv functions 2018-06-23 15:33:19 +10:00
Andrew Tridgell 796291f176 AP_GPS: improved ccache build speed
making this header equal improves speed of fmuv2 build after fmuv3
build with ccache, without affecting binary
2018-06-22 11:13:03 +10:00
Andrew Tridgell e11b3f2f0e HAL_ChibiOS: run CAN thread at 3KHz
at 10KHz we were causing occasional CRC errors on the UART to IOMCU
2018-06-22 08:40:12 +10:00
Andrew Tridgell d88b710ea9 HAL_ChibiOS: added more bootloader hwdef-bl.dat files 2018-06-22 08:00:31 +10:00
Andrew Tridgell 518d41e0d4 HAL_ChibiOS: added OTP defines 2018-06-22 08:00:31 +10:00
Kelly-Foster ba9faafc98 AP_HAL: added MatekF405-wing subtype
Added define for HAL_BOARD_SUBTYPE_CHIBIOS_MATEKF405WING
2018-06-22 08:00:31 +10:00
Kelly-Foster ae84202bf2 HAL_ChibiOS: added MatekF405-Wing hwdef.dat 2018-06-22 08:00:31 +10:00
Andrew Tridgell 14f66461a7 HAL_ChibiOS: shrink build size for bootloader
thanks to @sh83 for the idea
2018-06-22 08:00:31 +10:00
Alexander Malishev 661259de4e HAL_ChibiOS: reduce .text aigment to save flash space 2018-06-22 08:00:31 +10:00
Andrew Tridgell 608490f5ae HAL_ChibiOS: fixed cube-orange bl build 2018-06-22 08:00:31 +10:00
Andrew Tridgell f9faa0765d HAL_ChibiOS: fixed bootloader IDs 2018-06-22 08:00:31 +10:00
Andrew Tridgell 3fc6824bfb HAL_ChibiOS: setup more bootloader config files 2018-06-22 08:00:31 +10:00
Andrew Tridgell 0cd46c063c HAL_ChibiOS: fixed flash driver for F7
we need a data sync barrier due to the F7 cache
2018-06-22 08:00:31 +10:00
Andrew Tridgell 82428dfbc6 HAL_ChibiOS: added f405-bl hwdef.dat 2018-06-22 08:00:31 +10:00
Andrew Tridgell 3ef88e1b8f HAL_ChibiOS: allow flash support for bootloader 2018-06-22 08:00:31 +10:00
Andrew Tridgell 5216870492 HAL_ChibiOS: avoid strstr in usbcfg
saves nearly 2k of flash
2018-06-22 08:00:31 +10:00
Andrew Tridgell c12d14d7a4 HAL_ChibiOS: check for ChibiOS features 2018-06-22 08:00:31 +10:00
Andrew Tridgell 03f67d82c9 HAL_ChibiOS: allow more ChibiOS functionality to be disabled
used by bootloader builds for minimal flash size
2018-06-22 08:00:31 +10:00
Andrew Tridgell e3a23921a2 HAL_ChibiOS: fixed FLASH_LOAD_ADDRESS
needs 0x08000000 base
2018-06-22 08:00:31 +10:00
Patrick José Pereira 87c09f98cc AP_Camera: Change from labs to abs for floats
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2018-06-21 17:24:14 +01:00
Peter Barker 997a527c1b AP_Arming: cache results of get_gyro_count and get_accel_count 2018-06-21 16:25:29 +01:00
Peter Barker 4055256878 AP_Arming: cache AP_HAL_millis 2018-06-21 16:25:29 +01:00
Peter Barker 410e72f83c AP_Arming: break out a gyros-consistent method 2018-06-21 16:25:29 +01:00
Peter Barker d2b8ea4bb0 AP_Arming: break out an accels-consistent method 2018-06-21 16:25:29 +01:00
Hyungsub ceab853c86 Possible NULL pointer dereference in libraries/AP_HAL_F4Light/hardware/hal/timer.c 2018-06-21 21:57:46 +10:00
Andrew Tridgell 480017f190 AP_Notify: search for 4 buses in AP_Notify 2018-06-21 13:08:20 +10:00
Andrew Tridgell 1c054f0e4a HAL_ChibiOS: fixed clock line on fmuv5 I2C4
there was a typo in the datasheet
2018-06-21 13:08:20 +10:00
Andrew Tridgell f401dc1a77 GCS_MAVLink: fixed error in SITL for ESC_TELEMETRY 2018-06-21 10:48:02 +10:00
Andrew Tridgell a8f99882ba HAL_ChibiOS: allow FrSky_INV to be controlled as GPIO
this allows control via relay settings
2018-06-21 07:40:50 +10:00
Francisco Ferreira 5de516dd6a
AP_HAL_SITL: remove underscore prefix for local variables 2018-06-20 16:38:52 +01:00
Francisco Ferreira 06c41bc768
AP_HAL_SITL: re-use unused FDM address option for FG view IP address 2018-06-20 16:38:52 +01:00
Francisco Ferreira 46868409ec
AP_HAL_SITL: remove unused code 2018-06-20 16:38:52 +01:00
Peter Barker 27cd972331 GCS_MAVLink: add magic number definitions 2018-06-20 11:43:38 +10:00
Peter Barker d8128ba69a AP_Arming: option to force arm, bypassing checks 2018-06-20 11:43:38 +10:00
Hyungsub 6e2076a3f1 AP_HAL: Remove resource leak in srxl.cpp
I correct this issues and then open a pull request.
2018-06-20 11:33:12 +10:00
Alexander Malishev eb1ae22bb1 DataFlash: fixed inconsistent state after interrupted log download 2018-06-20 09:03:27 +10:00
Andrew Tridgell e455958c87 SITL: fixed build with new vicon_position_estimate message extension 2018-06-19 09:36:03 +10:00
Andrew Tridgell 5495e98483 GCS_MAVLink: build fixes
needed for new mavlink2 extensions in battery monitor message
2018-06-19 09:36:03 +10:00
Andrew Tridgell 9638f6cab9 AP_BattMonitor: changes from PR review 2018-06-19 09:36:03 +10:00
Andrew Tridgell 05a8a5c173 AP_BLHeli: changes from PR review 2018-06-19 09:36:03 +10:00
Andrew Tridgell 4e4e5a2feb GCS_MAVLink: send ESC telemetry messages 2018-06-19 09:36:03 +10:00
Andrew Tridgell dc9ae42067 AP_BattMonitor: added ESC telemetry virtual battery
this aggregates all BLHeli ESCs into a single virtual battery
2018-06-19 09:36:03 +10:00
Andrew Tridgell 34bbd29f25 AP_BLHeli: send ESC telem packets over MAVLink 2018-06-19 09:36:03 +10:00
Peter Barker f2a842e415 AP_HAL_SITL: set_cloexec on SITL's RCIN port 2018-06-19 09:14:28 +10:00
Peter Barker 584c5d5806 AP_HAL: Socket: add set_cloexec 2018-06-19 09:14:28 +10:00
Peter Barker 574a2b3652 AP_HAL_SITL: set cloexec on port 5760 2018-06-19 09:14:28 +10:00
Andrew Tridgell e3b68876a9 HAL_ChibiOS: fixed tx_len on tx DMA timeout 2018-06-19 09:08:45 +10:00
Andrew Tridgell 8431a677d9 HAL_ChibiOS: added a timeout to DMA UART TX
this prevents a shared DMA channel being held for a long time if a CTS
pin is held either by not being connected or by a radio
2018-06-19 09:08:45 +10:00
Peter Barker cad7f9d9c0 GCS_MAVLink: tidy waypoint receiving part of update
This is NFC.  The early-return here is confusing, and there were
redundant checks going on.
2018-06-18 19:54:21 +01:00
Peter Barker 4168bd709c AP_Frsky_Telem: use AP_FWVersion singleton 2018-06-18 19:10:37 +01:00
Peter Barker ceaadc4cce AP_SmartRTL: use AP_FWVersion singleton 2018-06-18 19:10:37 +01:00
Peter Barker 7d52746267 AP_Scheduler: use AP_FWVersion singleton 2018-06-18 19:10:37 +01:00
Peter Barker c333a905df GCS_MAVLink: use AP_FWVersion singleton 2018-06-18 19:10:37 +01:00
Peter Barker 611dcb694b DataFlash: write CHIBIOS_GIT_VERSION to opened log file
DataFlash: use AP_FWVersion singleton
2018-06-18 19:10:37 +01:00
Peter Barker 6ba1678c5e AP_Common: AP_FWVersion: create singleton 2018-06-18 19:10:37 +01:00
Peter Barker beb2147191 DataFlash: use #define instead of constant 90 for data length 2018-06-18 13:50:18 +01:00
Michael du Breuil fba185cefb DataFlash: Fix GPS units 2018-06-18 13:34:16 +01:00
Hyungsub 97b93920b3 AP_HAL_Linux: fix memory leaks
Fixes #8642
2018-06-18 10:30:56 +01:00
Hyungsub 8ae2729022 AP_HAL_ChibiOS: fix memory leaks
Fixes #8644
2018-06-18 10:30:56 +01:00
Andrew Tridgell 1c4bf3d804 HAL_ChibiOS: fixed build warning 2018-06-15 11:26:40 +10:00
Lucas De Marchi 46213eb97e chibios_hwdef: fix wrong uart index
calling uart_list.index() will find the first element with that name,
which is not really what we want when we have multiple EMPTY uarts.
2018-06-15 08:21:40 +10:00
Andrew Tridgell 00d919018b HAL_ChibiOS: added RTC clock implementation 2018-06-15 08:01:22 +10:00
Andrew Tridgell 1283b92cb7 DataFlash: fix for new AP_RTC API 2018-06-15 08:01:22 +10:00
Peter Barker 312ac7dc73 AP_RTC: return 0 from get_utc_usec if rtc not set 2018-06-15 08:01:22 +10:00
Peter Barker f83e65e04e AP_RTC: add parameter for source types we will set the system time from 2018-06-15 08:01:22 +10:00
Peter Barker 22a94addd5 AP_BoardConfig: add parameters for AP_RTC 2018-06-15 08:01:22 +10:00
Peter Barker f5eb281efd AP_HAL: use AP_RTC
Also add a define as to whether set_time / get_time can be used
2018-06-15 08:01:22 +10:00
Peter Barker 00153f513c AP_HAL_SITL: use OS clock for get_hw_rtc 2018-06-15 08:01:22 +10:00
Peter Barker 973fe57827 AP_Stats: use AP_RTC 2018-06-15 08:01:22 +10:00
Peter Barker 5b41db5120 AP_GPS: use AP_RTC
set the system time from a GPS if we have a 3D fix or better
2018-06-15 08:01:22 +10:00
Peter Barker 721feaf40f GCS_MAVLink: use AP_RTC
GCS_MAVLINK: Add SYSTEM_TIME handle (Patrick José Pereira)
2018-06-15 08:01:22 +10:00
Peter Barker f6eb7e2ba5 AP_HAL_F4Light: remove un-needed methods 2018-06-15 08:01:22 +10:00
Peter Barker 89d532b557 AP_HAL_VRBRAIN: use common methods for setting time 2018-06-15 08:01:22 +10:00
Peter Barker 3bdbe3b63c AP_HAL_PX4: use common methods for setting time 2018-06-15 08:01:22 +10:00
Peter Barker c9dbdd7a5c AP_HAL_Linux: clarify method name, use common methods for setting time 2018-06-15 08:01:22 +10:00
Peter Barker 59d1d8aecc AP_BoardConfig: instantiate an RTC
AP_BoardConfig: set RTC from hw clock at startup
2018-06-15 08:01:22 +10:00
Peter Barker ece7ff874c AP_RTC: a library to handle epoch-time 2018-06-15 08:01:22 +10:00
Peter Barker 6af0dcfed0 AP_Math: create a constrain_int64
The template system doesn't work across 32/64 bit builds (SITL
vs fmuv4), probably because int is typedef'd to int64
2018-06-15 08:01:22 +10:00
Peter Barker 01e0c03a12 AP_Scheduler: add singleton 2018-06-15 08:01:22 +10:00
Michael du Breuil 676f60333a DataFlash: Fix power units 2018-06-14 17:50:27 +10:00
Andrew Tridgell 5d20699975 HAL_F4Light: removed ST licensed files from HAL_F4Light 2018-06-14 16:55:21 +10:00
Andrew Tridgell c0bfc77701 HAL_F4Light: removed submodules 2018-06-14 16:55:21 +10:00
Andrew Tridgell 777b4c8cfe DataFlash: avoid stat of current log file
this avoids getting invalid data base for stat() for the current log
file.

It also only gives up writing to a log file if writes fail for 2
seconds. This avoids a temporary write failure causing the log to be
closed (that can happen on ChibiOS with directory listing while writing)
2018-06-14 14:55:41 +10:00
Andrew Tridgell 8a2f1fdb3d AP_Airspeed: fixed airspeed filtering issue
this fixes an issue where an airspeed sensor that becomes unhealthy
can have an undue effect after the sensor becomes healthy again.

In a recent flight log the MS4525 airspeed sensor went unhealthy for a
few seconds, and at the same time gave a reading of 12m/s. The plane
was flying at 24m/s. While the sensor was unhealthy the code correctly
switched to the airspeed estimate, which was fine.

When the airspeed sensor become healthy again the IIR filter in
AP_Airspeed meant that the speed read at 12m/s initially, then came up
to 24m/s over a couple of seconds. This caused the VTOL motors to come
on for a few seconds.
2018-06-14 09:13:30 +10:00
Andrew Tridgell 10ca1e78e8 HAL_ChibiOS: switched to Mode3 on SPI1
this is now working correctly
2018-06-13 20:05:26 +10:00
Andrew Tridgell 9d248456e4 HAL_ChibiOS: re-enable I2C4 DMA for F765
now we have fixed the error from the datasheet we can do DMA
2018-06-13 20:05:26 +10:00
Andrew Tridgell ad3eca4e6b HAL_ChibiOS: fixed I2C4 DMA streams
There is an error in the datasheet. See
https://community.st.com/thread/50484-documentation-error-on-dma-channels-for-i2c4-on-stm32f7
2018-06-13 20:05:26 +10:00
Andrew Tridgell 62e8fbb9d3 HAL_ChibiOS: fixed OMNIBUSF7V2 hwdef.dat 2018-06-13 20:05:26 +10:00
Andrew Tridgell e068106669 HAL_ChibiOS: support I2C devices on STM32F7 without DMA
this allows us to support I2C4 on fmuv5
2018-06-13 20:05:26 +10:00
chobits 0d2b70e607 GCS_MAVLink: fix ATT_POS_MOCAP timestamp handle 2018-06-13 09:43:42 +09:00
Randy Mackay 5e7b37f0b2 AR_AttitudeControl: remove constraint on steering output 2018-06-12 17:44:10 +09:00
Michael du Breuil 95eda5d9b7 RC_Channel: Remove unneeded interfaces 2018-06-11 16:29:36 -07:00
Andrew Tridgell b225868711 AP_Compass: detect conflict between AK09916 and ICM20948
this detects if we have both a AK09916 and an ICM20948 on the same i2c
bus. If that is found then the ICM20948 is disabled as it otherwise we
will have two devices on the same i2c address
2018-06-12 09:04:43 +10:00
Jacob Walser c4175be7aa AP_Camera: explicitly specify floats 2018-06-11 15:57:48 -04:00
Peter Barker b0aeec4b6a GCS_MAVLink: move handling of MAV_CMD_DO_GRIPPER up 2018-06-11 19:07:39 +01:00
Peter Barker 8a3df17a07 AP_Gripper: add singleton 2018-06-11 19:07:39 +01:00
Alexander Malishev 289b93c3d0 HAL_ChibiOS: added parse_timer to chibios_hwdef.dat 2018-06-11 18:32:17 +10:00
murata 4d5e258b19 AP_NavEKF3: Delete unused definitions 2018-06-11 09:11:44 +09:00
murata a9b2b9dddf AP_NavEKF2: Delete unused definitions 2018-06-11 09:11:44 +09:00
Ammarf b614ca9b75 AR_AttitudeControl: disable limits when _ACCEL_MAX is zero 2018-06-11 08:54:59 +09:00
Carlos Martínez Úbeda 30e0c7f746 AP_HAL_SITL: use FD_CLOEXEC instead of linux SOCK_CLOEXEC for socket 2018-06-10 19:15:50 +01:00
Eugene Shamaev 56cc0d3ef7 AP_BoardConfig: comments 2018-06-09 22:46:48 -07:00
Eugene Shamaev 2055f264e5 AP_HAL_ChibiOS: helper func 2018-06-09 22:46:48 -07:00
Eugene Shamaev df6b7ed5ea AP_Compass_UAVCAN: update 2018-06-09 22:46:48 -07:00
Eugene Shamaev 9985d4a937 AP_GPS: uniform naming 2018-06-09 22:46:48 -07:00
Eugene Shamaev 13954f97cf AP_Baro: helper func 2018-06-09 22:46:48 -07:00
Eugene Shamaev f7e9ce44b1 AP_BattMonitor: helper func 2018-06-09 22:46:48 -07:00
Eugene Shamaev 9195ba80fc AP_Compass: helper func 2018-06-09 22:46:48 -07:00