Commit Graph

1162 Commits

Author SHA1 Message Date
Michael du Breuil
af0c55b4df AP_HAL_ChibiOS: Only include MAVLink when using the MAVLink debugging 2020-02-05 10:04:08 +11:00
Andrew Tridgell
23005e6f46 HAL_ChibiOS: use 4k bouncebuffer for sdcard
match AP_Logger IO size
2020-01-18 12:27:36 +11:00
Andrew Tridgell
c5b1c88948 HAL_ChibiOS: adjust dma reserve allocation
use larger target and allow for smaller allocation
2020-01-18 12:27:33 +11:00
Andrew Tridgell
64dc29cf98 HAL_ChibiOS: don't extend alloc of iomcu uart 2020-01-18 12:27:29 +11:00
Andrew Tridgell
7c0cb85361 HAL_ChibiOS: added checking on bouncebuffer allocation
fail operations if DMA bouncebuffer alloc fails

# Conflicts:
#	libraries/AP_HAL_ChibiOS/I2CDevice.cpp
2020-01-18 12:27:23 +11:00
Andrew Tridgell
b834796f3b HAL_ChibiOS: fixed clock src for I2C4 on H7 2020-01-08 06:02:46 +11:00
Andrew Tridgell
17118977dc HAL_ChibiOS: automatically set AP_FEATURE_RTSCTS 2020-01-02 07:50:35 +11:00
Andrew Tridgell
8311a5be63 HAL_ChibiOS: fixed H7 I2C timing
we were running the clock at too low speed. This affected the SSD1306 display

# Conflicts:
#	libraries/AP_HAL_ChibiOS/I2CDevice.cpp
2019-12-30 14:35:57 +11:00
Andrew Tridgell
318c0a958d HAL_ChibiOS: removed PB1 and PB0 TIM1 complementary channels for F76x
these do not work, possibly a datasheet bug
2019-12-23 19:42:04 +11:00
Andrew Tridgell
24e48b5e81 HAL_ChibiOS: switch MatekF765 to timer 12
fixes PWM 5 and 6
2019-12-23 19:42:02 +11:00
Andrew Tridgell
af04f1eb93 HAL_ChibiOS: ensure bootloader flash is multiple of 32 bytes 2019-12-23 17:36:28 +11:00
Andrew Tridgell
f733e963df HAL_ChibiOS: scale uart rx buffer size with baudrate
this ensures we have enough buffer space for a RTK GPS, as well as for
high speed comms with a companion computer
2019-12-23 09:56:26 +11:00
Andrew Tridgell
12e51965c9 HAL_ChibiOS: change CUAVv5Nano volt scale to 18.000 2019-12-23 09:56:26 +11:00
Andrew Tridgell
96bccba638 HAL_ChibiOS: fixed build of SPI clock test 2019-12-12 20:43:40 +11:00
Andrew Tridgell
2d25adca33 HAL_ChibiOS: fixed build of sparky2
running out of flash
2019-12-09 13:18:01 +11:00
Andrew Tridgell
1fa764c915 HAL_ChibiOS: update mRoX21-777 I2C mask
all external
2019-12-09 12:58:55 +11:00
Phillip Kocmoud
0fffc77dae HAL_ChibiOS: update mRoControlZeroF7 I2C mask 2019-12-09 12:58:52 +11:00
Andrew Tridgell
5fe0cd16ab HAL_ChibiOS: enable MatekF765 LED pin
- use tonealarm for buzzer
 - add more baro options
2019-12-09 12:56:40 +11:00
Andy Piper
00406180c4 AP_HAL_ChibiOS: specify Durdanal IMUs so that ordering is correct 2019-12-09 12:54:14 +11:00
Henry Wurzburg
4d4b4d46a2 HWDEF: Speedybeef4 change I2C internal mask to 0 to allow probing ext baros 2019-12-09 12:54:06 +11:00
Andrew Tridgell
3a1b24c9bb HAL_ChibiOS: fixed handling of 16bit timer wrap
this fixes #12948
2019-12-09 12:45:20 +11:00
Andrew Tridgell
6f9abb8a4b HAL_ChibiOS: added assert for systime_t size 2019-12-09 12:45:09 +11:00
Andrew Tridgell
6eb4ccd428 HAL_ChibiOS: retain OPENDRAIN if set on a pin
this allows OPENDRAIN when set on a pin to be retained when set with a
pinMode(). This fixes a partially lit B/E LED on the Pixhawk4
2019-11-17 11:45:55 +11:00
Andrew Tridgell
65c3d4ff20 HAL_ChibiOS: enable advanced timers if we have any N PWM channels 2019-11-02 13:46:43 +11:00
Andrew Tridgell
88e78afb19 HAL_ChibiOS: fixed SPI timeout bug
thanks to CUAV for noticing
2019-11-01 21:54:43 +11:00
Andrew Tridgell
0eb9a58f17 AP_HAL_ChibiOS: cleanup ifdefs for SLCAN enable 2019-10-07 21:14:24 +11:00
Andrew Tridgell
0ec6210184 HAL_ChibiOS: removed wait on CAN peripheral in H7
these wait busy loops can take a very long time, and end up causing
interrupts to be lost elsewhere in the system, causing lost bytes on
UARTs

We should not have while loops waiting on peripharals like this. If we
do need to wait for a flag to clear then it needs to be done in a low
priority thread, or we need to check for completion in a timer

