Commit Graph

1444 Commits

Author SHA1 Message Date
Andrew Tridgell
3a252a042b HAL_ChibiOS: fixed fast sampling on F32Lightning
this SPI bus on this board can't handle 8MHz
2020-09-02 06:42:44 +10:00
Andrew Tridgell
491e82159c HAL_ChibiOS: add HAL_WITH_SPI_xx defines for SPI devices
this allows us to avoid building drivers for SPI devices we don't
have, such as OSD
2020-09-02 05:56:46 +10:00
Siddharth Purohit
d25908a1c9 AP_HAL_ChibiOS: keep a backup of storage for last 100 boots 2020-09-01 14:31:53 +10:00
vierfuffzig
56e44c46ca AP_HAL_ChibiOS: disable IMU fast sampling on F35 / WingFC10
fast sampling introduces random IMU glitches, bisect search identifies 9c2caf5b12 
disabling fast sampling fixes IMU back to expected behaviour. see:
https://github.com/ArduPilot/ardupilot/issues/15090
https://discuss.ardupilot.org/t/shaking-horizon-and-jittering-servos/60420
for reference
2020-08-31 19:50:09 +10:00
Andrew Tridgell
36442dc9b0 HAL_ChibiOS: added Matek CAN GPS
supports GPS, baro, mag and airspeed
2020-08-25 09:59:15 +10:00
Andrew Tridgell
4c4c3d467b HAL_ChibiOS: added f103-Airspeed sensor
for Matek CAN airspeed sensor
2020-08-25 09:59:15 +10:00
bugobliterator
5eb0e0a718 AP_HAL_ChibiOS: fix name for RX Queue size define 2020-08-24 06:48:56 +10:00
Siddharth Purohit
8dcb973dad HAL_ChibiOS: fix SWD config in f3 boards 2020-08-20 19:08:14 +10:00
Siddharth Purohit
7929efec0d HAL_ChibiOS: add EventSource HAL 2020-08-19 17:31:09 +10:00
Siddharth Purohit
265e9b8cc6 HAL_ChibiOS: add native time info methods 2020-08-19 17:31:09 +10:00
Siddharth Purohit
a7d641c705 AP_HAL_ChibiOS: add available method for locked state 2020-08-19 17:31:09 +10:00
Siddharth Purohit
cdf8e369f1 AP_HAL_ChibiOS: create UAVCAN agnostic CANIface driver
HAL_ChibiOS
2020-08-19 17:31:09 +10:00
Siddharth Purohit
697e4141cb AP_HAL: add common Event interface 2020-08-19 17:31:09 +10:00
Siddharth Purohit
3ddd1d484a AP_HAL_ChibiOS: add support for bank selection call outside SPI driver 2020-08-06 12:41:35 +10:00
Andy Piper
baf92a17f9 AP_HAL_ChibiOS: disable AP_Mount on "mini" boards 2020-08-04 09:18:14 +10:00
Peter Barker
b5d0480bed AP_HAL_ChibiOS: log accumulated power status flags; all flags ever set 2020-07-21 09:12:14 +10:00
Andrew Tridgell
d283dd7d00 HAL_ChibiOS: define polarity of 3.3/5v selection for PWM 2020-07-21 08:47:27 +10:00
Andrew Tridgell
99ac8e2fbe HAL_ChibiOS: enable BRD_PWM_VOLT_SEL parameter for mRoPixracerPro 2020-07-21 08:47:27 +10:00
Peter Barker
efb576292f AP_HAL_ChibiOS: handle queue push and pop failing 2020-07-20 10:19:47 +09:00
Henry Wurzburg
d78c5371db AP_HAL_ChibiOS: remove fmuv4 and update Pixracer 2020-07-13 15:24:54 +10:00
Andrew Tridgell
9f1e641637 HAL_ChibiOS: added new STM32Cube configs 2020-07-10 13:33:51 +10:00
Andrew Tridgell
84bd59a7bb HAL_ChibiOS: support H7 with no crystal 2020-07-10 13:33:51 +10:00
Andrew Tridgell
cfbfb27004 HAL_ChibiOS: support no-crystal F3 setups 2020-07-10 13:33:51 +10:00
Andy Piper
2bae080be4 AP_HAL_ChibiOS: increase RCIN stack size 2020-07-07 18:48:06 +10:00
Peter Barker
cadb1012df AP_HAL_ChibiOS: reenable full features on KakuteF7Mini 2020-07-02 18:38:46 +10:00
Andrew Tridgell
ce8591ddbc HAL_ChibiOS: re-enable full features on KakuteF7 and OMNIBUSF7V2
we now have enough space with recent changes for these boards
2020-07-02 18:38:46 +10:00
Andy Piper
c707303336 AP_HAL_ChibiOS: hold buzzer ping low in bootloader for omnibusf4pro 2020-06-30 17:58:35 +10:00
Andy Piper
48e0da8444 AP_HAL_ChibiOS: pull buzzer pin low in Kakute F7 bootloader to prevent startup scream 2020-06-30 17:58:35 +10:00
Andrew Tridgell
20b2396646 HAL_ChibiOS: fixed bug in undef of pins
revert pin to initial state on undef
2020-06-30 14:28:30 +10:00
Randy Mackay
f9a866d09a AP_HAL_ChibiOS: luminousbee4 serial5 to mavlink2 2020-06-30 09:42:49 +10:00
Randy Mackay
3e0bb4110a AP_HAL_ChibiOS: fmuv4 serial5 to mavlink2 2020-06-30 09:42:49 +10:00
Randy Mackay
ced448b706 AP_HAL_ChibiOS: DrotekP3Pro serial5 to mavlink2 2020-06-30 09:42:49 +10:00
MATEKSYS
903b44da7d HAL_ChibiOS: Add DPS310 for MatekF405-WING,F765-WING and H743 2020-06-22 19:35:01 +10:00
Andrew Tridgell
7f429302ed HAL_ChibiOS: increase monitor thread stack to 768 bytes
attempt to fix issue #14582
2020-06-15 17:56:34 +10:00
Andrew Tridgell
6fa623d074 HAL_ChibiOS: added Holybro Pix32v5 2020-06-12 21:23:16 +10:00
MATEKSYS
14e01e21b7 HAL_ChibiOS: MatekH743: move baro to I2C2 bus 2020-06-11 17:31:59 +10:00
Andrew Tridgell
c1403a2e2b HAL_ChibiOS: fixed default CubeOrange pin for 2nd current sensor 2020-06-10 17:32:11 +10:00
Andrew Tridgell
6a1f43d5df HAL_ChibiOS: fixed build with our old compiler
gcc 4.9 doesn't like static_assert() in C code
2020-06-07 14:11:48 +10:00
duccan
cdcdd5ce27 AP_HAL_ChibiOS: Added support for Bitcraze Crazyflie 2.1
Rework after review:
- Kept old IMU and barometer definition of crazyflie 2.0 in hwdef
- Added comment regarding soft-reset command
- Added defaults.parm for crazyflie
2020-06-07 07:49:37 +10:00
duccan
0d96c7f7a5 AP_HAL_ChibiOS: Added support for Bitcraze Crazyflie 2.1 2020-06-07 07:49:37 +10:00
James Jacobsson
8a87322d93 AP_HAL_Chibios: Adjust MatekF765-Wing voltage and current scales
The new values matches the ones from here:
http://www.mateksys.com/?portfolio=f765-wing#tab-id-5

