Commit Graph

17132 Commits

Author SHA1 Message Date
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
Eugene Shamaev 9f27a65f4b AP_GPS: helper func 2018-06-09 22:46:48 -07:00
Eugene Shamaev 05c8d4cc36 AP_HAL_PX4: helper func 2018-06-09 22:46:48 -07:00
Eugene Shamaev 0e3ad3f48d AP_HAL_VRBRAIN: helper func 2018-06-09 22:46:48 -07:00
Eugene Shamaev 71791d22cd AP_UAVCAN: helper func 2018-06-09 22:46:48 -07:00
Eugene Shamaev baa6daf270 AP_Compass: reducing indenting by linearizing the logic 2018-06-09 22:46:48 -07:00
Eugene Shamaev 857bd4f775 AP_BoardConfig: reducing indenting by linearizing the logic 2018-06-09 22:46:48 -07:00
Eugene Shamaev dc228a25fa AP_BattMonitor: reducing indenting by linearizing the logic 2018-06-09 22:46:48 -07:00
Eugene Shamaev f8da16d11a AP_Baro: reducing indenting by linearizing the logic 2018-06-09 22:46:48 -07:00
Eugene Shamaev a805b3ce18 AP_GPS: reducing indenting by linearizing the logic 2018-06-09 22:46:48 -07:00
Eugene Shamaev 0d52f6d2de AP_UAVCAN: reducing indenting by linearizing the logic 2018-06-09 22:46:48 -07:00
Eugene Shamaev b190b6793b AP_HAL_VRBRAIN: reducing indenting by linearizing the logic 2018-06-09 22:46:48 -07:00
Eugene Shamaev 2a6387fd3b AP_HAL_PX4: reducing indenting by linearizing the logic 2018-06-09 22:46:48 -07:00
Eugene Shamaev 7dd8308a8c AP_HAL_Linux: reducing indenting by linearizing the logic 2018-06-09 22:46:48 -07:00
hoangthien94 70a23724b5 AP_Follow: Add FOLL_ALT_SOURCE parameter, 0: absolute, 1: relative
AP_Follow: Fill _target_location.alt with packet.relative_alt when FOLL_ALT_SOURCE param is set to 1

AP_Follow: Change current_loc to have altitude above home if relative_alt flag is set

AP_Follow: Fill _target_location.alt with packet.relative_alt when FOLL_ALT_SOURCE param is set to 1

AP_Follow: Change current_loc to have altitude above home if relative_alt flag is set

AP_Follow: Fix things up before merging
- Rebase code on master
- Change all the commits to start with AP_Follow
- Change _ALT_SOURCE to _ALT_TYPE, bottom of param list, value to 10
- Minor formatting

AP_Follow: Tiny formatting issue
2018-06-09 11:01:35 +09:00
Andrew Tridgell ab946b5d76 HAL_ChibiOS: disable debug code for FMUv5 2018-06-08 09:56:41 +10:00
Philip 2424e38ed2 HAL_ChibiOS: Update cube-orange hwdef.dat for USB IDs 2018-06-08 09:56:41 +10:00
Andrew Tridgell 058e83c180 HAL_ChibiOS: switched cube-orange SPI1 devices to Mode0 2018-06-08 09:56:41 +10:00
Andrew Tridgell 2df0a71a4b HAL_ChibiOS: fixed flash load address in hwdef.h 2018-06-08 09:56:41 +10:00
Andrew Tridgell 3a7c1b4d42 HAL_ChibiOS: switch BMI055 to mode0 on fmuv5 2018-06-08 09:56:41 +10:00
Andrew Tridgell 89b8124560 AP_InertialSensor: added BMI055 IMU driver 2018-06-08 09:56:41 +10:00
mirkix b32b57ad75 AP_HAL_Linux: change SPI Bus for PocketPilot final design 2018-06-07 12:28:21 -07:00
Andrew Tridgell 520e33261a AP_AHRS: fixed EKF type 10 for SITL
this fixes the use of EKF type 10 in SITL, preventing it from using
the DCM attitude estimate.

