Andrew Tridgell
78ca572634
HAL_ChibiOS: use more USB buffers on higher end F7 chips
2021-09-10 14:08:46 +09:00
Andrew Tridgell
a48f0ef90d
HAL_ChibiOS: reduce the impact of UART DMA contention
...
this changes the heuristics for UART TX DMA allocation to greatly
reduce the chances of DMA contention causing long delays on other
devices
This fixes issues with FETTec driver output and gimbal status messages
as reported by Amilcar and OlliW. The problem is particularly bad when
no GPS is connected to GPS1 on fmuv3 and derived boards (such as
CubeBlack)
key changes:
- remember the contention_counter across begin() calls, as the GPS
calls begin with new baudrates regularly
- added a is_shared() API to Shared_DMA, allowing the UART driver to
avoid TX DMA on shared streams when at low baudrates.
2021-09-10 14:08:46 +09:00
Andrew Tridgell
aa8ebc403e
HAL_ChibiOS: fixed GPIO lines for QioTekZealotF427
2021-09-10 14:08:46 +09:00
mateksys
c5ed3c391a
Tools: added MatekF765-SE to autobuild
2021-08-28 17:10:29 +09:00
mateksys
96b4cee01d
AP_HAL_ChibiOS: add MatekF765-SE hwdef as a variant of MatekF765-Wing
2021-08-28 17:10:29 +09:00
QioTek
ce7d5341eb
AP_HAL_ChibiOS: add Icm42605 as a backup to replace icm20649
...
AP_HAL_ChibiOS: add Icm42605 as a backup to replace icm20649
2021-08-28 17:10:29 +09:00
Hwurzburg
3cf3ed8fff
AP_HAL_Chibios: Change RC in to RCINT to free a DMA channel
2021-08-28 17:10:29 +09:00
Andrew Tridgell
72d115bec4
HAL_ChibiOS: allow FlywooF745 to build again
2021-08-28 17:10:29 +09:00
Andy Piper
7698a006ad
AP_HAL_ChibiOS: add FlywooF745Nano board definition
2021-08-28 17:10:29 +09:00
Andrew Tridgell
659c9fb10d
HAL_ChibiOS: switch to minimum scheduling delta of 10us
...
this avoids an issue with the ChibiOS 20.3 virtual timer
implementation that can result in a scheduling slip equal to the
system timer period.
Andy has been suggesting this change for a while. I resisted it as I
thought it would impact on soft-serial parsing, but it turns out it
doesn't.
Fixes issue #18383
2021-08-28 17:10:29 +09:00
Andy Piper
eebcfb78c1
AP_HAL_ChibiOS: use hardware serial inversion pins on F4 boards that support it
...
change mamba F405 to active high as per betaflight
2021-08-28 17:10:29 +09:00
Randy Mackay
b1e5e21d6d
AP_HAL_ChibiOS: swap Pixhawk4 blue and red LEDs
2021-08-28 17:10:29 +09:00
Andy Piper
761fc57a18
AP_HAL_ChibiOS: output initializing from PWM banner when not available
2021-08-14 11:05:38 +09:00
Leonard Hall
2436330da1
AP_Hal_ChibiOS: Skyviper Parameters PSC_VELXY_FLTE
2021-08-14 11:05:38 +09:00
Andy Piper
91d0a44524
AP_HAL_ChibiOS: probe for compasses on FlywooF745
2021-08-14 11:05:37 +09:00
Andy Piper
a9187a50cf
AP_HAL_ChibiOS: only control widest pulse for dshot and oneshot
2021-07-23 10:19:48 +09:00
Andy Piper
35d34ee9ae
AP_HAL_ChibiOS: re-enable LEDs on MatekF405-bdshot
2021-07-23 10:19:47 +09:00
Andrew Tridgell
4218452475
HAL_ChibiOS: raise DMA contention threshold for H7
2021-07-23 10:19:47 +09:00
Andrew Tridgell
91afec69dc
HAL_ChibiOS: implement NOFIFO option for uarts
2021-07-23 10:19:47 +09:00
Andrew Tridgell
c9b9a6a616
HAL_ChibiOS: run storage writes at 1kHz not 100Hz
...
The 100Hz update rate means there is a significant chance of an arming
failure after mission upload if you try to arm shortly after the
update.
Each mission item is 15 bytes, so with a 1200 item mission we need to
write 18000 bytes to storage. At 100Hz, with 8 bytes per storage line,
that takes over 22 seconds.
2021-07-23 10:19:46 +09:00
Andrew Tridgell
e11c94602b
HAL_ChibiOS: define HAL_HAVE_HARDWARE_DOUBLE on F765, F777 and H7
2021-07-23 10:19:46 +09:00
Andrew Tridgell
712fbd08dc
HAL_ChibiOS: use SRAM1 as first ram segment on H7
...
this is needed to give the linker more than 128k for static variables
with double precision maths.
2021-07-23 10:19:45 +09:00
Andrew Tridgell
3a683be219
HAL_ChibiOS: always send zero DShot when disarmed
...
this prevents a misconfigured system (for example SERVOn_REVERSED=1)
from running a motor while disarmed.
See https://discuss.ardupilot.org/t/plane-4-1-0-beta/72434/34?u=tridge
2021-07-23 10:19:45 +09:00
Siddharth Purohit
882b01bae3
AP_HAL_ChibiOS: Use HAL_CANMANAGER_ENABLED instead of HAL_ENABLE_LIBUAVCAN_DRIVERS
2021-06-24 09:02:42 +10:00
bugobliterator
7e8f11b749
AP_HAL_ChibiOS: allow embedded bootloader to be excluded
...
Co-authored-by: Peter Barker <pb-gh@barker.dropbear.id.au>
2021-06-24 08:36:30 +10:00
Andy Piper
9e99f724e5
AP_HAL_ChibiOS: add 1Hz update_channel_masks()
...
Send dshot commands in update function
2021-06-22 09:55:27 +10:00
Andrew Tridgell
ed93caadd5
HAL_ChibiOS: fixed build of VRUBrain-v51
...
overflowing flash
2021-06-21 16:48:10 -07:00
Andy Piper
3386cbb0df
AP_HAL_ChibiOS: add OREO support to CubeSolo.
...
add back RunCam and Spektrum support to MatekF405-Wing
remove gripper support from MatekF405-Wing
2021-06-16 20:25:58 +10:00
Samuel Tabor
3fc58de7ce
AP_HAL_ChibiOS: Restore soaring on F405-Wing board.
2021-06-16 09:15:03 +10:00
Andy Piper
d36b4bfa3f
AP_HAL_ChibiOS: make sure all MatekF405 bi-dir outputs get a DMA channel
...
only allow (b)dshot on M1-4 to get full DMA on USART3 and UART4
2021-06-15 09:49:02 +10:00
Peter Barker
f780a5c358
AP_HAL_ChibiOS: fix infinite loop for large SPI transfers
...
len is 32 bits; i may integer-wrap back to zero at 65535+1
2021-06-14 09:13:49 +10:00
Dr.-Ing. Amilcar do Carmo Lucas
d363cbadcc
AP_HAL_ChibiOS: Disable un-needed hardware drivers in SkyViper builds
...
these boards have integrated ESCs with no telemetry
2021-06-09 21:42:51 +10:00
Dr.-Ing. Amilcar do Carmo Lucas
8593672f4c
AP_HAL_ChibiOS: fix compilation when HAL_WITH_ESC_TELEM == 0
2021-06-09 21:42:51 +10:00
Tom Pittenger
7a004656a2
AP_HAL_ChibiOS: use HAL_ENABLE_LIBUAVCAN_DRIVERS instead of HAL_MAX_CAN_PROTOCOL_DRIVERS
2021-06-09 18:36:18 +10:00
Tom Pittenger
1feec460c4
AP_HAL_ChibiOS: enable BattMon MPPT PacketDigital to CubeOrange-periph
2021-06-09 18:36:18 +10:00
Tom Pittenger
f764bd6547
AP_HAL_ChibiOS: disable EventSource only when CH_CFG_USE_EVENTS is false
...
(cherry picked from commit 6e7542a70ca2343ab8d18470deaf5fc2d27390af) from bugobliterator
2021-06-09 18:36:18 +10:00
Andrew Tridgell
f09abc705b
HAL_ChibiOS: bring us to 18k free for MatekF405-Wing plane build
2021-06-09 18:07:00 +10:00
Peter Barker
09e82e52e1
AP_HAL_ChibiOS: disable AP_EFI on MatekF405-Wing and omnibusf4pro
2021-06-08 14:08:34 +10:00
Peter Barker
3ba57fed89
AP_HAL_ChibiOS: add support for AP_Logger into AP_Periph
2021-06-08 09:57:55 +10:00
Andrew Tridgell
67fea9f2f8
HAL_ChibiOS: fixed DMA disable on contention
...
this fixes a problem with the automatic DMA disable on DMA contention
in UARTs. This fixes issue #14581
the problem was that while tx_dma_enabled was correctly set to false,
it would keep looping inside write_pending_bytes_DMA() if the data
arrived in the write buffer at a faster rate than it could be sent
out, which did happen with a mavlink stream rate of 4Hz. This means it
kept using DMA even with tx_dma_enabled set to false. The result was
that the automatic flow control code never got a chance to run and we
didn't switch back to non-DMA for these low baudrate contended UARTs
2021-06-05 19:03:03 +10:00
Andrew Tridgell
3128d71aac
HAL_ChibiOS: display uart even when not initialised
...
don't rely on thread allocation for uart info display
2021-06-05 18:52:33 +10:00
Andrew Tridgell
c34d8e80e9
HAL_ChibiOS: fixed serial info indexing for EMPTY uarts
2021-06-05 18:52:33 +10:00
Andrew Tridgell
6fab8feeae
HAL_ChibiOS: implement uart_info per-uart
...
this allows for some UARTs to be of EMPTY type
2021-06-05 18:52:33 +10:00
Andrew Tridgell
135a4d2c83
HAL_ChibiOS: fixed order and labelling of @SYS/uarts.txt
2021-06-05 18:52:33 +10:00
Andrew Tridgell
a895bc1846
HAL_ChibiOS: reduce flash on VRBranin-v51
2021-06-05 13:05:30 +10:00
honglang
847ce3b311
AP_HAL_ChibiOS: CUAV X7/Nora: use icm42688 instead of bmi088
2021-06-03 13:57:27 +10:00
CUAVcaijie
0ff38e1379
HAL_ChibiOS: CUAV ICM20649 on SPI6 bus replaced by ICM20689
...
alternative IMUs for Nora and X7
2021-06-02 10:49:55 +10:00
Andrew Tridgell
8701932670
HAL_ChibiOS: return zeros in dma.txt on first fetch
2021-06-01 11:36:07 +09:00
Andrew Tridgell
5529ba36e2
HAL_ChibiOS: added HolybroGPS AP_Periph port
2021-06-01 09:19:51 +10:00
Andrew Tridgell
23c0f257b6
HAL_ChibiOS: default off serial protocols in AP_Periph
...
this allows for a GPS on high numbered ports
2021-06-01 09:19:51 +10:00