Also verified to be a lot more accurate in real life.
2020-06-04 10:06:22 +10:00
Phillip Kocmoud
0d5a0f392c hwdef.dat update x2.1-777 2020-06-04 09:51:27 +10:00
Andrew Tridgell
571fbf8f71 HAL_ChibiOS: update power VALID pins 2020-06-04 09:51:27 +10:00
Andrew Tridgell
863807c9fb HAL_ChibiOS: use more consistent naming for power VALID pins
this uses _VALID for an active high pin and _nVALID for an active low
pin. It uses _OC for active high overcurrent and _nOC for active low
overcurrent
2020-06-04 09:51:27 +10:00
Peter Barker
931c77fa77 AP_HAL_ChibiOS: correct clearing of UART drivers 2020-06-03 17:00:44 +10:00
CUAVcaijie
220e6999c7 HAL_ChibiOS:Adapt to CUAV Nora V1.2 hardware 2020-05-28 19:13:49 +10:00
pkocmoud
7809dc849c HAL_ChibiOS: Added support for mRo Pixracer Pro flight controller 2020-05-27 21:22:56 +10:00
Peter Barker
6d9e563ede AP_HAL_ChibiOS: override read(buffer,count) method to be more efficient 2020-05-26 15:59:11 +10:00
Henry Wurzburg
9c72525bbf AP_HAL_ChibiOS: Add unused LED output as GPIO in OmnibusF4Pro def 2020-05-26 10:51:32 +10:00
Peter Barker
8f54de4184 AP_HAL_ChibiOS: add discard_input method on UARTDriver 2020-05-26 09:20:32 +10:00
Andy Piper
33c1523905 AP_HAL_ChibiOS: add harmonics to DSP
add vector_mean_float() to DSP
allow fft_start() to use ObjectBuffer<float> for lock-free access
2020-05-24 07:43:34 +10:00
bugobliterator
7b9f0f3fd7 HAL_ChibiOS: use FIFO mode instead of Queue mode in FDCAN driver 2020-05-21 15:32:53 +10:00
Henry Wurzburg
12d5602926 AP_HAL_ChibiOS: Add ability to use UART3 and UART4 in bd alt config 4 2020-05-11 14:18:35 +10:00
Peter Barker
50523ed0fa AP_HAL_ChibiOS: remove pointless initialisations
These are never stack-allocated.