This is especially important for RealFlight and XPlane
2018-06-07 11:22:57 +10:00
Andrew Tridgell 3be9077ba9 HAL_ChibiOS: added FMUv5 FMU capture pins 2018-06-06 15:01:38 +10:00
Andrew Tridgell c05086430d HAL_ChibiOS: fixed hwdef.h generation for PWM on tim12 2018-06-06 15:01:38 +10:00
Andrew Tridgell 63087b6425 HAL_ChibiOS: enable fmu out 7 and 8 for fmuv5
these are exposed on the Pixhawk4
2018-06-06 15:01:38 +10:00
Andrew Tridgell 2d9df83ed5 AP_Compass: probe for ist8310 on bus 2 as well as 0 for fmuv5 2018-06-06 15:01:38 +10:00
Peter Barker 4c8c85f75b AC_WPNav: remove pointless initialisations
new clears this memory
2018-06-06 08:33:56 +09:00
Peter Barker fa0b315374 AC_WPNav: use rangefinder for terrain offset even if terrain not available 2018-06-06 08:33:56 +09:00
Alexander Malishev eac5d13f1c HAL_ChibiOS: use 2 channels in SoftSigReaderInt.cpp 2018-06-06 08:23:51 +10:00
Alexander Malishev fd45b3a69b HAL_ChibiOS: slightly increase EICU interrupt priority 2018-06-06 08:23:51 +10:00
Alexander Malishev 73d33356ad HAL_ChibiOS: detect overcapture in SoftSigReaderInt.cpp 2018-06-06 08:23:51 +10:00
Alexander Malishev 9e4ec33277 AP_RCProtocol: add error check for ppm input 2018-06-06 08:23:51 +10:00
Andrew Tridgell 7a1f87eb52 HAL_ChibiOS: added cube-orange hwdef 2018-06-06 08:13:38 +10:00
Michael du Breuil 1123023a6f AP_HAL_ChibiOS: Wrap process registration with a semaphore 2018-06-06 07:16:58 +10:00
Michael du Breuil a832bdfd04 AP_HAL_ChibiOS: fix race condition on analog reading 2018-06-06 07:16:58 +10:00
Michael du Breuil 80d1a1de9a AP_HAL_Linux: Remove timer process suspension interface 2018-06-06 07:16:58 +10:00
Michael du Breuil 0f2482f05b AP_HAL_SITL: Remove timer process suspension interface 2018-06-06 07:16:58 +10:00
Michael du Breuil a2dfca2fee AP_HAL_VRBrain: Remove timer process suspension interface 2018-06-06 07:16:58 +10:00
Michael du Breuil a833e93708 AP_HAL_PX4: Remove timer process suspension interface 2018-06-06 07:16:58 +10:00
Michael du Breuil 4a9fe1745f AP_ChibiOS: Remove timer process suspension interface 2018-06-06 07:16:58 +10:00
Michael du Breuil b1f2fb96a0 AP_HAL_F4Light: Remove timer process suspension interface 2018-06-06 07:16:58 +10:00
Michael du Breuil dbd852bbb6 AP_HAL_Empty: Remove timer process suspension interface 2018-06-06 07:16:58 +10:00
Michael du Breuil 1183ed61fb AP_HAL: Remove timer process suspension interface 2018-06-06 07:16:58 +10:00
Michael du Breuil c4a66349ef DataFlash: Remove suspend timer calls, restirct flush() to replay 2018-06-06 07:16:58 +10:00
Andrew Tridgell 1ed6a9d34b HAL_ChibiOS: added MCU tables for STM32F777 2018-06-06 07:15:41 +10:00
Andrew Tridgell d1caa86e12 HAL_ChibiOS: adjust DMA priorities for fmuv3 2018-06-06 07:15:41 +10:00
Andrew Tridgell c0e8114f9a AP_BLHeli: removed extra UDID_START define 2018-06-06 07:15:41 +10:00
Andrew Tridgell c273b23940 HAL_ChibiOS: moved MCU config to python database
this moves the key MCU config variables related to memory to the
python MCU database, allowing the hwdef.dat to be considerably simpler
2018-06-06 07:15:41 +10:00
Andrew Tridgell f390e35c99 HAL_ChibiOS: use port_disable in reboot
this provides a more reliable way to stop all interrupts
2018-06-06 07:15:41 +10:00
Andrew Tridgell a1c97d0585 HAL_ChibiOS: disable paranoid checks for fmuv5 2018-06-06 07:15:41 +10:00
Andrew Tridgell a945c97ec6 HAL_ChibiOS: fixed 3-way DMA sharing bug
when we have 3 way contention across two DMA streams we could get the
dma_deallocate function called in an object from two places at
once. This adds a mutex that prevents that scenario
2018-06-06 07:15:41 +10:00
Andrew Tridgell 0e09dc75c0 HAL_ChibiOS: flush all memory on chSysHalt()
this makes debugging a lot easier, as gdb can see the values in dcache
2018-06-06 07:15:41 +10:00
Andrew Tridgell dc2a776985 AP_GPS: fixed fake ublox 3D lock PVT speed accuracy
allows EKF to startup fully with fake GPS lock
2018-06-06 07:15:41 +10:00
Andrew Tridgell 2493cdbcb6 HAL_ChibiOS: switch to new bouncebuffer system
this removes the dma_flush and dma_invalidate methods and uses a
common bouncebuffer system for all CPU types. This enables microSD
support on STM32F7
2018-06-06 07:15:41 +10:00
Andrew Tridgell 0b1e26a470 HAL_ChibiOS: added bouncebuffer system
this makes our bouncebuffers available for ChibiOS system
drivers. This is needed for SDMMCv1 on STM32F7
2018-06-06 07:15:41 +10:00
Andrew Tridgell 56ce3f057d HAL_ChibiOS: added DRDY and SDMMC pins for FMUv5 2018-06-06 07:15:41 +10:00
Andrew Tridgell 018c9ad40b HAL_ChibiOS: fixed build warnings 2018-06-06 07:15:41 +10:00
Andrew Tridgell f25b95f287 HAL_ChibiOS: fixed array length in ADC debug code 2018-06-06 07:15:41 +10:00
Andrew Tridgell fef1b0ffc6 HAL_ChibiOS: fixed I2C flush/invalidate calls 2018-06-06 07:15:41 +10:00
Andrew Tridgell 0fade4eb9e HAL_ChibiOS: make sure the UART bounce buffers are DMA safe 2018-06-06 07:15:41 +10:00
Andrew Tridgell eec4a12cc2 HAL_ChibiOS: switched to using DTCM memory for DMA
this uses SRAM1 and SRAM2 for main memory, which enables the use of the
data cache for faster operation, and using DTCM for all DMA operations.
2018-06-06 07:15:41 +10:00
Andrew Tridgell 8b1db792ee HAL_ChibiOS: ensure ADC memory is aligned for DMA access 2018-06-06 07:15:41 +10:00
Andrew Tridgell bb2e7a189f HAL_ChibiOS: added a debug function for showing stack free
this can be enabled when needed to investigate stack space remaining
2018-06-06 07:15:41 +10:00
Andrew Tridgell 010cd71ab6 HAL_ChibiOS: enable CAN on FMUv5
and fixed voltage scaling defaults
2018-06-06 07:15:41 +10:00
Andrew Tridgell 2087354939 HAL_ChibiOS: align buffers to STM32F7 cache lines
this allows for DMA flush and invalidate operations to work on all
dynamically allocated memory
2018-06-06 07:15:41 +10:00
Andrew Tridgell 762e4f9915 HAL_ChibiOS: fixed dma priorities for fmuv5 2018-06-06 07:15:41 +10:00
Andrew Tridgell 77d95f6744 HAL_ChibiOS: fmuv5 tweaks 2018-06-06 07:15:41 +10:00
Andrew Tridgell a220220758 HAL_ChibiOS: added comment on IS_DMA_SAFE() 2018-06-06 07:15:41 +10:00
Andrew Tridgell 4d4ea894e8 HAL_ChibiOS: disable i2c device debug code 2018-06-06 07:15:41 +10:00
Andrew Tridgell edb831653f HAL_ChibiOS: added dma_flush and dma_invalidate operations
these are needed to manage the data cache on the STM32F7
2018-06-06 07:15:41 +10:00
Andrew Tridgell 7449e15313 HAL_ChibiOS: disable flash storage option on FMUv5
F7 flash driver not working yet
2018-06-06 07:15:41 +10:00
Andrew Tridgell b961e12456 HAL_ChibiOS: support having no flash storage option 2018-06-06 07:15:41 +10:00
Andrew Tridgell 2d8748ddce HAL_ChibiOS: enable ADCs and buzzer for fmuv5 2018-06-06 07:15:41 +10:00
Andrew Tridgell 6aab9232ef HAL_ChibiOS: enable aux pwm channels on FMUv5 2018-06-06 07:15:41 +10:00
Andrew Tridgell 3242b5eeb9 AP_IOMCU: fail to boot if IO firmware CRC and update fails
we don't want to fly with a bad IO firmware
2018-06-06 07:15:41 +10:00
Andrew Tridgell 677b5f94b2 AP_BoardConfig: allow for non-bool BRD_IO_ENABLE
this will be used to avoid CRC checks for IO fw development testing
2018-06-06 07:15:41 +10:00
Andrew Tridgell db9bf19e46 HAL_ChibiOS: enable i2c for FMUv5 2018-06-06 07:15:41 +10:00
Andrew Tridgell 99540a184c AP_Compass: enable FMUv5 compass 2018-06-06 07:15:41 +10:00
Andrew Tridgell 77bb69fa2e HAL_ChibiOS: enabled UARTs for FMUv5 2018-06-06 07:15:41 +10:00
Andrew Tridgell ac44189ab2 HAL_ChibiOS: setup two IMUs for FMUv5 2018-06-06 07:15:41 +10:00
Andrew Tridgell ccdfc75dd9 AP_Compass: placeholder for FMUv5 2018-06-06 07:15:41 +10:00
Andrew Tridgell bfa66c9397 AP_InertialSensor: detect two IMUs on FMUv5 2018-06-06 07:15:41 +10:00
Andrew Tridgell 0047807fbf AP_IOMCU: fixed build error on F7 2018-06-06 07:15:41 +10:00
Andrew Tridgell 721f3cd5d1 HAL_ChibiOS: fixed flash layout for F7
thanks to @alielectric
2018-06-06 07:15:41 +10:00
Andrew Tridgell ae1a58ecb8 AP_Baro: added FMUv5 support 2018-06-06 07:15:41 +10:00
Andrew Tridgell 751f290be6 AP_BoardConfig: setup FMUv5 for board detection 2018-06-06 07:15:41 +10:00
Andrew Tridgell 01f5d1a17c HAL_ChibiOS: first IMU working 2018-06-06 07:15:41 +10:00
Andrew Tridgell eca634ec62 HAL_ChibiOS: support 6 SPI buses 2018-06-06 07:15:41 +10:00
Andrew Tridgell 4ad757b4d1 HAL_ChibiOS: fixed pincount for F7 2018-06-06 07:15:41 +10:00
Andrew Tridgell 876899c48d HAL_ChibiOS: baro and FRAM working for fmuv5 2018-06-06 07:15:41 +10:00
Andrew Tridgell 8d2f57898b HAL_ChibiOS: adjust pin counts for STM32F7 2018-06-06 07:15:41 +10:00
Andrew Tridgell 1f6ffc48e5 HAL_ChibiOS: allow STM32F7 to build with flash driver 2018-06-06 07:15:41 +10:00
Andrew Tridgell 0774a267c8 AP_HAL: added define for FMUv5 2018-06-06 07:15:41 +10:00
Andrew Tridgell 7c09a1781b HAL_ChibiOS: started on fmuv5 2018-06-06 07:15:41 +10:00
Michael du Breuil b331ddd49b GCS_MAVLink: Remove some common wrappers, fix excessive FALLTHROUGH 2018-06-05 03:25:42 +01:00
Michael du Breuil 0fcf07fde7 RC_Channel: Remove input() method from individual channels 2018-06-05 09:51:09 +10:00
Michael du Breuil 1f1ba54990 AP_HAL_VRBrain: Remove RC overrides 2018-06-05 09:51:09 +10:00
Michael du Breuil 9c288df8d7 AP_HAL_SITL: Remove RC overrides 2018-06-05 09:51:09 +10:00
Michael du Breuil dc4f1786f6 AP_HAL_F4Light: Remove RC overrides 2018-06-05 09:51:09 +10:00
Michael du Breuil 45a13c868b AP_HAL_Empty: Remove RC overrides 2018-06-05 09:51:09 +10:00
Michael du Breuil 593da25a7a AP_HAL_ChibiOS: Remove RC overrides 2018-06-05 09:51:09 +10:00
Michael du Breuil 4d83644bd6 AP_HAL_PX4: Remove RC overrides 2018-06-05 09:51:09 +10:00
Michael du Breuil 737c4ac36f AP_HAL_Linux: Remove RC overrides 2018-06-05 09:51:09 +10:00
Michael du Breuil 627c7536f4 AP_HAL: Remove overrides interface 2018-06-05 09:51:09 +10:00
Michael du Breuil 4253c7f74d RC_Channel: Move overrides out of the HAL 2018-06-05 09:51:09 +10:00
Peter Barker e50a817150 GCS_MAVLink: make VFR_HUD always return height above MSL 2018-06-05 09:38:20 +10:00
murata f0a6cd5846 AP_NavEKF3: Clarify the message 2018-06-04 11:32:15 +09:00
murata 1e011c0c15 AP_NavEKF2: Clarify the message 2018-06-04 11:32:15 +09:00
Peter Barker dc202c1ff9 AP_Common: Location: use AP_AHRS singleton 2018-06-01 16:18:33 +01:00
Peter Barker 9a345160c1 AP_Common: fail attempts to use frame-above-home if home is not set 2018-06-01 16:18:33 +01:00
Peter Barker 69db7b040a GCS_MAVLink: move try_send_message handling of EKF_STATUS_REPORT up 2018-06-01 16:12:45 +01:00
Peter Barker 4d944da530 AP_AHRS: add a singleton-getter cast into AP_AHRS_NavEKF
This will allow libraries which absolutely require the EKF to easily get
a cast copy of the singleton.
2018-06-01 16:12:45 +01:00
Michael du Breuil fb99ea0446 AP_Rangefinder: Update WASP defaults 2018-06-01 15:08:35 +09:00
Randy Mackay 67475a9eaa AR_AttitudeControl: reset turn-rate I term if not run for 0.2sec 2018-06-01 15:06:13 +09:00
Randy Mackay 99cf279dff AP_RangeFinder: remove unused definitions from MaxSonarI2C 2018-06-01 15:06:13 +09:00
Randy Mackay 98e87db274 AP_RangeFinder: MaxsonarI2C reports no data after 300ms 2018-06-01 15:04:40 +09:00
Peter Barker 0baee6f82b GCS_MAVLINK: avoid pushing partial RC_CHANNEL message into uart
In the case we do not send RC_CHANNELS_RAW, we will not check to see if
RC_CHANNELS will fit.  RC_CHANNELS is larger than RC_CHANNELS_RAW, so the
check in the caller is insufficient.
2018-05-30 17:05:13 +01:00
Pierre Kancir b615677223 HAL_SITL: implement reboot support 2018-05-30 18:48:53 +10:00
Pierre Kancir 7732b41186 AP_HAL_SITL: fix static member access through instance 2018-05-30 18:48:53 +10:00
Pierre Kancir f986f1366f AP_HAL_SITL: set close-on-exec flag on uart socket 2018-05-30 18:48:53 +10:00
Randy Mackay e520d4fe42 AP_RangeFinder: Benewake TF02 and TFmini lidar driver 2018-05-30 11:16:35 +09:00
disgruntled-patzer 2c41db9e4d AP_RollController.cpp: Updated description of ArduPlane Roll Controller for accuracy
AP_RollController's get_servo_out function does not return an elevator deflection as was previously described in the function comments.
Instead, it should return an aileron deflection. Thus, the function description should be updated to reflect this more accurately
2018-05-30 09:46:08 +09:00
Randy Mackay e691b680ca AR_AttitudeControl: add speed-control-active method
allows caller check if speed controller if active
also consolidated other methods to use this check to reduce a little bit of duplicate code
2018-05-29 16:37:31 +09:00
Randy Mackay 3b71d0360a AR_AttitudeControl: const get_decel_max and get_stopping_distance 2018-05-29 16:37:31 +09:00
Peter Barker 19fd133ef8 SITL: correct compilation for transitive include fail 2018-05-29 14:42:02 +10:00
Peter Barker 1aaf7e96af GCS_MAVLink: remove intermediate functions
GCS_MAVLink: remove comm_receive_ch

