Andrew Tridgell
91e8752c17
HAL_ChibiOS: wrap more libc functions
...
this saves a few k of flash as it avoids linking libc versions of some
functions
2019-09-09 13:31:30 +10:00
Andrew Tridgell
3166f84954
HAL_ChibiOS: added vsnprintf wrapper
...
this allows us to use a common snprintf implementation
2019-09-09 13:31:30 +10:00
Michael du Breuil
ba3cfbfb54
AP_RTC: Don't allow RTC times before 2019
2019-09-09 04:43:29 +10:00
Andrew Tridgell
aa20be4270
AP_RCProtocol: fixed SUMD with 16 channels
...
with 16 channels it is more than 3ms per frame
2019-09-07 10:02:26 +10:00
Andrew Tridgell
df387dc396
AP_Compass: allow rotation of BMM150 compass
2019-09-07 09:53:21 +10:00
Andrew Tridgell
1cb775e2c2
AP_Compass: probe more addresses for IST8310
...
IST8310 can be on 4 possible i2c addresses
2019-09-07 07:35:54 +10:00
Andrew Tridgell
5e5c30efe8
HAL_SITL: allow SITL to use SERIALn_PROTOCOL=23
...
this allows for testing of RC input protocol parsing in SITL
2019-09-06 08:51:45 +10:00
Andrew Tridgell
c8de2ec9c7
AP_RCProtocol: added update() method for use by SITL
2019-09-06 08:51:45 +10:00
Andrew Tridgell
4b48e80c26
AP_SerialManager: fixed AP_Periph build
2019-09-06 08:51:45 +10:00
Andrew Tridgell
83872c23e5
HAL_ChibiOS: fixed AP_Periph build
2019-09-06 08:51:45 +10:00
Andrew Tridgell
fd80220d3e
HAL_ChibiOS: setup PH4-mini RCIN port by default
2019-09-06 08:51:45 +10:00
Andrew Tridgell
54649a0e4f
HAL_ChibiOS: fixed KakuteF4 define for SERIAL2
2019-09-06 08:51:45 +10:00
Andrew Tridgell
06b272705e
HAL_ChibiOS: run RCIN thread at 1kHz
...
this gives fast enough response for SBUS parsing on a UART
2019-09-06 08:51:45 +10:00
Andrew Tridgell
6983186210
AP_HAL: added get_options() method on UARTs
2019-09-06 08:51:45 +10:00
Andrew Tridgell
c841b39ea2
HAL_ChibiOS: switch to AP::RC() for AP_RCProtocol
2019-09-06 08:51:45 +10:00
Andrew Tridgell
bf2cf7834d
HAL_ChibiOS: fixed a bug in parity/stop-bit setting on STM32F7 and H7
...
and add get_options() method
2019-09-06 08:51:45 +10:00
Andrew Tridgell
312018898f
HAL_Linux: use AP::RC()
2019-09-06 08:51:45 +10:00
Andrew Tridgell
672d09c965
AP_IOMCU: use AP::RC() for AP_RCProtocol
2019-09-06 08:51:45 +10:00
Andrew Tridgell
cbdb23afb5
AP_SerialManager: support SERIALn_PROTOCOL=23 for RC input
...
sets up an extra RC input port
2019-09-06 08:51:45 +10:00
Andrew Tridgell
2b856abdd1
AP_RCProtocol: support an additional uart on RC input
...
this will allow for any UART to be configured as an additional RC
input source
2019-09-06 08:51:45 +10:00
Andrew Tridgell
ad2890dc5a
HAL_ChibiOS: added connector pinouts for PH4-mini
2019-09-06 08:51:45 +10:00
Andrew Tridgell
b72dcf6478
AP_Filesystem: use a recursive semaphore
...
this is needed to cope with the mkdir("/APM") in sdcard_retry()
2019-09-06 08:51:04 +10:00
Andrew Tridgell
7afd51d03e
AP_Frsky_Telem: move FrSky handling to it's own thread
...
we are getting timing issues sharing with the other users of the IO
thread. The FrSky protocols are quite timing sensitive, so this should
help
2019-09-05 10:50:17 +10:00
Randy Mackay
fb38db6640
AP_AHRS: resolve compile warning in AP_AHRS_DCM::use_compass
2019-09-05 08:39:10 +10:00
Andrew Tridgell
b344946300
HAL_ChibiOS: prevent duplicate sensors in hwdef.dat
...
throw an error on configure if there is a duplicate
2019-09-05 06:37:35 +10:00
Andrew Tridgell
2c5c8106a5
HAL_ChibiOS: removed duplicate barometer from fmuv5
2019-09-04 21:24:01 +10:00
Peter Barker
df5921a87c
GCS_MAVLink: gate AP_DEVO_Telem behind !HAL_MINIMIZE_FEATURES
2019-09-04 17:47:33 +10:00
Andrew Tridgell
708ee47c03
HAL_ChibiOS: fixed f103 rm3100
2019-09-04 16:27:47 +10:00
Andrew Tridgell
c2c8702329
HAL_ChibiOS: convert remaining boards to use COMPASS specifier
2019-09-04 16:27:47 +10:00
Andrew Tridgell
3aa01448ff
HAL_ChibiOS: use COMPASS specifier for f103-periph
2019-09-04 16:27:47 +10:00
Andrew Tridgell
f18a18c0ee
AP_Baro: use GET_I2C_DEVICE() for i2c probes
...
for consistency with compass and INS
2019-09-04 16:27:47 +10:00
Andrew Tridgell
2bc7db4cca
AP_HAL: removed old HAL_COMPASS_ defines (no longer used)
2019-09-04 16:27:47 +10:00
Andrew Tridgell
bd0760f9d4
AP_Compass: removed unusued compass probes
...
now only use probe lists
2019-09-04 16:27:47 +10:00
Andrew Tridgell
43e011c7a8
AP_HAL: convert Linux compass specification to new probe list
...
this avoids the special handling in AP_Compass library
2019-09-04 16:27:47 +10:00
Andrew Tridgell
3bc8522b54
AP_Compass: added ROTATION_NONE to probes
...
we no longer use defaults in the headers
2019-09-04 16:27:47 +10:00
Andrew Tridgell
f877def909
AP_Compass: removed default rotations for compass probe
...
this prevents bugs where the force_external and rotation are mixed up
in hwdef.dat causing incorrect rotations
2019-09-04 16:27:47 +10:00
Andrew Tridgell
2a48241ebb
AP_Compass: fixed naming of QMC5883L driver
...
needed for probe using COMPASS macro in hwdef.dat
2019-09-04 16:27:47 +10:00
Andrew Tridgell
316e7cf7e6
HAL_ChibiOS: fixed mini-pix compass and baro probing
...
removed dup baro and fixed compass probe
2019-09-04 16:27:47 +10:00
Andrew Tridgell
2509b50852
AP_Baro: define GET_I2C_DEVICE()
2019-09-04 16:27:47 +10:00
Andrew Tridgell
15e15e0b9d
AP_InertialSensor: define GET_I2C_DEVICE()
2019-09-04 16:27:47 +10:00
Andrew Tridgell
beca17c638
HAL_ChibiOS: use GET_I2C_DEVICE() for i2c probing
...
this allows for the driver probing to use a macro to prevent loading
of duplicate i2c devices (AP_Compass does this)
2019-09-04 16:27:47 +10:00
Michael du Breuil
e19f0ef238
AP_HAL_ChibiOS: Remove set_stop_pin from AnalogSource
2019-09-04 09:54:50 +10:00
Michael du Breuil
75b241622f
AP_HAL_Empty: Remove set_stop_pin from AnalogSource
2019-09-04 09:54:50 +10:00
Michael du Breuil
979a431e4a
AP_HAL_Linux: Remove set_stop_pin from AnalogSource
2019-09-04 09:54:50 +10:00
Michael du Breuil
69d3e97533
AP_HAL_SITL: Remove set_stop_pin from AnalogSource
2019-09-04 09:54:50 +10:00
Michael du Breuil
c12652b325
AP_Rangefinder: Remove stop pin usage
2019-09-04 09:54:50 +10:00
Michael du Breuil
927a0521e3
AP_HAL: Remove the empty force_safety_no_wait
2019-09-04 07:14:50 +10:00
Michael du Breuil
e5eeb6181d
GCS_MAVLink: Remove the usage of force_safety_no_wait
2019-09-04 07:14:50 +10:00
Michael du Breuil
5711c2cbac
AP_UAVCAN: Remove the usage of force_safety_no_wait
2019-09-04 07:14:50 +10:00
Michael du Breuil
53860b53ac
AP_BoardConfig: Remove the usage of force_safety_no_wait
2019-09-04 07:14:50 +10:00
Michael du Breuil
a74f00d045
GCS_MAVLink: Remove single use method
2019-09-03 14:35:17 +10:00
Michael du Breuil
8adc6ba3ad
AP_Notify: Add an alternate LED scheme
2019-09-03 11:50:52 +10:00
E Thomas
c09d6908ed
Enabled active buzzer output on OmnibusNanoV6
2019-09-03 09:59:53 +10:00
Peter Barker
7ea449076f
AP_NavEKF3: use timing logging from AP_NavEKF
2019-09-03 09:28:37 +10:00
Peter Barker
c8fac758ee
AP_NavEKF2: use timing logging from AP_NavEKF
2019-09-03 09:28:37 +10:00
Peter Barker
6d71ef5cf8
AP_Logger: move EKF timing logging out to EKF
2019-09-03 09:28:37 +10:00
Peter Barker
9e0f525f69
AP_NavEKF: move logging in from AP_Logger
2019-09-03 09:28:37 +10:00
Peter Barker
9da0efaaef
GCS_MAVLink: fill SYS_STATUS bits from AC_Fence
2019-09-03 09:12:24 +10:00
Andrew Tridgell
9c900c7176
AP_RangeFinder: added driver for Lanbao CM8JL65
2019-09-03 09:10:48 +10:00
Peter Hall
2f3c0447eb
RC_Channel: add fence and value for rover
2019-09-02 11:03:27 +09:00
Andrew Tridgell
172c802ffa
AP_RangeFinder: support native I2C protocol on LightWare Lidars
...
this supports both the native and the legacy I2C protocol for
LightWare Lidars. The native protocol is a string based protocol that
is enabled by default on new Lidars. By supporting both protocols we
avoid the need for users to re-configure their new lidar using a
serial cable before using it on I2C.
This driver was originally written by Mitch Koch and Jonathan
Challinger, and ported to master by me (it required only minor
changes)
2019-09-02 07:20:22 +10:00
Peter Hall
fdb6da0793
RC_Channel: define sailboat mainsail and motor input channels
...
The unusual use of 207 is in preparation for Peter Barker's RCMAP replacement PR which uses 200 to 206
2019-09-01 09:11:25 +09:00
Peter Hall
3dd0ebaf0d
AP_WindVane: add wind_speed_enabled method
2019-09-01 09:11:25 +09:00
Peter Barker
ca5ee2bfbc
AP_Param: correct fetching of flags for parameters
...
This was sending through the flags for the group the parameter was in,
rather than the parameter itself.
2019-08-30 06:57:30 +10:00
Andrew Tridgell
bcb139f02f
AP_Compass: fixed uninitialised CAN device ID bits
2019-08-29 18:37:03 +10:00
Rajat Singhal
80bbadf9ca
SITL: AirSim: Store last timestamp only
...
Also change the datatype of deltat
2019-08-29 08:32:19 +10:00
Rajat Singhal
86a70e5797
SITL: Remove redundant timestep in Airsim backend
2019-08-29 08:32:19 +10:00
Rajat Singhal
c056548f0d
SITL: Enable Arming Checks in airsim-copter params
2019-08-29 08:32:19 +10:00
Michael du Breuil
fa6e43be77
AP_Logger: Forward declare AHRS
...
This reduces the number of places this is implicitly included, and helps
to reduce the scope of files that get rebuilt
2019-08-28 13:13:03 +10:00
Michael du Breuil
fe279b03b6
SITL: Directly include needed headers
2019-08-28 13:13:03 +10:00
Michael du Breuil
c85c9faa6d
GCS_MAVLink: Directly include needed headers
2019-08-28 13:13:03 +10:00
Michael du Breuil
1a5627ae54
AP_VisualOdom: Directly include needed headers
2019-08-28 13:13:03 +10:00
Michael du Breuil
04863f858d
AP_Terrain: Directly include needed headers
2019-08-28 13:13:03 +10:00
Michael du Breuil
17cec7cf2b
AP_Landing: Directly include needed headers
2019-08-28 13:13:03 +10:00
Michael du Breuil
ca0dad9a7f
AP_GPS: Directly include needed headers
2019-08-28 13:13:03 +10:00
Michael du Breuil
5d888abfec
AP_Baro: Directly include needed headers
2019-08-28 13:13:03 +10:00
Michael du Breuil
d8bce8295e
AP_Arming: Directly include needed headers
2019-08-28 13:13:03 +10:00
Peter Barker
78af091869
AP_Logger: log parameter space used as part of log open
2019-08-28 11:51:09 +10:00
Peter Barker
b493805fb4
AP_Param: methods to provide amount of parameter space used
...
AP_Param: provide method for storage size
2019-08-28 11:51:09 +10:00
Peter Barker
2d1357b44c
AP_Mount: stop passing serial manager through to init()
2019-08-28 06:55:28 +10:00
Andrew Tridgell
6cecf15e6a
AP_Baro: remove unused baro probe lines
2019-08-28 06:54:11 +10:00
Andrew Tridgell
7fa6eeaaed
AP_HAL: remove unused HAL_BARO_ defines
2019-08-28 06:54:11 +10:00
Andrew Tridgell
9d94598235
AP_HAL: convert linux boards to use baro probe list
2019-08-28 06:54:11 +10:00
Andrew Tridgell
72494788f7
HAL_ChibiOS: convert more boards to use BARO specifier
2019-08-28 06:54:11 +10:00
Andrew Tridgell
60a6f1b04a
AP_HAL: removed most HAL_INS_* defines
...
not used any more
2019-08-28 06:54:11 +10:00
Andrew Tridgell
1c92ecc89f
AP_InertialSensor: removed old method of specifying most IMUs
...
and removed dangerous default values for rotations
2019-08-28 06:54:11 +10:00
Andrew Tridgell
0667747506
HAL_ChibiOS: convert some more boards to new IMU specifiers
2019-08-28 06:54:11 +10:00
Andrew Tridgell
96180018fb
AP_HAL: convert HAL_Linux to use HAL_INS_PROBE_LIST
...
makes for much simpler addition of new boards, especially with more
than one IMU
2019-08-28 06:54:11 +10:00
Jaaaky
d7abd636ac
AP_HAL_SITL: Fix build with --sitl-flash-storage option
2019-08-28 06:23:04 +10:00
Andrew Tridgell
dcd9003831
Revert "AP_Mission: Better AUTO watchdog restore"
...
This reverts commit d774bf3ea5
.
2019-08-27 13:18:12 -06:00
Andrew Tridgell
5ce4ff916e
HAL_ChibiOS: fixed Pixhawk1 gyro orientation
...
this was broken by the recent switch to hwdef.dat for orientations
2019-08-27 19:29:37 +10:00
Andrew Tridgell
c99923d500
AP_InertialSensor: require gyro orientations in LSM9DS probe
...
this prevents a bug where they are missing in hwdef.dat
2019-08-27 19:29:37 +10:00
Andrew Tridgell
d40835c666
AP_Logger: use AP::FS().set_mtime()
2019-08-27 15:40:43 +10:00
Andrew Tridgell
b489e8a655
AP_Filesystem: added set_mtime() call
2019-08-27 15:40:43 +10:00
Andrew Tridgell
0ffe2e75be
HAL_ChibiOS: fixed warnings
2019-08-27 15:40:43 +10:00
Andrew Tridgell
df4cb00970
AP_Logger: added LOG_FILE_TIMEOUT parameter
...
this allows for cards to be removed and re-inserted while continuing
logging
2019-08-27 15:40:43 +10:00
Andrew Tridgell
b577787f68
AP_Scripting: use AP_Filesystem API
2019-08-27 15:40:43 +10:00
Andrew Tridgell
667b4e045a
AP_Logger: convert to use AP_Filesystem
2019-08-27 15:40:43 +10:00
Andrew Tridgell
fb50ec2a1d
AP_Notify: convert to use AP_Filesystem
2019-08-27 15:40:43 +10:00
Andrew Tridgell
d160f14856
AP_UAVCAN: convert to use AP_Filesystem
2019-08-27 15:40:43 +10:00
Andrew Tridgell
a4860afd32
AP_Terrain: convert to use AP_Filesystem
2019-08-27 15:40:43 +10:00
Andrew Tridgell
a4258639c8
AP_Proximity: use strtol instead of sscanf
2019-08-27 15:40:43 +10:00
Andrew Tridgell
9d760a2956
HAL_ChibiOS: disable re-entrancy in FATFS
...
not needed now we have a semaphore in AP_Filesystem
2019-08-27 15:40:43 +10:00
Andrew Tridgell
bf79b65e07
HAL_ChibiOS: simplify stubs code
2019-08-27 15:40:43 +10:00
Andrew Tridgell
d1565a96c5
HAL_ChibiOS: wrap cacheBuffer functions
...
needed to avoid problem with end() method in UARTDriver shadowing with
F7 implementation of cache macros
2019-08-27 15:40:43 +10:00
Andrew Tridgell
b867ef35c0
HAL_ChibiOS: use AP_Filesystem API
2019-08-27 15:40:43 +10:00
Andrew Tridgell
692abb11fa
AP_Filesystem: define new filesystem API
2019-08-27 15:40:43 +10:00
Michael du Breuil
7fdc9fef12
AP_Scripting: Garbage collect after each run of a script
...
For some reason this resolves a memory leak in a tight loop of file
open, close. This also extends the memory debug printing to be a bit
more useful.
2019-08-27 13:54:54 +10:00
Michael du Breuil
1484a12f4b
AP_HAL_Linux: Fix bad check order on heap_realloc
2019-08-27 13:54:54 +10:00
Michael du Breuil
2d40250f9b
AP_HAL_SITL: Fix bad check order on heap_realloc
2019-08-27 13:54:54 +10:00
Andrew Tridgell
b30f3697d2
HAL_ChibiOS: fixed build without ISR limit
2019-08-27 10:29:56 +10:00
Andrew Tridgell
97c56c068e
HAL_ChibiOS: update board IDs for AP_Periph firmwares
2019-08-27 10:29:56 +10:00
Andrew Tridgell
63f39c2bd6
HAL_ChibiOS: fixed build of iomcu firmware
2019-08-27 10:29:56 +10:00
Andrew Tridgell
444af9e638
AP_BoardConfig: fixed AP_Periph build error
2019-08-27 10:29:56 +10:00
Andrew Tridgell
e8e18959f7
AP_Baro: fixed baro build with AP_Periph
...
no GCS available
2019-08-27 10:29:56 +10:00
Andrew Tridgell
a19e55e83c
AP_Baro: added BMP388 driver
2019-08-27 10:29:56 +10:00
Andrew Tridgell
64921b64f5
HAL_ChibiOS: enable sensors in peripheral firmwares
2019-08-27 10:29:56 +10:00
Andrew Tridgell
fa76d1fbe6
HAL_ChibiOS: disable watchdog save in bootloader
2019-08-27 10:29:56 +10:00
Andrew Tridgell
5cbe85ee19
HAL_ChibiOS: allow for ADC and clock overrides
2019-08-27 10:29:56 +10:00
Andrew Tridgell
dc89d10ccf
HAL_ChibiOS: added hwdef.dat for CUAV_GPS
2019-08-27 10:29:56 +10:00
Andrew Tridgell
c8806acaf5
HAL_ChibiOS: use AP_PERIPH env var
2019-08-27 10:29:56 +10:00
Andrew Tridgell
cbc83d68cd
HAL_ChibiOS: allow for CAN enable override on F4
2019-08-27 10:29:56 +10:00
Andrew Tridgell
fb68fa8bc9
HAL_ChibiOS: fixed typo for 512k F4 parts
2019-08-27 10:29:56 +10:00
Andrew Tridgell
e51a1a88df
HAL_ChibiOS: initial hwdef-bl.dat for CUAV CAN GPS
2019-08-27 10:29:56 +10:00
Andrew Tridgell
66ab585a24
HAL_ChibiOS: setup defaults for CAN app versions
2019-08-27 10:29:56 +10:00
Andrew Tridgell
d711bed405
HAL_ChibiOS: set default node ID of 117
...
this allows for flight controllers without DNA support
2019-08-27 10:29:56 +10:00
Andrew Tridgell
ababe1e81d
HAL_ChibiOS: disable UART support in f103-periph bootloader
2019-08-27 10:29:56 +10:00
Andrew Tridgell
2facfe0baa
HAL_ChibiOS: support empty UART_ORDER
...
for CAN bootloader without uart support
2019-08-27 10:29:56 +10:00
Andrew Tridgell
f4576ec8f3
AP_Compass: reduce firmware size for AP_Periph
2019-08-27 10:29:56 +10:00
Andrew Tridgell
0ec3f80bbe
AP_Compass: enable LIS3MDL on I2C and RM3100 on SPI
2019-08-27 10:29:56 +10:00
Andrew Tridgell
9a7b52fd15
HAL_ChibiOS: added hwdef.dat for f103-periph
2019-08-27 10:29:56 +10:00
Andrew Tridgell
16bdaaa1af
HAL_ChibiOS: added support for STM31F10x for AP_Periph
2019-08-27 10:29:56 +10:00
Andrew Tridgell
24e05e96e7
AP_HAL: define support for LIS3MDL_I2C and RM3100_SPI
2019-08-27 10:29:56 +10:00
Andrew Tridgell
01472aa795
AP_FlashStorage: added support for STM32F1xx
2019-08-27 10:29:56 +10:00
Andrew Tridgell
291d72601b
AP_GPS: enabled reduced size for AP_Periph support
2019-08-27 10:29:56 +10:00
Andrew Tridgell
f897eae89d
AP_Param: enable reduced size support for AP_Periph
2019-08-27 10:29:56 +10:00
Andrew Tridgell
88fbbfba09
AP_Vehicle: added AP_Periph vehicle type
2019-08-27 10:29:56 +10:00
Andrew Tridgell
d005f066a9
StorageManager: enable use of a single storage region
2019-08-27 10:29:56 +10:00
Michael du Breuil
1e66457755
AP_Scripting: Allow the bindings to descirbe any build dependencies needed
...
Scripting has a hard requirement on AP_Terrain being available, this
allows us to emit a cleaner error message if you have disabled terrain
but not scripting
2019-08-27 09:45:35 +10:00
Peter Barker
5d9b332bcb
GCS_MAVLink: log exectuted COMMAND_LONG and COMMAND_INT packets
2019-08-27 09:32:00 +10:00
Peter Barker
631725f817
AP_Logger: add Write_Command for writing out received mavlink commands
2019-08-27 09:32:00 +10:00
Peter Barker
5010de9560
AP_Notify: add static asserts for array size
...
We index into these arrays so ensuring their size is worthwhile
2019-08-27 09:29:11 +10:00
Michael du Breuil
ee3fcf49c6
AP_BattMonitor: Detect bad configuration of failsafes
2019-08-26 18:57:59 +01:00
Michael du Breuil
e47f97c5d3
AP_HAL: Fix bad buffer termination
2019-08-26 18:57:59 +01:00
Stone white
ec911710c9
hwdef: Enable Spektrum 3.3V VDD Power on fmuv5
2019-08-26 17:27:02 +10:00
Michael du Breuil
56e35e0712
AP_HAL_ChibiOS: Remove almost redundant code duplication from the HAL
2019-08-26 17:24:09 +10:00
Andrew Tridgell
66dc36ef88
AP_Logger: ifdef out _need_rtc_update
2019-08-26 15:41:44 +10:00
Andrew Tridgell
4418495c99
AP_Logger: use UNUSED_RESULT
...
Co-Authored-By: Francisco Ferreira <OXINARF@users.noreply.github.com>
2019-08-26 15:41:44 +10:00
Andrew Tridgell
8e58cb993d
AP_Logger: fix timestamp on log files opened before GPS lock
2019-08-26 15:41:44 +10:00
Andrew Tridgell
ffe0f338d3
HAL_ChibiOS: enable utime() API
2019-08-26 15:41:44 +10:00