Only saves 16 bytes - but several lines
2020-05-10 18:03:36 +10:00
Andrew Tridgell
2200dfefdb HAL_ChibiOS: during setup() we expect delays
this may fix occasional internal errors on SPI during startup
2020-05-10 15:12:43 +10:00
Andrew Tridgell
259cb0aafd HAL_ChibiOS: removed EKF2 define, not needed any more 2020-05-10 15:09:54 +10:00
Andrew Tridgell
61d036acf3 HAL_ChibiOS: added build time check for right system clock
this helps prevent cases where we underclock a chip due to mistake in
headers or hwdef.dat
2020-05-10 15:09:28 +10:00
Andrew Tridgell
69676cd614 HAL_ChibiOS: support 24MHz f3 MCUs 2020-05-10 15:09:28 +10:00
Henry Wurzburg
3f735e7e54 HAL_ChibiOS: Make full UART4 available as bd config option 2020-05-10 08:00:57 +10:00
Henry Wurzburg
225a305cb9 AP_HAL_ChibiOS:Remove alt config since its not useful (no TX available) 2020-05-10 08:00:21 +10:00
Peter Barker
967f8bf726 AP_HAL_ChibiOS: correct description of where stdout goes 2020-05-05 07:57:57 +10:00
Andrew Tridgell
e126b6d346 HAL_ChibiOS: fixed race condition in storage write
we could mark a line as clean when it should be dirty if we lose a
race condition between storage thread and writer
2020-05-04 17:22:41 +10:00
Peter Barker
48da4e523c AP_HAL_ChibiOS: create and use INTERNAL_ERROR macro so we get line numbers 2020-04-30 13:21:36 +10:00
pkocmoud
defb7dc43f hwdef: add mRo M10070 Location One CAN GPS 2020-04-30 11:31:43 +10:00
Andrew Tridgell
3ec2ef787d HAL_ChibiOS: fixed build warning 2020-04-29 12:20:19 +10:00
Andrew Tridgell
ce68e0fbb5 HAL_ChibiOS: fixed bootloader build 2020-04-29 07:36:55 +10:00
Andrew Tridgell
0ef66659ce HAL_ChibiOS: log WDOG message once a second
this copes with delayed mounting of the microSD, making it much more
likely we log the critical data
2020-04-29 07:36:55 +10:00
Andrew Tridgell
18e88e0ea3 HAL_ChibiOS: implement stack overflow hook
this needs C bindings to allow call from low level RTOS thread
switching code
2020-04-29 07:36:55 +10:00
Andrew Tridgell
c61cecdbc7 HAL_ChibiOS: report thread name in watchdog 2020-04-29 07:36:55 +10:00
Andrew Tridgell
09477b2dfe HAL_ChibiOS: shorted thread names
changes names so threads can be distinguished by first 4 bytes
2020-04-29 07:36:55 +10:00
Andrew Tridgell
a5965d5a9e HAL_Chibios: removed unnecessary debug defines 2020-04-29 07:36:55 +10:00
Andrew Tridgell
2c26807736 HAL_ChibiOS: embed hwdef.dat in ROMFS for all boards 2020-04-29 07:36:55 +10:00
Andrew Tridgell
9350c78023 AP_HAL_ChibiOS: use GCS_SEND_TEXT() 2020-04-29 07:36:55 +10:00
Andrew Tridgell
6bacf021c8 HAL_ChibiOS: disable thread_info in AP_Periph and bootloader 2020-04-29 07:36:55 +10:00
Andrew Tridgell
d82cd1363b HAL_ChibiOS: fixed bootloader build 2020-04-29 07:36:55 +10:00
Andrew Tridgell
f0c9f4003e HAL_ChibiOS: implement thread_info() 2020-04-29 07:36:55 +10:00
Andrew Tridgell
ea71b72c87 HAL_ChibiOS: fixed issue with I2C4 on H743
when both I2C4 and SPI4 are active on a H743 I found that some BDMA
completion interrupts were lost, which resulted in SPI transfer
timeouts. Close inspection of the ChibiOS BDMA, I2Cv3 and SPIv3
drivers did not reveal any issues, but I found that the issue only
happened when the first 4 BDMA streams were used. This change splits
the 4 streams across the first and 2nd half of the BDMA controller,
and that fixes the problem.