CAN still seems to work with this change, but needs flight testing
2019-10-06 10:58:07 +11:00
Andrew Tridgell
b8a77890b6 HAL_ChibiOS: generate HAL_MEMORY_TOTAL_KB for each board 2019-10-06 10:58:07 +11:00
Andrew Tridgell
bd95331068 HAL_ChibiOS: added Pixhawk1-1M
this is for 1M versions of the Pixhawk1. It is smaller than fmuv2 as
it only links the specific sensors needed for Pixhawk1
2019-10-06 10:58:07 +11:00
Andrew Tridgell
2962211ea0 HAL_ChibiOS: changed optimisation of higher end boards to -O2
-O3 does not seem to be a win, and takes up a lot more flash
2019-10-01 08:33:13 +10:00
Andrew Tridgell
560a1bf9e0 HAL_ChibiOS: disable DMA for RCIN on Pixracer
this frees up DMA for USART1_RX, which gives DMA for input over the
SERIAL5 WiFi port, which is important for applications where a
pixracer is being fed vision data over WiFi
2019-10-01 08:32:56 +10:00
Mark Whitehorn
2034bde367 HAL_ChibiOS: fix FMU fast_channel_mask
fix IO fast channel mask
use IOMCU chmask to only set right channels
remove unused variable
2019-10-01 08:32:00 +10:00
Andrew Tridgell
62c3fec45c HAL_ChibiOS: fixes from LGTM errors 2019-09-22 21:07:54 +10:00
Andrew Tridgell
f6b28f3013 HAL_ChibiOS: fixed delay for OneShot125 channels
we were delaying output for OneShot125 by 8x as much as we need to,
which reduced our max loop rate
2019-09-22 21:07:49 +10:00
Andrew Tridgell
eeb6fbe5ee HAL_ChibiOS: fixed undef for define lines
this fixes IMU heater enable for CubeBlack+
2019-09-16 12:55:44 +10:00
Andrew Tridgell
dceee38d69 HAL_ChibiOS: fixed IMU order and board ID for CubeBlack+ 2019-09-16 12:55:36 +10:00
bugobliterator
e540248695 HAL_ChibiOS: hwdef: add hwdef for CubeBlack+ 2019-09-16 12:55:34 +10:00
Andrew Tridgell
28cca004f2 HAL_ChibiOS: added default params for skyviper-journey 2019-09-12 14:02:36 +10:00
Andrew Tridgell
1dca0a16f5 HAL_ChibiOS: rename skyviper-f412 to skyviper-journey 2019-09-12 14:02:36 +10:00
Andrew Tridgell
b33afde884 HAL_ChibiOS: allow safety button on CUAV_GPS to be used for "stay in bootloader"
allows for recovery of bad CAN firmware
2019-09-10 16:22:33 +10:00
Andrew Tridgell
c6a9f067e2 HAL_ChibiOS: enable LEDs on CUAV_GPS 2019-09-10 16:22:33 +10:00
Andrew Tridgell
3dfe15443d HAL_ChibiOS: fixed orientation of CUAV_GPS compass 2019-09-10 16:22:33 +10:00
Andrew Tridgell
03c1a8bfd9 HAL_ChibiOS: use safety button logic from AP_BoardConfig 2019-09-10 16:22:33 +10:00
Andrew Tridgell
0ea67943b9 HAL_ChibiOS: enable safety button on CUAV_GPS 2019-09-10 16:22:33 +10:00
Andrew Tridgell
186eedf838 HAL_ChibiOS: enable safety LED 2019-09-10 16:22:33 +10:00
Andrew Tridgell
75696997cc HAL_ChibiOS: added buzzer support to CUAV_GPS 2019-09-10 16:22:33 +10:00
Andrew Tridgell
cbe0af2463 HAL_ChibiOS: setup for LEDs on KakuteF4
this makes Kopis1 display LEDs properly
2019-09-10 13:03:28 +10:00
Andrew Tridgell
f441223b55 HAL_ChibiOS: implement updated NeoPixel API
allow for N leds per chain, and setting separate colours per led in
each chain
2019-09-10 13:03:28 +10:00
Tom Pittenger
e3416b66dc AP_HAL_ChibiOS: add Neopixel output type, similar to dshot 2019-09-10 13:03:28 +10:00
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
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
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
ad2890dc5a HAL_ChibiOS: added connector pinouts for PH4-mini 2019-09-06 08:51:45 +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
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
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
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
E Thomas
c09d6908ed Enabled active buzzer output on OmnibusNanoV6 2019-09-03 09:59:53 +10:00
Andrew Tridgell
72494788f7 HAL_ChibiOS: convert more boards to use BARO specifier 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
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
0ffe2e75be HAL_ChibiOS: fixed warnings 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
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
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
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
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
ffe0f338d3 HAL_ChibiOS: enable utime() API 2019-08-26 15:41:44 +10:00
Henry Wurzburg
00c111651a ChiBios: Omnibusf4pro hwdef tweak to allow active or passive buzzer 2019-08-26 12:22:53 +10:00
Andrew Tridgell
aeb58cede1 HAL_ChibiOS: I2C timeout should be send+recv, not MAX(send,recv)
MAX() is right for SPI, not I2C
2019-08-26 09:13:39 +10:00
Andrew Tridgell
578e5dfdaa HAL_ChibiOS: add up i2c ISR count 2019-08-26 09:13:39 +10:00
Andrew Tridgell
f8cfbb8062 HAL_ChibiOS: added ISR limit on I2C
this will prevent any possibility of an I2C interrupt storm. This is
designed to address the most likely cause of #11642
2019-08-25 17:12:16 +10:00
Andrew Tridgell
8080efbc6a HAL_ChibiOS: allow for blocking unbuffered uarts
this is used by AP_IOMCU to avoid a race condition where the mutex is
busy on write() causing a zero-length write and delayed output
2019-08-17 17:36:41 +10:00