This is a lot of sanity checking in a static function which has been
called from a place where things are guaranteed

GCS_MAVLink: remove unused comm_is_idle

GCS_MAVLink: remove unused comm_send_ch

GCS_MAVLink: remove unused hal reference

GCS_MAVLink: remove unused #includes
2018-05-29 14:42:02 +10:00
Peter Barker 28b4794816 AP_Common: remove unused HomeState 2018-05-29 14:38:45 +10:00
Peter Barker 3cbb88ae20 AP_AHRS: split home-set and home-locked state 2018-05-29 14:38:45 +10:00
Peter Barker d8871078ff GCS_MAVLink: create persist_streamrates() callback to indicate persistence
Removes the catching of the message in each vehicle separately.
2018-05-29 13:08:29 +10:00
Peter Barker 879f250fac GCS_Common: return airspeed sensor value in vfr_hud_airspeed 2018-05-29 13:00:40 +10:00
Peter Barker d1174bcf70 GCS_MAVLINK: move try_send_message handling of vfr_hud up 2018-05-29 13:00:40 +10:00
Peter Barker 1331e6ca14 AP_Soaring: const some accessors 2018-05-29 13:00:40 +10:00
Michael du Breuil abd5bffda5 AP_Airspeed: Clean up some comments, prevent a potential out of range access 2018-05-29 00:10:40 +01:00
Michael du Breuil 84b1a6a58b APM_Control: Supress some compilier warnings about strncpy 2018-05-29 00:10:40 +01:00
Michael du Breuil b2d8f6e788 AP_Rangefinder: Fix bad fallthrough from NMEA driver 2018-05-29 00:10:40 +01:00
Andrew Tridgell 08228efc72 AP_Rangefinder: fixed param docs for Wasp backend 2018-05-28 11:44:29 +01:00
Andrew Tridgell 3b8d5ea4cf AP_Rangefinder: fixed param handling for Wasp backends 2018-05-28 11:44:29 +01:00
Michael du Breuil b678302aed AP_Rangefinder: Add WASP 200 LRF backend 2018-05-28 11:44:29 +01:00
Andrew Tridgell a011561a6a HAL_ChibiOS: support sdcard on MatekF405 2018-05-27 19:10:24 +10:00
Andrew Tridgell ea37cede28 HAL_ChibiOS: stop sdcard interface on reboot 2018-05-27 19:10:24 +10:00
Andrew Tridgell 86ded2c40c HAL_ChibiOS: cleanup sdcard API usage 2018-05-27 19:10:24 +10:00
Andrew Tridgell d28283e302 AP_HAL: added clock_pulse() method to SPIDevice
this is used by SPI SDCard interface for HAL_ChibiOS
2018-05-27 19:10:24 +10:00
Andrew Tridgell 52c8d3ed9f HAL_ChibiOS: fixed SPI select error
changes by sdcard PR
2018-05-27 19:10:24 +10:00
Andrew Tridgell 2c55589488 HAL_ChibiOS: added hwdef for MatekF405 2018-05-27 19:10:24 +10:00
Alexander Malishev 83e65b3c6e HAL_ChibiOS: turn on sdcard on f4by 2018-05-27 19:10:24 +10:00
Alexander Malishev 66de6d770a HAL_ChibiOS: Enable reentrancy on FatFS sybsystem 2018-05-27 19:10:24 +10:00
Alexander Malishev 6b15b2f44f HAL_ChibiOS: Enable sdcard on spi bus 2018-05-27 19:10:24 +10:00
Andrew Tridgell 7b720aae46 HAL_ChibiOS: allow printf() to work on systems without debug console
map to hal.console once initialised
2018-05-26 19:06:25 +10:00
Andrew Tridgell dbe0f3c575 HAL_ChibiOS: fixed assert in reboot
with asserts enabled we can't sleep with interrupts off
2018-05-26 17:23:46 +10:00
Andrew Tridgell 79ca1e76c0 HAL_ChibiOS: improve reliability of reboot 2018-05-26 15:53:25 +10:00
Andrew Tridgell 99ca0ea913 AP_BoardConfig: moved BRD_PWM_COUNT to common code
this allows all boards to configure some PWM outputs as GPIOs
2018-05-26 12:08:54 +10:00
Andrew Tridgell 7e897c16c0 HAL_ChibiOS: maintain rcout state beyond BRD_PWM_COUNT
allow channels beyond BRD_PWM_COUNT to be sent over SBUS or DShot
distribution
2018-05-26 12:08:54 +10:00
Pierre Kancir 0fd8d94924 SITL: Fix printf format warning 2018-05-26 09:13:29 +09:00
Pierre Kancir 053f124492 GCS_MAVLink: fix FALLTHROUGH warning 2018-05-26 09:13:29 +09:00
Michael du Breuil d73c16698a AP_BattMonitor: Update param docs to be more UX friendly 2018-05-26 08:49:02 +09:00
Pierre Kancir 9ada804489 AP_ADSB: fix snprintf warning 2018-05-25 12:54:25 -07:00
Randy Mackay 938dc2e47d GCS_MAVLink: resolve compiler warnings correct_offboard_timestamp
applies only to SITL
2018-05-25 14:00:00 +09:00
Andrew Tridgell fbd80ef897 AP_UAVCAN: fixed build on revo 2018-05-25 13:53:17 +10:00
Andrew Tridgell 91d2b19e23 AP_UAVCAN: use take_blocking() method 2018-05-25 13:53:17 +10:00
Andrew Tridgell e2ea654b77 AP_HAL: added take_blocking() method
this avoids the need to check return result
2018-05-25 13:53:17 +10:00
Andrew Tridgell 49dfccbcee AP_UAVCAN: fixed build of example on px4 2018-05-25 13:53:17 +10:00
Andrew Tridgell 92cda24659 AP_UAVCAN: efficiency improvements
this allows us to support 800Hz main loop rate with UAVCAN ESCs on
copter
2018-05-25 13:53:17 +10:00
Andrew Tridgell 438a7dd79a AP_UAVCAN: increase message timeout to 2ms
this reduces the number of msg timeouts
2018-05-25 13:53:17 +10:00
Andrew Tridgell b8ae43c30b AP_UAVCAN: added a servo rate limit parameter
this allows for servos at 50Hz while keeping ESCs at higher rates
2018-05-25 13:53:17 +10:00
Andrew Tridgell afb36ec168 HAL_ChibiOS: run can loop much more often
this allows for much higher ESC and servo rates, as it gives more
changes for frames to get out
2018-05-25 13:53:17 +10:00
Andrew Tridgell 0dc77421e8 AP_UAVCAN: a simple UAVCAN sniffer based on AP_HAL 2018-05-25 13:53:17 +10:00
Andrew Tridgell 5f8bff8f3e AP_UAVCAN: set timeout for periodic msgs to 1
this stops us keeping messages for resend for too long, which fixes a
major memory leak
2018-05-25 13:53:17 +10:00
Tom Pittenger 4c51edfaca AP_UAVCAN: move UAVCAN code from SRV to UAVCAN files 2018-05-25 13:53:17 +10:00
Tom Pittenger 1a15a2e749 SRV_Channel: move UAVCAN code from SRV to UAVCAN files 2018-05-25 13:53:17 +10:00
Eugene Shamaev 66438041ad SRV_Channels: helper func 2018-05-25 13:53:17 +10:00
Eugene Shamaev 938f19c154 SRV_Channel: move push_UAVCAN to private 2018-05-25 13:53:17 +10:00
Eugene Shamaev 60db4016a7 AP_HAL_VRBRAIN: UAVCAN servo removal 2018-05-25 13:53:17 +10:00
Eugene Shamaev 94f8c81d84 AP_HAL_PX4: UAVCAN servo removal 2018-05-25 13:53:17 +10:00
Eugene Shamaev 1a888c16f4 AP_UAVCAN: Change for servo and ESC interface from RCOutput to SRV_Channels 2018-05-25 13:53:17 +10:00
Eugene Shamaev afce24e45d SRV_Channels: integration of UAVCAN Servos and ESCs 2018-05-25 13:53:17 +10:00
Eugene Shamaev c410feefa1 AP_HAL: add CAN bus declaration for the intel aero board 2018-05-25 13:53:17 +10:00
Tom Pittenger 7134a4bdf6 AP_Avoidance: track src with correct label - use MAVLink label 2018-05-25 12:44:59 +09:00
timo 8cea9a3beb HAL_F4Light: Fixed I2C initalization for Airspeed sensor on MatekF405CTR board 2018-05-25 12:06:49 +10:00
night-ghost 06da94dcea HAL_F4Light: fixed non-inverted SBUS parsing 2018-05-25 12:06:49 +10:00
night-ghost 6d3a879219 HAL_F4Light: fixed ADC field description 2018-05-25 12:06:49 +10:00
night-ghost 7d6d9d4f3d HAL_F4Light: changed pin definitions from #defines to enum 2018-05-25 12:06:49 +10:00
Alexander Malishev 47451be875 AP_RCProtocol: add support for non-inverted s-bus 2018-05-25 12:05:50 +10:00
Peter Barker f668d0dc57 GCS_MAVLink: enhance TIMESYNC handling
GCS_MAVLink: use de-jittered timestamp for our timesync responses