This works as there are only 2 peripherals (I2C4 and SPI6) that want
to use BDMA with our current setup. If we ever wish to enable ADC3
(which also uses BDMA) we will need to revisit this issue
2020-04-28 17:42:15 +10:00
Andrew Tridgell
32cdfddf12 HAL_ChibiOS: convert all hwdef from UART_ORDER to SERIAL_ORDER
much easier to understand
2020-04-28 10:32:23 +10:00
Andrew Tridgell
a52070d226 HAL_ChibiOS: use SERIAL_ORDER instead of UART_ORDER
SERIAL_ORDER is much easier for developers to understand as it maps
directly to the SERIALn_ parameters
2020-04-28 10:32:23 +10:00
Andrew Tridgell
0994655f5b HAL_ChibiOS: fixed build warnings for bootloader builds 2020-04-28 10:32:23 +10:00
Andrew Tridgell
9557a5c22c HAL_ChibiOS: added more STM32CubeMX configs 2020-04-28 10:32:23 +10:00
Andrew Tridgell
a9df9fe0c0 HAL_ChibiOS: removed clock tree settings in most hwdef.dat
these are better set automatically in the headers. This simplifies the
task of doing a new port
2020-04-28 10:32:23 +10:00
Andrew Tridgell
a638196334 HAL_ChibiOS: skyviper-f412-rev1 uses a custom clock tree 2020-04-28 10:32:23 +10:00
Andrew Tridgell
e8b2b52bae HAL_ChibiOS: removed STM32_VDD from hwdef.dat
use default
2020-04-28 10:32:23 +10:00
Andrew Tridgell
d9efac2993 HAL_ChibiOS: only allow PLL override in clock selection part of header 2020-04-28 10:32:23 +10:00
Andrew Tridgell
fe765b8845 HAL_ChibiOS: switched CUAV_GPS to use same clocks as other F4 2020-04-28 10:32:23 +10:00
Andrew Tridgell
82c45f6cdb HAL_ChibiOS: default STM32_VDD to 3.3V 2020-04-28 10:32:23 +10:00
Andrew Tridgell
29f538dec9 HAL_ChibiOS: use common header for STM32 clock config
avoid the need for clock config lines in most hwdef.dat files
2020-04-28 10:32:23 +10:00
Andrew Tridgell
3d5475a1d9 HAL_ChibiOS: fixed skyviper-journey build 2020-04-28 10:32:23 +10:00
Andrew Tridgell
7320cd3174 HAL_ChibiOS: fixed assert in wait_pin() 2020-04-27 14:01:04 +10:00
Ivannikov Kirill
3ab1b29397 AP_HAL_ChibiOS: error if system clock not 1mhz on 16 CH_CFG_ST_RESOLUTION. prevent variable overflow
if CH_CFG_ST_FREQUENCY not match 1000000U on 16 bit CH_CFG_ST_RESOLUTION
we try to multiply now *= 1000000U/CH_CFG_ST_FREQUENCY; it may overflow 16 bit value.
2020-04-26 19:58:54 +10:00
Andrew Tridgell
d9e2a644ea HAL_ChibiOS: fixed Durandal buzzer in bootloader
need to pull low to avoid buzzer running in bootloader
2020-04-24 19:46:22 +10:00
bugobliterator
b94f089984 HAL_ChibiOS: improve throughput of slcan router 2020-04-24 19:39:18 +10:00
Andrew Tridgell
43ac58c63b HAL_ChibiOS: added STM32CubeMX configs for H7 processor crystal varients
useful for checking clock config changes
2020-04-24 16:55:03 +10:00
Andrew Tridgell
db642717be HAL_ChibiOS: fixed clock for FDCAN to be below 80MHz
we were running at 100MHz, which is out of spec
2020-04-24 16:55:03 +10:00
Andrew Tridgell
2c68ce1986 HAL_ChibiOS: fixed clock source for FDCAN
use selected source and add 80MHz limit, as per manual and latest STM32CubeMX tool
2020-04-24 16:55:03 +10:00
Andrew Tridgell
4ec1717361 HAL_ChibiOS: enable IMU temp control on CUAV-X7 2020-04-23 09:05:52 +10:00
Andrew Tridgell
56b0dddb7c HAL_ChibiOS: set IMU temp on CUAV-X7 2020-04-23 07:28:13 +10:00
Andrew Tridgell
5892e6421e HAL_ChibiOS: enable DRDY on ADIS16470 on CUAV-X7 2020-04-23 07:28:13 +10:00
Andrew Tridgell
ffe773ff6f HAL_ChibiOS: use DRDY pin for ADIS16470 on mRoNexus 2020-04-23 07:28:13 +10:00