Commit Graph

1779 Commits

Author SHA1 Message Date
Andrew Tridgell 926d4ad71c HAL_ChibiOS: implement NOFIFO option for uarts 2021-07-15 11:31:55 +10:00
Andy Piper 60b0df0a25 AP_HAL_ChibiOS: only control widest pulse for dshot and oneshot 2021-07-14 17:50:06 +10:00
Andrew Tridgell 4f32fa537a HAL_ChibiOS: define HAL_HAVE_HARDWARE_DOUBLE on F765, F777 and H7 2021-07-10 07:20:41 +10:00
Andrew Tridgell 6c712c9001 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-10 07:20:41 +10:00
Andrew Tridgell 4ed0b03f35 HAL_ChibiOS: implement set_RTS/CTS_pin methods 2021-07-09 13:27:57 +10:00
mateksys 40200654af AP_HAL_ChibiOS: add MatekF765-SE hwdef as a variant of MatekF765-Wing 2021-07-08 13:01:44 +10:00
Andrew Tridgell dd156d8da6 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-07 17:32:21 +10:00
Andy Piper e9f0c59e61 AP_HAL_ChibiOS: re-enable LEDs on MatekF405-bdshot 2021-07-06 10:10:04 +10:00
Andrew Tridgell 7ac895db77 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-03 11:37:28 +10:00
Siddharth Purohit 9b2359b34c AP_HAL_ChibiOS: allow option to enable ChibiOS features in bootloader 2021-07-02 08:50:16 +10:00
Siddharth Purohit 1a1dd76a4c AP_HAL_ChibiOS: add initial herepro hwdef 2021-07-02 08:50:16 +10:00
Andrew Tridgell b4b02b4ffc HAL_ChibiOS: use nargs='+' for chibios_hwdef.py 2021-07-01 09:33:16 +10:00
willpiper ce1ee6334f AP_HAL_ChibiOS: addressed reviewed comments 2021-07-01 09:33:16 +10:00
willpiper fb4a4e609a AP_HAL_ChibiOS: added --extra-hwdef option 2021-07-01 09:33:16 +10:00
Siddharth Purohit 245f9d21b3 AP_HAL_ChibiOS: update clock config for FDCAN and External Flash 2021-06-30 19:34:36 +10:00
Siddharth Purohit 28dbbc2bc4 AP_HAL_ChibiOS: do not even initialise empty qspi driver 2021-06-30 19:33:17 +10:00
Siddharth Purohit d3e081c100 AP_HAL_ChibiOS: add support for entering XIP mode 2021-06-30 19:33:17 +10:00
Siddharth Purohit 263fbbbdb0 AP_HAL_ChibiOS: add echo safe debug flag bouncebuffer 2021-06-30 19:33:17 +10:00
Siddharth Purohit 3b3cc0b194 AP_FlashIface: add initial files for AP_FlashIface library 2021-06-30 19:33:17 +10:00
Siddharth Purohit c962292bae AP_HAL_ChibiOS: add support for H757I Evaluation board 2021-06-30 19:33:17 +10:00
Siddharth Purohit abc26d1993 AP_HAL_ChibiOS: add QSPI Device Driver in HAL 2021-06-30 19:33:17 +10:00
Siddharth Purohit 4cb48da984 modules: update ChibiOS 2021-06-30 19:33:17 +10:00
Siddharth Purohit 0e4fbe7c46 AP_HAL_ChibiOS: allow using internal compasses onboard 2021-06-30 17:06:02 +10: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
Andrew Tridgell ac1e03e16a HAL_ChibiOS: move heater gains on CubeOrange to hwdef.dat
this makes it easier for users using apjtool to override params
2021-06-01 08:07:49 +10:00
Andrew Tridgell 244d896bfb HAL_ChibiOS: enable heater on Pix32v5 2021-06-01 08:07:49 +10:00
bugobliterator ea1795d6fe AP_HAL_ChibiOS: ensure ToneAlarm is not disabled when UAVCAN is available 2021-05-31 07:34:02 +10:00
Michael Oborne 126456742a Hwdef: add Joey 2021-05-27 14:19:55 +10:00
Andrew Tridgell 91dce554d1 HAL_ChibiOS: removed unnecessary USB product IDs from boards 2021-05-27 09:30:30 +09:00
Andrew Tridgell de3a3f7edf HAL_ChibiOS: fixed case of Pix32v5 USB product string 2021-05-27 09:30:30 +09:00
Siddharth Purohit ad9a8c8bd9 AP_HAL_ChibiOS: record error states in CANFDIface and CANIface 2021-05-26 18:25:01 +10:00
Michel Pastor b083848ae7 AP_HAL_ChibiOS: fix comments 2021-05-26 17:59:04 +10:00
Michel Pastor a148849ec3 AP_HAL_ChibiOS: RCOutput_serial: fix comment for set_reversible_mask() 2021-05-26 17:59:04 +10:00
Andrew Tridgell fced5271af HAL_ChibiOS: expand pin map of G474 to cover 64 pin parts 2021-05-25 09:35:25 +10:00
Andy Piper a7a9fa93f0 AP_HAL_ChibiOS: correct enabled mask for motor channel output 2021-05-24 07:57:51 +09:00
Dr.-Ing. Amilcar do Carmo Lucas fc7e242bae AP_HAL_ChibiOS: Fix typo (NFC) 2021-05-21 09:43:10 +10:00
Peter Barker 79809b60aa AP_HAL_ChibiOS: rename f103-periph/hwdef.dat to .inc (f303 too) 2021-05-20 17:23:17 +10:00
Siddharth Purohit 5bcc713985 AP_HAL_ChibiOS: add omnibusf4pro config with one compass and gps 2021-05-19 18:04:20 +10:00
Peter Barker 31ef6db937 AP_HAL_ChibiOS: remove redundant HAL_LOGGING_ENABLED from AP_Periph hwdefs 2021-05-19 17:38:47 +10:00
Andrew Tridgell ebe858f762 HAL_ChibiOS: auto-set HAL_LOGGING_ENABLED for AP_Periph builds 2021-05-19 17:38:47 +10:00
Peter Barker dbf5357592 AP_HAL_ChibiOS: base use of InternalError on build type not HAL_LOGGING_ENABLED
Really not sure why we were using HAL_LOGGING_ENABLED here
2021-05-19 17:38:47 +10:00
Peter Barker 7d8c5757d6 AP_HAL_ChibiOS: move from HAL_NO_LOGGING to HAL_LOGGING_ENABLED 2021-05-19 17:38:47 +10:00
Andy Piper 6a21446bac AP_HAL_ChibiOS: correct KakuteF4Mini board id 2021-05-18 10:02:36 +10:00
Andy Piper 25be0cf4b4 AP_HAL_ChibiOS: pull the right pin for KakuteF4 buzzer 2021-05-18 10:02:36 +10:00
vierfuffzig 393ac386cc AP_HAL_ChibiOS: add revo-mini-i2c alt configs 2021-05-18 09:53:38 +10:00
Andy Piper f8a59a4a72 AP_HAL_ChibiOS: set inbound bitrate correctly for bi-directional dshot1200 2021-05-14 07:23:59 +10:00
Andy Piper b33b07e43f AP_HAL_ChibiOS: fixes for KakuteF4Mini 2021-05-12 17:26:35 +10:00
Andy Piper 387812bb01 AP_HAL_ChibiOS: avoid startup scream on KakuteF4 and variants 2021-05-12 17:26:35 +10:00
Andy Piper f0ff4a2cd4 AP_HAL_ChibiOS: hwdef for KakuteF4Mini 2021-05-12 17:26:35 +10:00
Andy Piper 6447bd1cdd AP_HAL_ChibiOS: use AP_ESC_Telem to record erpm data and error rate
don't output RPM data if bi-dir dshot is not enabled
2021-05-12 17:01:11 +10:00
Andrew Tridgell e1a5d73504 HAL_ChibiOS: fixed DTCM comment for F732 2021-05-09 06:44:19 +10:00
Andrew Tridgell b7fffe35f9 HAL_ChibiOS: added FreeflyRTK GPS build
a F732 based GPS peripheral
2021-05-09 06:44:19 +10:00
Andrew Tridgell 4d661911e5 HAL_ChibiOS: allow adjustment of F7 I2C timing
needed for F732
2021-05-09 06:44:19 +10:00
Andrew Tridgell 6b9e4161cb HAL_ChibiOS: removed UDID_START from all MCU defs
use UID_BASE from ChibiOS headers
2021-05-09 06:44:19 +10:00
Andrew Tridgell 36d5c98e96 HAL_ChibiOS: default UDID_START to UID_BASE 2021-05-09 06:44:19 +10:00
Andrew Tridgell 2dc4c50953 HAL_ChibiOS: fixed default OTP address and size 2021-05-09 06:44:19 +10:00
Andrew Tridgell 22f7218acf HAL_ChibiOS: support 512k F7 parts for flash 2021-05-09 06:44:19 +10:00
Andrew Tridgell 03cae60471 HAL_ChibiOS: added STM32F732 support 2021-05-09 06:44:19 +10:00
Andrew Tridgell f1de0c7fe2 HAL_ChibiOS: added F732 16MHz CubeMX config 2021-05-09 06:44:19 +10:00
Andy Piper f6b9479542 AP_HAL_ChibiOS: add accessor for UART DMA status 2021-05-05 17:50:42 +10:00
Andy Piper dbd9b3a9ae AP_HAL_ChibiOS: ESC telemetry is orthogonal to RPM telemetry 2021-05-05 17:41:24 +10:00
Andy Piper 384ecd4a5b AP_HAL_ChibiOS: check command queue is empty before arming 2021-05-05 17:41:24 +10:00
Andy Piper 66fadf53a1 AP_HAL_ChibiOS: remove dshot calibration step 2021-05-05 17:41:24 +10:00
Andy Piper f3f3056dba AP_HAL_ChibiOS: add support for dshot commands to rcout
add support for dshot beepcodes through tonealarm
add support for dshot reversal and command queue
add support for dshot commands to all channels
correctly manage channel enablement in PWM groups
Correctly send dshot commands when using bi-dir dshot
allow reversible settings to be changed
ChibiOS: allow more than one type of ESC for dshot commands
Only execute reverse/reversible commands on BLHeli
add support for checking active ESCS
mark ESCs active when bdshot telemetry is returned
allow dshot alarm to be disabled
allow priroitized dshot commands
2021-05-05 17:41:24 +10:00
Andrew Tridgell 8764d69e2c HAL_ChibiOS: default SDMMC clock to 12.5MHz max on H7
this makes microsd considerably more reliable
2021-05-02 13:04:42 +10:00
Andrew Tridgell f9866dc27e HAL_ChibiOS: fixed LED_SAFETY attached to FMU with recent DShot updates 2021-04-30 17:26:33 +10:00
QioTek ca6102ed28 f103Qiotek_Periph
f103Qiotek_Periph
2021-04-24 07:48:40 +10:00
QioTek 1de3135d14 HAL_ChibiOS: added f103-QiotekPeriph hwdef (#1)
HAL_ChibiOS: added f103-QiotekPeriph
2021-04-24 07:48:40 +10:00
Andy Piper 42ebc13e6c Revert "AP_HAL_ChibiOS: support 6 bi-directional dshot channels on the MatekH743"
This reverts commit f9d166edf6.
2021-04-22 18:39:06 +10:00
Andrew Tridgell 6764f039ca HAL_ChibiOS: added support for the new H7 luminousbee version 5 2021-04-21 20:41:34 +10:00
Andy Piper f9d166edf6 AP_HAL_ChibiOS: support 6 bi-directional dshot channels on the MatekH743 2021-04-21 17:18:53 +10:00
Andy Piper 558631918c AP_HAL_ChibiOS: add %age of total to thread statistics
don't display meaningless thread info
2021-04-21 17:14:11 +10:00
Andrew Tridgell 961e538cc0 HAL_ChibiOS: reduced flash usage on MatekF405
overflowing by 1k
2021-04-21 07:12:55 +10:00
Andy Piper 4bb4e2fb22 AP_HAL_ChibiOS: adjust GPIO settings for serial passthru 2021-04-20 10:35:22 +10:00