GCS_MAVLink: periodically send timesync request packets

Currently no use is made of the result of these requests, however,
having the result present in telemetry logs will be useful data.
2018-05-25 11:36:17 +10:00
Michael du Breuil 3a62bca7d0 AP_HAL_ChibiOS: Make redefined pins an error, fix FMUv3 2018-05-25 09:57:18 +10:00
Dr.-Ing. Amilcar do Carmo Lucas 8427b569b6 GCS_MAVLink: replace /* fall through */ with FALLTHROUGH; 2018-05-25 08:41:07 +09:00
Dr.-Ing. Amilcar do Carmo Lucas 594911f0b4 DataFlash: replace /* fall through */ with FALLTHROUGH; 2018-05-25 08:41:07 +09:00
Lucas De Marchi 88dc17fe6e AP_HAL_Linux: Storage: fix initialization
Use init() to lazily create/open storage directory and keep fd open
afterwards. This avoids duplicate code opening the storage in several
places.
2018-05-24 08:00:33 -07:00
Lucas De Marchi 1f3b7b5687 AP_HAL_Linux: Storage: fix writing garbage while creating file
By the time we create the storage we hadn't still initialized the
buffer. Remove the writes during storage creation since ftruncate() will
take care of the file size aspect and MAX storage write chunk is taken
care by Linux according to the media/fs that is there.
2018-05-24 08:00:33 -07:00
Lucas De Marchi 5526997d45 AP_HAL_Linux: Storage: prefer custom storage
If ardupilot was started with --storage-directory option, use that
directory to save/load parameters.
2018-05-24 08:00:33 -07:00
Lucas De Marchi ff6e76ea6a AP_HAL_Linux: add custom storage directory 2018-05-24 08:00:33 -07:00
Lucas De Marchi 9e538632b3 AP_HAL_Linux: use AP_HAL_STORAGE_DIRECTORY
Add mkdir_p implementation copied from kmod and create the directory
with all possible components.
2018-05-24 08:00:33 -07:00
Lucas De Marchi a56106cccb AP_HAL: use buildsystem for default directories 2018-05-24 08:00:33 -07:00
Lucas De Marchi 1e7ad72909 AP_HAL: use default storage for more boards
Boards from Emlid, Erle Robotics and BBB-like ones were agreed to be
changed #7100. Here I'm also change some more, just because they appear
to be using the old default just because of copy and paste. We can
always revert back if we get complains and it seems something trivial.
Almost all boards now are using the the default path for logs, terrain
and params, except those that have restrictions to do so, like ones
using custom distros.
2018-05-24 08:00:33 -07:00
Randy Mackay 85efab1ec8 AP_RangeFinder: reduce MaxsonarI2C update to 10hz 2018-05-24 13:37:03 +09:00
Randy Mackay fd2e5741ce AP_RangeFinder: MaxsonarI2C formatting fixes 2018-05-24 13:37:00 +09:00
Randy Mackay 3f749051d3 AP_RangeFinder: NMEA sonar driver 2018-05-24 12:46:38 +09:00
Randy Mackay a7fbfe7767 AR_AttitudeControl: caller provides dt instead of calculated internally
This allows the vehicle's main loop rate to be used instead of an internally calculated dt which suffers from jitter
2018-05-24 11:06:20 +09:00
Randy Mackay c032095c80 AR_AttitudeControl: reduce default accel max to 2m/s/s 2018-05-24 11:06:20 +09:00
Randy Mackay 856d592b1d AR_AttitudeControl: accel limit stops 2018-05-24 11:06:20 +09:00
Tom Pittenger 657f515f40 AP_ADSB: add cfg_out passthrough parsing
- add param ADSB_SQUAWK
- add param ADSB_RF_CAPABLE
2018-05-23 14:02:45 -07:00
Tom Pittenger 3653ba61d7 AP_Math: add is_valid_octal helper function.
returns true if valid
2018-05-23 14:02:45 -07:00
Karthik Desai 0a04a2a8c2 AP_Beacon_Marvelmind: Relax the precision of the position of Hedge
But we are conservative here and use 20cm instead (until MM provides us with a proper accuracy value)
2018-05-23 14:51:23 +01:00