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
Andrew Tridgell
4118a3eb03
HAL_ChibiOS: check bus owner on all SPI transfers
2021-04-16 10:02:02 +10:00
Andrew Tridgell
9990404e64
HAL_ChibiOS: fixed G4 analog input build
...
use right resolution in ADC peripheral for ADCv3
2021-04-14 13:11:58 +10:00
Andrew Tridgell
eca8cf3414
HAL_ChibiOS: save flash on boards that are critically low
...
move to single OSD font on some boards
this saves about 12k on these boards. They were also extremely close
to overflowing flash, under 2k on some
Now that we support having an OSD font on the microSD card (where
available) we can reduce built in fonts without a large functionality
impact
This also disables some less used features on these boards:
- generator support
- object avoidance path planning
- precision landing
This will give us some breathing room on these boards
2021-04-13 09:58:59 +10:00
Andrew Tridgell
47a5d78397
HAL_ChibiOS: disable DMA on high contention UARTs
...
switch to interrupt driven when in high contention
2021-04-08 06:53:48 +10:00
anbello
77998fb5ba
revo-mini bdshot
2021-04-07 17:44:29 +10:00
anbello
dcb90c7bdb
revo-mini ext i2c
2021-04-07 17:26:56 +10:00
Andy Piper
be39e1f297
AP_HAL_ChibiOS: correct current scale for BeastH7 and BeastF7
2021-04-07 17:25:19 +10:00
Andy Piper
aa0ec0f091
AP_HAL_ChibiOS: optimize BeastH7 compilation
2021-04-07 17:25:19 +10:00
Iampete1
ec90ab13f4
AP_HAL_ChibiOS: RCOutput: print DMA alocation errors
2021-04-07 17:24:25 +10:00
Iampete1
15509f314c
AP_HAL_ChibiOS: RCOuput: LED setup re-work
2021-04-07 17:24:25 +10:00
Andrew Tridgell
61c829d624
HAL_ChibiOS: only use SRAM4 for DMA for now
...
we can enable others when we have an allocation interface that
specifies the peripheral type
2021-04-07 17:10:45 +10:00
Iampete1
2377d33417
AP_HAL_ChibiOS: H7 set SRAM4 to no cache and allow DMA
2021-04-07 17:10:45 +10:00
Andrew Tridgell
4cddb12508
HAL_ChibiOS: fixed DMA sent calculation on UART DMA timeout
2021-04-07 07:34:45 +10:00
Andy Piper
b3dbc21fa7
AP_HAL_ChibiOS: KakuteF7 bdshot configuration, tested by yaapu
2021-04-06 11:33:53 +10:00
Andy Piper
721850d00a
AP_HAL_ChibiOS: fix dshot150.
2021-04-06 10:24:04 +10:00
Andy Piper
f6b1e15b0e
AP_HAL_ChibiOS: optimize bdshot ISRs
2021-04-06 10:24:04 +10:00
Andy Piper
cb3b37d181
AP_HAL_ChibiOS: ensure that non-dshot modes get regular 1Khz updates
2021-04-06 10:24:04 +10:00
Andy Piper
ea3291520c
AP_HAL_ChibiOS: add fast cycle calibration step
2021-04-06 10:24:04 +10:00
Andy Piper
74d4af9ac9
AP_HAL_ChibiOS: reset bdshot IC correctly
...
don't allow dshot rates below 800Hz.
set pin speed to MID1 to avoid glitching
don't run receive pulses on a timer
2021-04-06 10:24:04 +10:00
Andy Piper
477ff72214
AP_HAL_ChibiOS: allow dshot rate to be set so as to both regularize the output as well as
...
allow faster rates synchronized to the loop rate
synchronize 1Khz and use Betaflight definition for prescaler
adjust dshot bitrates
don't allocate IC DMA if already allocated
cancel DMA pulses correctly
try really hard to align pulses with push() by making each dshot pulse event driven
2021-04-06 10:24:04 +10:00
Andrew Tridgell
45477f6063
HAL_ChibiOS: fixed default MSP port for f405-MatekGPS
2021-04-05 11:02:32 +10:00
Andrew Tridgell
ca948171fe
HAL_ChibiOS: fixed ADC error on revXY STM32H7 boards
...
with the new ChibiOS revision we were configuring for newer revisions
of the H7, which meant that we changed the ADC config. This broke ADC
readings on revX and revY H7 MCUs.
This PR fixes it in two ways:
1) change ChibiOS config to assume XY config chips
2) use 16 bit ADC for H7, which means the chip rev doesn't matter,
and also gives us 16x the resolution for ADC readinga, so we can
read smaller voltage and current values
2021-04-05 11:01:03 +10:00
willpiper
94bdca7f6f
AP_HAL_ChibiOS: tidy up beastF7 DMA channels
2021-04-04 16:51:19 +10:00
Andrew Tridgell
f0d6b79e8a
HAL_ChibiOS: fixed skyviper builds with BMM150
2021-03-30 13:31:50 +09:00
Peter Barker
cfacb5d34d
AP_HAL_ChibiOS: split out a calculate_thread_priority method
2021-03-30 10:49:06 +11:00
Iampete1
7c96522e44
AP_HAL_ChibiOS: add semaphore to AnalogIn::channel to make it thread safe
2021-03-30 10:44:43 +11:00
Andrew Tridgell
07313ae71d
HAL_ChibiOS: fixed 2nd CAN inferface on F4/F7
...
CAN1_TX_IRQn is an enum not a defined. This was broken by the recent
change to support different CAN ordering
2021-03-29 20:14:29 +11:00
Andrew Tridgell
88e277420f
AP_HAL_ChibiOS: removed assert calls
...
these waste flash space and do not do us any good
2021-03-25 14:03:40 +11:00
Andrew Tridgell
2d4dfe8a2a
HAL_ChibiOS: fixed (unused) FF_FS_TIMEOUT
...
this change was harmless as we don't define FF_FS_REENTRANT
2021-03-23 12:01:20 +11:00
Andrew Tridgell
ffb2876f58
HAL_ChibiOS: disable unused ChibiOS features
2021-03-23 12:01:20 +11:00
Andrew Tridgell
744a2fe535
HAL_ChibiOS: use uint32_t for bit timing in passthru
...
we should not use systime_t as it may be 16 bit
2021-03-23 12:01:20 +11:00
Andrew Tridgell
c3d16cf2e2
HAL_ChibiOS: use defines for G4 messageram
...
review fix
2021-03-23 12:01:20 +11:00
Andrew Tridgell
b4e4d48e52
HAL_ChibiOS: switch OMNIBUSF7V2 timer for RCIN
...
this avoids a conflict with shared interrupt on TIM1
2021-03-23 12:01:20 +11:00
Andrew Tridgell
ff31e10d9e
HAL_ChibiOS: ensure that RCIN DMA channel is not shared
...
RCIN DMA cannot be shared as it runs all the time
2021-03-23 12:01:20 +11:00
Andrew Tridgell
2842730868
HAL_ChibiOS: fixed F3 CAN build
2021-03-23 12:01:20 +11:00
Andrew Tridgell
2fc7ea1a8b
HAL_ChibiOS: added G4-ESC hwdef
2021-03-23 12:01:20 +11:00
Andrew Tridgell
353eca79b6
HAL_ChibiOS: fixed 32/64 micros bug in CAN select()
2021-03-23 12:01:20 +11:00
Andrew Tridgell
bac9b27a3f
HAL_ChibiOS: enable analogin on G4
2021-03-23 12:01:20 +11:00
Andrew Tridgell
ac9e6ba86d
HAL_ChibiOS: fix label for CCM on G4
2021-03-23 12:01:20 +11:00
Andrew Tridgell
7496b8bff5
HAL_ChibiOS: fixed DMAR register offset
...
use offsetof() instead of a magic value
2021-03-23 12:01:20 +11:00
Andrew Tridgell
4f10565f82
HAL_ChibiOS: fixed CANFD build on H7
2021-03-23 12:01:20 +11:00
Andrew Tridgell
f2ac61f6ba
HAL_ChibiOS: enable DShot on G4
2021-03-23 12:01:20 +11:00
Andrew Tridgell
f57b1b9c4b
HAL_ChibiOS: support logical/physical CAN bus mapping
...
allow for first CAN interface to be CAN2 or CAN3
2021-03-23 12:01:20 +11:00
Andrew Tridgell
2f7ff778be
HAL_ChibiOS: fixed bug in DMA resolver
...
idsets can be empty for a peripheral
2021-03-23 12:01:20 +11:00
Andrew Tridgell
439a944801
HAL_ChibiOS: added support for STM32G474 MCU
2021-03-23 12:01:20 +11:00
Andy Piper
e1d71486e4
AP_HAL_ChibiOS: build fixes for ChibiOS 20.3.x
2021-03-23 12:01:20 +11:00
Andrew Tridgell
5b59445471
AP_HAL_ChibiOS: fixes for build with 20.3.x ChibiOS
2021-03-23 12:01:20 +11:00
QioTek
fe30612bb0
AP_HAL_ChibiOS: release ICM20649 reserve sensor
...
BMI055 & BMI088 out of stock, release ICM20649 reserve sensor
2021-03-22 19:05:03 +11:00
Andrew Tridgell
bbd32844d1
HAL_ChibiOS: switch more boards to 32k FRAM
...
this enables the parameter backup/restore on those boards, as well as
more waypoints
This is in response to a report that CUAVv5 boards can suffer from the
parameter reset issue
2021-03-21 11:59:12 +11:00
Andy Piper
bb270014e7
AP_HAL_ChibiOS: make sure LEDs get a DMA channel on MatekH743-bdshot
2021-03-17 18:28:01 +11:00
Andy Piper
968d05a637
AP_HAL_ChibiOS: allow further LED channels to be allocated at the same length
2021-03-17 18:24:11 +11:00
Andrew Tridgell
8a8db85b9c
HAL_ChibiOS: fixed build of f103-trigger fw
2021-03-16 18:28:58 +11:00
Lava Chemist
4a52f945db
AP_HAL_ChibiOS: Add FlywooF745
2021-03-16 11:27:23 +11:00
Andy Piper
d6575fb6ad
AP_HAL_ChibiOS: bdshot configs for CubeYellow and mRoControlZeroH7
2021-03-03 18:02:26 +11:00
Andrew Tridgell
4fbdb59398
HAL_ChibiOS: prevent sharing the same DMA stream on TIMn_UP channels
...
this avoids an issue with DShot where we run the same DMA stream on
two timers at once
2021-03-02 11:58:38 +11:00
Andy Piper
6cb263056d
AP_HAL_ChibiOS: build fix for iomcu
2021-03-02 11:58:38 +11:00
Andy Piper
d0e4d510cf
AP_HAL_ChibiOS: order PWM timers by DMA UP stream id to prevent deadlocks in dshot
2021-03-02 11:58:38 +11:00
Andrew Tridgell
14791c335b
HAL_ChibiOS: fixed build of f3 boards without PWM out
2021-02-24 18:25:02 +11:00
Andrew Tridgell
243cf2199d
HAL_ChibiOS: disable shared DMA on IOMCU
...
this saves about 600 bytes of ram
2021-02-24 18:21:08 +11:00
Andrew Tridgell
c23f61b79a
HAL_ChibiOS: set internal error on panic
2021-02-24 18:18:37 +11:00
Andrew Tridgell
eec05c1f48
HAL_ChibiOS: fixed a race and null ptr deref in dshot
...
if a dshot is cancelled then the waiter can be nullptr
2021-02-24 15:39:10 +11:00
Andy Piper
b102391163
AP_HAL_ChibiOS: don't send rcout events without rcout thread
2021-02-24 08:55:12 +11:00
Mirko Denecke
edc2b0c94e
AP_HAL_ChibiOS: fix copy and paste typo
2021-02-23 08:15:50 +09:00
Andrew Tridgell
7af20e9ea3
HAL_ChibiOS: increase H7 serial buffer sizes
...
this takes better advantage of the new UART code. Log download over
USB gets to 730 kbyte/s. For comparison, with the 4.0 code on the same
H7 we get about 300 kbyte/s
2021-02-20 20:49:45 +11:00
Andrew Tridgell
3b88a3273b
HAL_ChibiOS: adjust up uart tx stack size
...
lowest was showing 80 bytes free, which is too close to the 64 byte
level where we trigger an internal error
2021-02-20 14:37:11 +11:00
Andrew Tridgell
5e0f175223
HAL_ChibiOS: adjust UART buffer sizes for new UART code
...
this gains about 20k of RAM, and has almost no impact on log download
speed at 921600 on a F427. The improved threading means we can afford
to have smaller buffers
2021-02-20 14:37:11 +11:00
Andy Piper
4e61ba2dc8
AP_HAL_ChibiOS: reduce stack sizes for rcout, uart_rx and storage.
2021-02-20 14:37:11 +11:00
Andy Piper
94de238751
AP_HAL_ChibiOS: disable RCOUT thread on iomcu and rebuild iomcu.
2021-02-20 14:37:11 +11:00
Andy Piper
f9c5f9be00
AP_HAL_ChibiOS: make dshot DMA unlock event driven in order to allow unlocking from rcout thread
...
refactor rcout into separate thread and process all dshot requests there
move uart DMA completion to event model
process dshot locks in strick reverse order when unlocking
convert Shared_DMA to use mutexes
move UART transmit to a thread-per-uart
do blocking UART DMA transactions
do blocking dshot DMA transactions
trim stack sizes
cancel dma transactions on dshot when timeout occurs
support contention stats on blocking locking
move thread supression into chibios_hwdef.py
invalidate DMA bounce buffer correctly
separate UART initialisation into two halves
cleanup UART transaction timeouts
add @SYS/uarts.txt
move half-duplex handling to TX thread
correct thread statistics after use of ExpandingString
set unbuffered TX thread priority owner + 1
correctly unlock serial_led_send()
don't share IMU RX on KakuteF7Mini
observe dshot pulse time more accurately.
set TRBUFF bit for UART DMA transfers
deal with UART DMA timeouts correctly
don't deadlock on reverse ordered DMA locks
change PORT_INT_REQUIRED_STACK to 128
2021-02-20 14:37:11 +11:00
mateksys
7eb4e9b370
AP_Periph: set PORT defaults for F405-MatekGPS
2021-02-18 11:51:50 +11:00
mateksys
97c2b7228e
AP_Periph: Matek F303 and F405 AP_Periph use DSP310 baro
2021-02-18 11:51:50 +11:00
Andy Piper
4c2cbdab8d
AP_HAL_ChibiOS: only setup half-duplex for receive when transmit is fully over
2021-02-17 20:09:48 +11:00
Andy Piper
5c32007cdf
AP_HAL_ChibiOS: ensure stop bits can be set before UART begin
2021-02-17 20:09:48 +11:00
Andy Piper
3a9107245c
AP_HAL_ChibiOS: allocate DMA and LED buffers correctly when the length changes
...
calculate DMAR pulse times correctly
ensure 50us pulse separation for LED
make sure the LEDs are signalled for output
only allow LED length to be set once
2021-02-17 18:36:36 +11:00
Michael du Breuil
c0da87c066
AP_HAL_ChibiOS: Update HitecMosaic to reflect changes to GPS config
2021-02-15 16:31:45 -07:00
Andrew Tridgell
9de1519928
HAL_ChibiOS: prevent hw flow control from hogging a DMA channel
...
When hw flow control is enabled check the CTS pin before we grab the
DMA channel to prevent a long timeout trying to send to a blocked port
from holding a DMA channel against another device
this fixes issue #16587
2021-02-15 07:23:56 +11:00
Andrew Tridgell
0cc4409845
HAL_ChibiOS: fixed handling of invalid channel for LED write
...
this prevents a null ptr dereference when an invalid channel (such as
one on IOMCU) is used for LEDs
2021-02-13 15:11:10 +11:00
Andrew Tridgell
098a17fe2e
HAL_ChibiOS: fixed CubeOrange ADSB param name
2021-02-13 13:06:20 +11:00
Andy Piper
20d8696a0a
AP_HAL_ChibiOS: BeastH7 has DPS310 baro
2021-02-10 18:33:59 +11:00
Andrew Tridgell
814393c9c2
HAL_ChibiOS: switch from DPS280 to DPS310 in boards that use the DPS310
2021-02-09 11:37:07 +11:00
Andrew Tridgell
86fda93781
HAL_ChibiOS: added heater correction of AK09916
...
this fixes a problem with the internal compass being impacted by the
magnetic field from the heater
2021-02-09 11:32:19 +11:00
Andrew Tridgell
2ab8ad0ef0
HAL_ChibiOS: added Durandal pinout details
2021-02-09 07:14:02 +11:00
Michael du Breuil
623951a262
AP_HAL_ChibiOS: Add some extra GPS SBF config
2021-02-05 11:52:29 -07:00
Tom Pittenger
d1e6b0befb
AP_HAL_ChibiOS: Add ADC1 support to STM32F3
...
This is useful for AP_Periph battery monitoring
2021-02-04 16:30:38 -08:00
Andrew Tridgell
b8e82a56f3
HAL_ChibiOS: don't start rout ticks till after full system init
...
this prevents an occasional boot hang on systems with DShot
enabled. We shouldn't be starting DShot output till after setup() is
complete as the outputs are still being configured
2021-02-05 07:17:57 +11:00
Andy Piper
2cdc202d19
AP_HAL_ChibiOS: use non-cachable SRAM3 for DMA on H743
...
Adjust SRAM1+SRAM2 to 256k as describe in the H743 reference manual
Provide access to mem_info() information
Co-authored-by: Andrew Tridgell <andrew@tridgell.net>
2021-02-03 23:35:44 +11:00
Andy Piper
06a1500f98
AP_HAL_ChibiOS: ensure GPIO pins get undef'ed properly
...
minimise bi-directional dshot configs for:
CubeOrange
Durandal
MatekF405
MatekH743
OmnibusNanoV6
Pixracer
mRoPixracerPro
omnibusf4pro
CUAV-X7
2021-02-03 18:49:06 +11:00
Michel Pastor
41f7587637
ChibiOS: Add SWD pins to SuccexF4 bootloader
2021-02-03 18:37:46 +11:00
auturgy
24268cc6de
AP_HAL_ChibiOS: add MatekH743-periph hwdef
2021-02-03 18:17:44 +11:00
mateksys
b91c65b4a4
AP_HAL_ChibiOS: add f405-MatekGPS & MatekF405-CAN hwdef
2021-02-03 18:09:35 +11:00
huhen
9ba35580db
HAL_ChibiOS: Init kakutef7 motor pins for correct initialization of some ESCs
2021-02-03 13:13:32 +11:00
Andy Piper
6f5d5c2bf9
AAP_HAL_ChibiOS: allow asserts to be printed on a GPIO pin
2021-01-27 19:36:58 +11:00
Andy Piper
d41c92d317
AP_HAL_ChibiOS: don't overwrite fault handler data, register forced faults
2021-01-27 19:13:18 +11:00
Andy Piper
20d928a86a
AP_HAL_ChibiOS: don't share DMA on OmnibusNanoV6 for Flash SPI
2021-01-27 19:04:49 +11:00
Andy Piper
873d35acd9
AP_HAL_ChibiOS: bi-directional dshot for MatekH743
2021-01-27 18:58:38 +11:00
Andy Piper
877dde4736
AP_HAL_ChibiOS: on BeastF7 share TIM3 UP/CH and give flash SPI dedicated channel
2021-01-27 18:54:43 +11:00
Andy Piper
9249b73e8b
AP_HAL_ChibiOS: correctly allow mixing of bidir and non-bidir channels
2021-01-27 18:49:15 +11:00
Andy Piper
2823fa7245
AP_HAL_ChibiOS: never write bytes that have not been erased on H7
...
Be more careful about flash failure conditions on H7
2021-01-27 18:30:36 +11:00
Andy Piper
78735a946e
AP_HAL_ChibiOS: allow STM32_FLASH_DISABLE_ISR for H7
2021-01-27 18:30:36 +11:00
Andrew Tridgell
155de6d2bc
HAL_ChibiOS: fixed build of AP_Periph on H7
2021-01-27 18:24:03 +11:00
Andrew Tridgell
9861a02c60
HAL_ChibiOS: save INS_ACC*ID persistent parameters
...
this enables full factory accelerometer calibration, so the user is
not required to run an accelcal, even if they change vehicle type
2021-01-27 09:49:35 +11:00
Andrew Tridgell
5ed19c764e
HAL_ChibiOS: expose load_persistent_params for @SYS
2021-01-21 13:09:21 +11:00
Andrew Tridgell
5c823debc0
HAL_ChibiOS: support saving persistent parameters to bootloader sector
...
when we flash the bootloader we can save key peristent parameters to
the end of the bootloader sector, allowing them to persistent across
changes of firmware type
This allows for factory temperature calibration
2021-01-21 13:09:21 +11:00
Andrew Tridgell
d81c2ee407
HAL_ChibiOS: allow for some embedded parameters on AP_Periph builds
2021-01-21 06:19:46 +11:00
bugobliterator
8b90eb23e0
AP_HAL_ChibiOS: distcc doesn't like lst generation commands
2021-01-20 19:21:14 +11:00
Andy Piper
2fadcf6ba0
AP_HAL_ChibiOS: handle UP/CH channel sharing on H7 correctly
2021-01-20 18:15:17 +11:00
Andy Piper
9e641a32ad
AP_HAL_ChibiOS: don't share flash SPI on BeastH7 and compile with -Os
2021-01-20 18:12:57 +11:00
Andy Piper
2b885cd79f
AP_HAL_ChibiOS: ensure that serial LED setup goes via an intermediate buffer
...
protect serial LED buffer transfers with mutex
protect serial LED buffer size with mutex
prevent serial LED interactions before rcout is ready
allocate a serial led buffer per channel that needs it
setup clock mask when needed
2021-01-20 18:10:18 +11:00
bugobliterator
c02c546077
AP_HAL_ChibiOS: add support for inline comments in hwdef.dat
2021-01-18 09:37:11 +11:00
bugobliterator
41693403e2
AP_HAL_ChibiOS: retain memory of past conflicts in dma_resolver
2021-01-18 09:37:11 +11:00
Andrew Tridgell
f93e2f6717
HAL_ChibiOS: enable 32k FRAM on H7 boards
2021-01-16 06:47:10 +11:00
pkocmoud
7b61a4d8c2
HAL_ChibiOS: support F7 with no crystal
2021-01-15 15:48:01 +11:00
Andy Piper
cb5be4fcc1
AP_HAL_ChibiOS: don't share IMU DMA on MatekH743 to avoid SPI DMA contention
2021-01-15 14:32:39 +11:00
Andy Piper
e781572d53
AP_HAL_ChibiOS: support iFlight BeastF7
...
reduce DMA contention on BeastH7 and correct sharing
add README's for BeastF7 and BeastH7
2021-01-13 18:09:33 +11:00
Andy Piper
fdbf2d369a
AP_HAL_ChibiOS: do not take bi-dir path when in serial DMA
2021-01-13 18:03:41 +11:00
bugobliterator
4346264113
AP_HAL_ChibiOS: ensure UP and CH timer channels share DMA for H7
2021-01-12 10:45:03 +11:00
Andy Piper
e9ea360a99
AP_HAL_ChibiOS: don't timeout after 11 bits on serial irqs
2021-01-12 09:58:58 +11:00
Andrew Tridgell
14433c3ae3
HAL_ChibiOS: enable ICM-40609 on mRoNexus
2021-01-11 14:43:35 +11:00
Andrew Tridgell
afbdd69165
AP_HAL_ChibiOS: adjust stack sizes
2021-01-10 08:28:55 +11:00
Andy Piper
8fb403c569
AP_HAL_ChibiOS: make sure BDMA channels are not adjacent
2021-01-10 08:11:37 +11:00
Andrew Tridgell
42bc9adfb7
HAL_ChibiOS: use ExpandingString for @SYS buffers
2021-01-05 10:52:00 +11:00
Peter Barker
ca6c133042
AP_HAL_ChibiOS: do not reuse va_list after it has been ended
2021-01-05 10:04:25 +11:00
Andrew Tridgell
324ff178d8
HAL_ChibiOS: fixed CUAV_GPS defaults.parm
2021-01-03 16:24:12 -08:00
Tom Pittenger
113f792ad1
AP_HAL_ChibiOS: update periph targets who have buzzer/LEDs with notify
2021-01-03 16:24:12 -08:00
Andrew Tridgell
6f4bfed82d
HAL_ChibiOS: fixed build with alarm and no PWM channels
...
this fixes a build error due to conditional always being false when
NUM_GROUPS==0 by using a C++ iterator. It also makes the code neater
2021-01-04 09:04:06 +11:00
Hwurzburg
ce361e51bf
HAL_ChibiOS: Reinstate HAL_MINIMIZE_FEATURES for 1MB F7 boards
2021-01-02 08:57:47 +11:00
Andrew Tridgell
e260c7ad59
HAL_ChibiOS: update f303-MatekGPS to allow disable of MSP
...
and use DMA for MSP
2021-01-01 15:40:13 +11:00
David B. Bitton
8dbe0a71ba
AP_HAL_ChibiOS: add support for Toshiba LED
2020-12-31 11:02:10 -08:00
Andy Piper
401e5c2073
AP_HAL_ChibiOS: add support for bidir DShot support in RCOutput
...
add support for sampling GPIO pins using timer
don't restart pwm group when not doing bi-dir
fix hwdef generation preproc for TIM DMA
decode telemetry at the start of the dshot cycle
calculate dshot pulse separation correctly and ensure we output rapidly enough
calculate dshot min periods and timeouts correctly
refactor dshot_send() into dshot_send_groups()
use bi-dir dshot channel mask
selectively enable bi-dir RC Channels
process bi-dir mask correctly when allocating DMA channels
allow UP and CH DMA channel sharing
optionally enable bidir vars in hwdef.
enable bi-dir dshot in KakuteF7Mini
enable bi-dir dshot in OmnibusF4Pro
enable bi-dir dshot in OmnibusNanoV6
enable bi-dir dshot in MatekF405
enable bi-dir dshot in fmuv5
enable bi-dir dshot in fmuv3
enable bi-dir dshot in OmnibusF7V2
enable bi-dir dshot in OmnibusNanoV6
enable bi-dir dshot in CubeOrange
enable bi-dir dshot in Pixracer
enable bi-dir dshot in mRoPixracerPro
Co-authored-by: bugobliterator <siddharthbharatpurohit@gmail.com>
2020-12-30 19:14:16 +11:00
Andy Piper
07f199ea1a
AP_HAL_ChibiOS: rename system_initialized() and add is_system_initialized()
2020-12-30 18:16:59 +11:00
Andy Piper
83c8807b39
AP_HAL_ChibiOS: when HAL_ENABLE_THREAD_STATISTICS is defined add ChibiOS thread stats to threads.txt
...
define HAL_ENABLE_THREAD_STATISTICS in hwdef.h
2020-12-30 18:15:05 +11:00
Andy Piper
a4b2930223
AP_HAL_ChibiOS: iFlight Beast H7 AIO hwdef
2020-12-30 18:13:03 +11:00
ukmook
bf34041211
AP_HAL_ChibiOS: add support for Pixracer-periph
2020-12-29 07:52:39 -07:00
Tom Pittenger
5432c9957a
AP_HAL_ChibiOS: rename AP_PERIPH_<feature>_DEFAULT to HAL_PERIPH_<feature>_DEFAULT
2020-12-28 09:16:02 +11:00
Tom Pittenger
083088bfff
AP_HAL_ChibiOS: adjust defaults to use param instead of hardcoded defaults
2020-12-25 16:24:50 -07:00
Ari Krupnik
79e1f5e8bd
AP_HAL_ChibiOS: standard spelling of variant
2020-12-25 00:01:50 +11:00
Phillip Kocmoud
062c6cef41
HAL_ChibiOS: Fix typo relating to pin PB7:I2C4_SDA
2020-12-23 06:43:19 +11:00
Siddharth Purohit
5b58163c35
AP_HAL_ChibiOS: add HAL_PERIPH_ENABLE_RCOUT_TRANSLATOR to CubeBlack-periph and CubeOrange-periph
2020-12-21 18:27:07 -08:00
Tom Pittenger
da74d755d0
AP_HAL_ChibiOS: add new HAL_PWM_COUNT define
2020-12-21 18:27:07 -08:00
Tom Pittenger
f670f7a9b6
AP_HAL_ChibiOS: change ADSB to use param ADSB_PORT instead of define
2020-12-17 23:24:04 -08:00
Tom Pittenger
5c98e18236
AP_HAL_CubeORange-periph: enable HAL_PERIPH_ALLOW_MAVLINK_UART_OR_USB_REBOOT_CMD on USB
2020-12-18 06:59:09 +11:00
Andrew Tridgell
b4201436dd
HAL_ChibiOS: fixed flash space on 16k bl boards
...
this avoids the stm32_flash_recent_erase() function which added around
800 bytes to the bootloader. It is not needed
2020-12-17 12:51:25 +11:00
Sebastian Witt
6cfaae4e7d
AP_HAL_ChibiOS: Support for Diatone MambaF405 MK2
2020-12-16 19:07:07 +11:00
Andrew Tridgell
bf546f363d
HAL_ChibiOS: don't init serial 1 and 3
...
these should not be treated as special. Initialising them early just
wastes memory if the end up not being used
2020-12-15 10:32:46 +11:00
Andrew Tridgell
e54fc4b0de
AP_HAL_ChibiOS: convert to using hal.serial() instead of hal.uartX
2020-12-15 10:32:46 +11:00
Phillip Kocmoud
ce87b62dcc
AP_Periph: Add alternate ordering of NCP5623 LED colors
2020-12-12 14:57:35 +11:00
Tom Pittenger
68b2982cc6
AP_HAL_ChibiOS: CubeBlack/Orange-periph to use default HAL_SUPPORT_RCOUT_SERIAL
2020-12-09 07:53:09 -08:00
Tom Pittenger
2203bf2400
AP_HAL_ChibiOS: Add f303-periph default RANGEFINDER_MAX_INSTANCES 1
2020-12-09 18:05:24 +11:00
Andrew Tridgell
0c440d5675
HAL_ChibiOS: cope with flash erase in expected delay
...
when there has been a flash erase when we are definately in an
expected delay
2020-12-08 13:22:36 +11:00
Andrew Tridgell
b4de6fb56a
HAL_ChibiOS: added new option DEFAULTGPIO for hwdef.dat
...
this allows ESD issues to be avoided by pulling all unused pins low
2020-12-08 11:21:57 +11:00
Andrew Tridgell
f44e4aaefb
HAL_ChibiOS: always set STM32_DMA_REQUIRED for non-bootloader
...
this fixes an issue for uart-only AP_Periph builds
2020-12-08 10:27:27 +11:00
Andrew Tridgell
b1e7b508db
HAL_ChibiOS: added HitecMosaic
2020-12-06 16:48:08 +11:00
Andrew Tridgell
1723cf8efb
HAL_ChibiOS: reduce SPI clock on MatekH743 mpu6k to 2MHz
...
this fixes regular transfer errors
2020-12-06 13:04:52 +11:00
Tom Pittenger
e235fd311e
AP_HAL_ChibiOS: fixed comment in script file
2020-12-03 20:33:51 +11:00
Andrew Tridgell
6765265a3b
AP_Periph: switched to 1kHz clock for f303-periph
...
and use CAN RX buffer size of 64.
This makes for more efficient CPU usage on f3, and fixes an issue with
lost CAN parameter replies causing timeouts in the CAN parameter
download protocol
2020-12-03 20:00:55 +11:00
Andrew Tridgell
b289701d20
HAL_ChibiOS: removed SPI devices on f103-periph
...
these are unused and saves us a couple of k of flash
2020-12-03 15:50:50 +11:00
Andy Piper
cf2602f91d
AP_HAL_ChibiOS: add support for @SYS/dma.txt for DMA contention
2020-12-02 18:17:23 +11:00
Phillip Kocmoud
38dd3b9209
hwdef: add mRo Control Zero Classic
2020-12-01 15:19:50 +11:00
Phillip Kocmoud
bef522387a
hwdef: add mRo Control Zero H7
2020-12-01 14:46:55 +11:00
Andrew Tridgell
cf22caa7ef
HAL_ChibiOS: raise stack limits in f303 peripherals
2020-12-01 11:14:50 +11:00
Andrew Tridgell
3ba46d5bd9
HAL_ChibiOS: enable reporting of watchdog reset on AP_Periph
2020-12-01 11:14:50 +11:00
Andrew Tridgell
ba69cd72c9
HAL_ChibiOS: improved stack checking and stack display
...
display both ISR stack and thread stacks. Show total stack sizes as
well as amount of stack remaining
2020-12-01 11:14:50 +11:00
Andrew Tridgell
84eac7642b
HAL_ChibiOS: improved stack checking
2020-12-01 11:14:50 +11:00
Andrew Tridgell
2d459dccc3
HAL_ChibiOS: reduced stack usage in CAN RX handler
2020-12-01 11:14:50 +11:00
Andrew Tridgell
c778d14fd3
HAL_ChibiOS: enable stack checking on f303 boards
2020-12-01 11:14:50 +11:00
Andrew Tridgell
573cd6db6d
HAL_ChibiOS: adjust MAIN_STACK for more ISR stack
...
we need more stack to deal with interrupt nesting between CAN, system
timer and serial interrupts
2020-12-01 11:14:50 +11:00
Andrew Tridgell
52a90e7a33
HAL_ChibiOS: fixed monitor thread with no logging
2020-12-01 11:14:50 +11:00
Andrew Tridgell
2a29b0fcf5
HAL_ChibiOS: fixed AP_Periph build with --enable-asserts
2020-12-01 11:14:50 +11:00
Andrew Tridgell
4d171ec19a
AP_HAL_ChibiOS: support uartI, allowing a total of 9 uarts
...
this allows for OTG2 on the MatekH743 board, which makes SLCAN much
easier
2020-11-30 14:09:31 +11:00
Phillip Kocmoud
c9182b39d5
hwdef: mRo Control Zero H7 OEM - update and improve uniformity
2020-11-30 08:48:36 +11:00
Phillip Kocmoud
b55920165a
hwdef: mRo Pixracer Pro - update and improve uniformity
2020-11-30 08:48:36 +11:00
Phillip Kocmoud
a379bb8fc5
hwdef: mRo Control Zero F7 update and improve uniformity
2020-11-28 20:28:22 +11:00
Andrew Tridgell
a587195912
HAL_ChibiOS: change f303-MatekGPS to 5Hz by default
2020-11-27 19:41:33 +11:00
Tom Pittenger
67405cedb2
AP_HAL_ChibiOS: add AP_BattMonitor support to CubeBlack&Orange-periph
2020-11-25 14:20:53 +11:00
斯东Stone
4990048efb
HAL_ChibiOS: Correct a typo and Update product link url for PH4-mini
2020-11-24 12:48:11 +11:00
QioTek
e4f4868d9b
HAL_ChibiOS: add QMC5883L on QioTekZealotF427
...
add QMC5883L on QioTekZealotF427
2020-11-22 06:10:34 +11:00
Marek Łukasiewicz
64f208cbec
HAL_ChibiOS: Add af_parse for CubeMX pinout csv
2020-11-18 18:39:07 +11:00
Phillip Kocmoud
701ab83f01
HAL_ChibiOS: Added support for mRo ControlZero OEM H7 flight controller
2020-11-18 18:28:24 +11:00
Andrew Tridgell
408f8b3940
HAL_ChibiOS: added check for overwrite of nullptr on H7
...
the STM32H7 has 64k of ITCM memory at address zero. We allow
allocation of everything except the first 1024 bytes. This checks for
those reserved bytes being overwritte, which would indicate a write to
nullptr
2020-11-18 17:14:43 +11:00
Andrew Tridgell
8f682c0782
HAL_ChibiOS: check all memory at 10Hz
2020-11-18 17:14:43 +11:00
Andrew Tridgell
95a823a702
HAL_ChibiOS: added link list of all memory allocations
...
check all allocations for corruption on free() and malloc_check()
2020-11-18 17:14:43 +11:00
Andrew Tridgell
3f775205e6
HAL_ChibiOS: fixed use of chHeapFree
...
should be free
2020-11-18 17:14:43 +11:00
Andrew Tridgell
ce3e1a69ec
HAL_ChibiOS: added memory guard system
2020-11-18 17:14:43 +11:00
Huibean
cf2b89c4f1
AP_HAL_ChibiOS:add mazzy star drone hwdef
2020-11-17 17:57:07 +11:00
Tom Pittenger
e0e3c23a87
AP_HAL_ChibiOS/hwdef: fix misprint in comment
2020-11-14 08:00:40 +11:00
Marek Łukasiewicz
8813057b4c
AP_HAL_ChibiOS: Tweak sorting to be py2/py3 compatible
2020-11-12 10:27:31 +11:00
Andrew Tridgell
280e9d1c41
HAL_ChibiOS: fixed bootloader build
2020-11-10 16:15:45 +11:00
Andrew Tridgell
17b4198921
HAL_ChibiOS: add WITH_FATFS to environment
2020-11-10 16:15:45 +11:00
Andrew Tridgell
ac566763fe
HAL_ChibiOS: disable loop delay on replay
2020-11-10 16:15:45 +11:00
Andrew Tridgell
bb3b59966f
HAL_ChibiOS: define INS_MAX_INSTANCES if less than 3
...
save some flash and memory
2020-11-10 16:15:45 +11:00
Andrew Tridgell
cb034c50a7
HAL_ChibiOS: fixed orientation of compass on M10070B
2020-11-08 16:13:17 +11:00
Andrew Tridgell
3b7b2b89a5
HAL_ChibiOS: added baro for mRo Location-one GPS
2020-11-08 16:13:17 +11:00
Phillip Kocmoud
c192efea0a
hwdef:PixracerPro - Fix analog volt pin assignments
2020-11-03 08:17:54 +11:00
Andrew Tridgell
46976c4358
HAL_ChibiOS: fixed remapping of ioline_t with BRD_ALT_CONFIG
...
when a peripheral is made available via BRD_ALT_CONFIG we need to
remap the existing ioline_t in the UART and I2C drivers to use the new
pin.
This fixes an issue with half-duplex, inverted, swapped UART pins for
protocols like FPort and FPort2
2020-10-28 19:51:45 +11:00
Andrew Tridgell
ee50eaf3c9
HAL_ChibiOS: go via AP_Filesystem for mount/unmount operations
...
this fixes a deadlock where a mount/unmount could access FATFS without
holding the AP_Filesystem semaphore
2020-10-27 10:45:03 +11:00
Andrew Tridgell
96f7397099
HAL_ChibiOS: make PowerC primary power on CUAV-X7
...
CUAV considers the CAN power to be the main power for this board
2020-10-24 08:27:21 +11:00
Michael Oborne
b383db15c7
ChibiOS: fix cubeblack+ name and usbid
2020-10-24 08:26:55 +11:00
Andrew Tridgell
fb1dcdb059
HAL_ChibiOS: added BL suffix to bootloader USB IDs for two boards
...
our convention is to have -BL on end of USB product IDs in bootloaders
2020-10-13 17:59:13 +11:00
Andrew Tridgell
418bd33c43
HAL_ChibiOS: fix CUAV-X7 power bits
2020-10-13 17:58:30 +11:00
Andrew Tridgell
25bc128248
HAL_ChibiOS: fixed periph overpower ifdef
...
fixes overcurrent logging on several boards
2020-10-13 17:58:30 +11:00
Andrew Tridgell
989f8c5d41
HAL_ChibiOS: fixed a race condition in UART DMA transmit
...
this fixes an issue seen on one board which caused a watchdog on high
uart DMA load. We have reproduced the issue on another board by
forcing a very high DMA transfer rate on the same DMA channel while
also requesting very high transfer rates on the UART. The likely race
is in the DMA transmit timeout code, and the simplest fix is to lock
out interrupts during the DMA setup to ensure the tx timeout cannot
trigger during the setup
2020-10-12 13:25:48 +11:00
bugobliterator
5880628b01
hwdef: add support for CubeBlack-periph
2020-10-08 09:31:35 +11:00
bugobliterator
e16cab0437
AP_HAL_ChibiOS: ensure we timeout while checking FDCAN register sets
2020-10-08 09:31:35 +11:00
bugobliterator
ca957519dc
AP_HAL_ChibiOS: redo filter configuration to make it work with STM32H7
2020-10-08 09:31:35 +11:00
QioTek
f04de7d610
HAL_ChibiOS: Add QioTekZealotF427 build target
...
I've added the hwdef to support the QioTekZealotF427
It has 3 IMU sensors(ICM20698,ICM20602,BMI055), a Compass(Ist8310),
2Baro sensors(DSP310,MS5611), an integrated analog OSD, 14motor
outputs, 4Relay output, 5uarts, 2Power Module input, an i2c, a Can.
2020-10-05 07:41:06 +11:00
Andrew Tridgell
702a3926f8
HAL_ChibiOS: setup defines for more flow control pins
...
allow all uarts to have flow control
2020-10-03 20:22:56 +10:00
Andrew Tridgell
5e80b10396
HAL_ChibiOS: enable telem3 on Durandal
...
the RCIN issue is not there in the final production boards
2020-10-03 20:22:56 +10:00
Andrew Tridgell
e471b23f58
HAL_ChibiOS: add a max quota of GPIO interrupts
...
This implements a max quota of GPIO interrupts per 100ms period to
prevent high interrupt counts from consuming all CPU and causing a
lockup. The limit is set as 10k interrupts per 0.1s period. That limit
should be high enough for all reasonable uses of GPIO interrupt
handlers while being below the level that causes significant CPU loads
and flight issues
This addresses issue #15384
2020-10-02 09:38:24 +10:00
bugobliterator
0a4ea250ad
AP_HAL_ChibiOS: disable CANFilter on H7 boards temporarily
2020-10-01 07:19:19 +10:00
Andrew Tridgell
4b747430e1
HAL_ChibiOS: save 2k in f103 bootloader
...
don't include serial bl support if dev list is empty
2020-09-24 12:32:19 +10:00
Siddharth Purohit
6fb973081b
AP_HAL_ChibiOS: enable all I2C compasses by default for f103 boards
2020-09-24 12:32:19 +10:00
Andrew Tridgell
0e8c8c29a8
HAL_ChibiOS: fixed f303-MatekGPS build
2020-09-24 12:32:19 +10:00
Andrew Tridgell
246e790484
AP_Bootloader: use new hal CAN interface for CAN support
2020-09-24 12:32:19 +10:00
Siddharth Purohit
a79efaeb1d
AP_HAL_ChibiOS: hwdef: add support for HAL CANIface based bootloader
2020-09-24 12:32:19 +10:00
Siddharth Purohit
882c86c394
AP_HAL_ChibiOS: add app start offset to leave space for params
2020-09-24 12:32:19 +10:00
Siddharth Purohit
1f16aa8360
HAL_ChibiOS: add hwdef for CubeOrange-periph
2020-09-24 12:32:19 +10:00
Siddharth Purohit
62df67a4b8
HAL_ChibiOS: hwdef: modify to use HAL CAN driver instead of ChibiOS's
2020-09-24 12:32:19 +10:00
Siddharth Purohit
36ffcdae30
HAL_ChibiOS: modify hal can drivers for use by AP_Periph
2020-09-24 12:32:19 +10:00
Hwurzburg
d5722b15e9
AP_ChibiOS: fix configuration number in OmnibusF7V2 hwdef
2020-09-23 07:35:22 +10:00
Hwurzburg
de8002ab5e
AP_HAL_ChbiOS: ALT config to enable UART3 in place of I2C
2020-09-22 09:48:02 +10:00
Andrew Tridgell
0ba256f625
HAL_ChibiOS: fixed warning on gcc9
...
packed structure can be misaligned
2020-09-22 08:07:23 +10:00
Andrew Tridgell
90cd2a38b6
HAL_ChibiOS: fixed gcc9 warnings
2020-09-22 08:07:23 +10:00
Hwurzburg
c64f286333
AP_ChibOS: add UART7_RX to OMNIBUSF7V2
2020-09-17 10:47:18 +10:00
bugobliterator
575a56a6b6
hwdef: CubeOrange: do power reset on peripherals and sensor at boot
2020-09-16 18:08:08 +10:00
bugobliterator
a2ee82d8d9
hwdef: use inv2 sensor checks in CubeOrange
2020-09-16 18:08:08 +10:00
Andy Piper
570fd59c39
AP_HAL_ChibiOS: disable OSD parameters on F7 1Mb boards with SD cards
2020-09-10 18:10:32 +10:00
Andrew Tridgell
1ffbbb2896
HAL_ChibiOS: added FLASH_TOTAL to environment
2020-09-10 07:41:25 +10:00
Andy Piper
bbaaf7d66f
AP_HAL_ChibiOS: disable features on KakuteF7 and OmnibusF7v2 to mirror KakuteF7Mini
2020-09-09 20:36:42 +10:00
Andrew Tridgell
90e488d29d
HAL_ChibiOS: set airspeed type in f303-MatekGPS fw
2020-09-09 12:04:49 +10:00
Andrew Tridgell
e95a44e73c
HAL_ChibiOS: run f303-MatekGPS at 10Hz
2020-09-09 06:35:50 +10:00
Andrew Tridgell
844db20db0
HAL_ChibiOS: use a default node ID for f303-MatekGPS
2020-09-09 06:35:50 +10:00
Andrew Tridgell
9c7568eb5f
HAL_ChibiOS: enable MSP output for f303-MatekGPS
2020-09-09 06:35:50 +10:00
chobits
f4320c935c
AP_HAL_ChibiOS: fix kakutef7/mini motor glitch when using dshot
2020-09-08 18:57:30 +10:00
vierfuffzig
63fdac0048
AP_HAL_ChibiOS: add USART3 as alt config on OmnibusNanoV6
2020-09-07 15:34:01 +10:00
Michael Oborne
4e9848ab3a
HAL_ChibiOS: fix sdcard param init
...
the write was failing because of a 0 byte write attempt, the response was -1 vs 0
this results in not using the sdcard backend for storage for all boots after the initial
2020-09-04 07:13:12 +10:00
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
Andrew Tridgell
450871cde1
HAL_ChibiOS: added wait_pin() implementation
2020-04-23 07:28:13 +10:00
Andrew Tridgell
8e977183fe
HAL_ChibiOS: added mRoNexus
2020-04-23 07:28:13 +10:00
Andrew Tridgell
6be519fb0d
HAL_ChibiOS: added alt-config for UART4 on omnibusf4pro
2020-04-21 18:42:12 +10:00
Andy Piper
f3b240533f
AP_HAL_ChibiOS: eliminate EKF2 from fmuv2 build
2020-04-18 20:18:30 +10:00
Andrew Tridgell
db8fdeebeb
HAL_ChibiOS: fixed Hott telem half duplex handling
...
this fixes an issue with single byte writes with half duplex. It isn't
an elegent solution, but nicely separates the different types of half
duplex operation
2020-04-17 17:52:28 +10:00
Andrew Tridgell
cac455ff2d
HAL_ChibiOS: added another uart to omnibusf4v6
...
for RC telemetry such as Hott telem
2020-04-17 11:23:06 +10:00
vierfuffzig
7c7b199bbd
AP_HAL_ChibiOS: add I2C / USART3 ALT_CONFIG for omnibusf4pro
2020-04-16 08:42:24 +10:00
Andrew Tridgell
74f33d57c5
HAL_ChibiOS: avoid unnecessary H7 flash writes
2020-04-14 10:02:51 +10:00
Andrew Tridgell
8dabd6cefc
HAL_ChibiOS: expect a long delay on flash page erase
...
this prevents the display of errors on flash page erase
2020-04-14 10:02:51 +10:00
Andrew Tridgell
4b236e52b2
HAL_ChibiOS: added MatekH743 port
2020-04-14 10:02:51 +10:00
Andrew Tridgell
2165fd66f1
HAL_ChibiOS: define FLASH_RESERVE_END_KB
2020-04-14 10:02:51 +10:00
Henry Wurzburg
e5319397b4
AP_HAL_ChibiOS: eliminate EKF2 from F4 builds not using HAL_MINIMIZE_FEATURES
2020-04-14 09:19:28 +10:00
murata
124d8c7fdf
AP_HAL_ChibiOS: Changing the timeout detection
2020-04-14 07:32:46 +10:00
Andrew Tridgell
db4f1a1473
HAL_ChibiOS: enable ADIS16470 on SPI1
2020-04-13 15:26:02 +10:00
CUAVcaijie
942b2fd29f
HAL_ChibiOS: Added support for CUAV X7 flight controller
2020-04-13 15:26:02 +10:00
bugobliterator
a31f2e5d90
hwdef: add validation checks for CubeOrange
2020-04-10 07:04:21 +10:00
bugobliterator
ef91f1634b
HAL_ChibiOS: add support for adding board validation test
2020-04-10 07:04:21 +10:00
Andrew Tridgell
376116c99b
HAL_ChibiOS: fixed skyviper-journey build
2020-04-04 10:47:15 +11:00
Peter Barker
9ba2aecbb8
AP_HAL_ChibiOS: send statustext at regular intervals after watchdog reset
2020-03-31 14:30:11 +11:00
Henry Wurzburg
a637073dad
AP_HAL_Chibios: add tenth PWM output to MatekF405-Wing
2020-03-30 11:23:14 +11:00
Andrew Tridgell
e0957c2bcc
HAL_ChibiOS: include hwdef.dat in ROMFS
...
this allows download via ftp
2020-03-28 15:28:03 +11:00
Andrew Tridgell
ea57b7b3cd
HAL_ChibiOS: embed ROMFS files from hwdef directory
...
this allows for a scripts/ directory under hwdef board directory to
embed lua scripts
2020-03-28 15:28:03 +11:00
Andrew Tridgell
822460ce7d
HAL_ChibiOS: fixed strdup() on ChibiOS
2020-03-28 15:28:03 +11:00
bugobliterator
8215537f99
HAL_ChibiOS: deprecate realloc for ChibiOS build, so as to return error when used
2020-03-24 10:32:14 +11:00
bugobliterator
89d03f0243
AP_HAL_ChibiOS: implement standard realloc method
2020-03-24 10:32:14 +11:00
Andrew Tridgell
fc0b2ef920
HAL_ChibiOS: added half-duplex protection for non-inverted
...
to prevent output bytes being seen as input bytes we disable half
duplex during transmit. This was previously only done for non-inverted
UARTs. This patch enables it whether we are inverted or not. This
greatly reduces the number of bad input bytes.
2020-03-20 12:37:52 +11:00
Peter Barker
a59c3670c8
AP_HAL_ChibiOS: stash lr_thd in watchdog hardfault handler
2020-03-19 16:03:58 +11:00
Andrew Tridgell
5a4b648cf5
HAL_ChibiOS: disable flash fallback for boards with FRAM
...
this saves on flash and prevents confusing results when fram fails
2020-03-14 13:47:25 +11:00
Nick Exton
4cd39a4619
HAL_ChibiOS: improved selection of storage backend
2020-03-14 13:47:25 +11:00
Andy Piper
104dd7cd75
AP_HAL_ChibiOS: remove board subtype for OmnibusNanoV6
2020-03-14 10:20:46 +11:00
Andrew Tridgell
986ad0dc27
HAL_ChibiOS: removed unnecessary subtype defines
2020-03-14 08:35:32 +11:00
Andrew Tridgell
c3f2117590
HAL_ChibiOS: fixed R9Pilot board ID
2020-03-14 07:05:22 +11:00
Andrew Tridgell
1540cf958b
HAL_ChibiOS: improve error messages for flashing bootloader
...
send progress as statustext messages
2020-03-11 16:30:06 +11:00
Andrew Tridgell
cf7c2b1475
HAL_ChibiOS: suppress SPI timeout error for expected delay
2020-03-11 16:30:06 +11:00
Andrew Tridgell
65cd223023
HAL_ChibiOS: implement in_expected_delay()
2020-03-11 16:30:06 +11:00
Andrew Tridgell
d35fff5186
HAL_ChibiOS: set CS pins high while in bootloader
...
this appears to be the root cause of the parameter resets on
CubeOrange. We need to ensure the CS pin is not floating or random
noise on the SPI bus for FRAM can cause the FRAM to become corrupt
2020-03-11 09:53:06 +11:00
Peter Barker
d0edfd2c0d
AP_HAL_ChibiOS: VRUBrain-v51: reduce AP_MAX_EMBEDDED_PARAM to 1024
...
Stops us overflowing on Copter and Plane builds
2020-03-10 10:50:18 +11:00
Peter Hall
fe5779fd88
AP_HAL_ChibiOS: add support for ProfiLEDs
2020-03-10 10:37:26 +11:00
Andrew Tridgell
16f34778fc
HAL_ChibiOS: added f103-HWESC target
2020-03-04 16:21:06 +11:00
Andrew Tridgell
bca1bd2c72
HAL_ChibiOS: added f303-HWESC firmware
2020-03-04 16:21:06 +11:00
Peter Barker
1a123e5f8d
AP_HAL_ChibiOS: avoid referencing flash sector/page 22 on 1MB boards
2020-03-03 10:13:53 +11:00
Peter Barker
2d2fdf8bd0
AP_HAL_ChibiOS: make a static-const hal a reference to the external symbol
2020-03-03 10:12:14 +11:00
Andrew Tridgell
ccc7d48c20
HAL_ChibiOS: reserve plenty of DMA memory for luminousbee4
2020-02-27 13:12:26 +11:00
Andrew Tridgell
669b98c6df
HAL_ChibiOS: allow more than 32 WS2812 LEDs on a pin
2020-02-27 13:12:26 +11:00
Andrew Tridgell
5bfd607300
HAL_ChibiOS: added luminousbee4 flight controller
2020-02-27 13:12:26 +11:00
Peter Hall
0ca6b7cf77
AP_HAL_ChibiOS: retry neopixel until successful send
2020-02-25 11:15:55 +11:00
Andrew Tridgell
41b74ec014
HAL_ChibiOS: use DNA by default for all AP_Periph builds
...
this makes multiple sensors of the same type on the bus easier
2020-02-22 12:28:16 +11:00
Andrew Tridgell
6139860a64
HAL_ChibiOS: use default USB IDs for fmuv3
2020-02-22 12:17:05 +11:00
Andy Piper
3d0cf7e12a
AP_HAL_ChibiOS: hardware M4-Cortex and M7-Cortex (and H7) implementation of HAL FFT abstraction
...
implements an FFT engine based on the betaflight feature using ARM hardware accelerated CMSIS library
make the FFT feature optional
add dynamic gyro windows
add quinns and candans estimators and record in DSP state
disable DSP for boards with limited flash
calculate power spectrum rather than amplitude
start/analyse version of analysis to support threading
allocate memory in a specific region
constrain window size by CPU class
control inclusion of DSP based on board size
2020-02-22 11:15:37 +11:00
pkocmoud
8c764bb568
hwdef: switch to (0) DNA as the default NODEID
2020-02-17 12:48:37 +11:00
pkocmoud
8f6d2aab7a
hwdef: add mRo M10025 KITCAN
2020-02-17 12:48:37 +11:00
Andrew Tridgell
bebfef369f
HAL_ChibiOS: fixed power flags for CUAV-Nora
2020-02-12 21:17:49 +11:00
CUAVcaijie
561808ba3c
HAL_ChibiOS: Added support for CUAV Nora flight controller
2020-02-12 21:17:49 +11:00
Andrew Tridgell
a0fe1a7598
HAL_ChibiOS: produce more accurate clocks for DShot and PWM
2020-02-12 18:12:39 +11:00
Andrew Tridgell
9e0edba31d
HAL_ChibiOS: raised timer clocks to 200MHz
...
this gives more flexibility in setting up timers for DShot
2020-02-12 18:12:39 +11:00
Andrew Tridgell
8b93e0f57d
HAL_ChibiOS: prevent double init of USB
...
this prevented init of USB CubeBlack on Windows. Thanks to Randy for
reporting
2020-02-12 17:44:09 +11:00
Andrew Tridgell
adf17414e0
HAL_ChibiOS: fixed output string for non-DMA capable chan
...
this fixes a problem where the user requests DShot (which rquired DMA)
on an output channel which cannot allocate a DMA channel. We end up
sending normal PWM, so the string representation of the output modes
should reflect that
2020-02-12 14:08:40 +11:00
Andrew Tridgell
e8ab35a192
HAL_ChibiOS: fixed stdout in early startup bug
...
this caused a failure to boot on some boards if they tried to print
messages in early startup code before hal was initialised
thanks to @Shadowru for reporting the issue
2020-02-12 13:51:10 +11:00
Matt Lawrence
e6f32f4572
AP_HAL_ChibiOS: Fix waf --default-parameters
...
If a defaults.parm file was present in the hwdef, waf ignored the --default-parameters=xyz.parm command line argument. This will allow it to use that command line argument specified file.
2020-02-11 11:00:01 +11:00
Andrew Tridgell
12f31e328f
HAL_ChibiOS: fixed dshot docs for Pixhawk4
2020-02-08 14:15:37 +11:00
Randy Mackay
76c982ced8
AP_HAL_CHibiOS: update Pixhawk4 README to 16 pwm outputs
...
also correct Main PWM ouput's number of groups
2020-02-08 14:14:32 +11:00
Andrew Tridgell
bdef7d7158
HAL_ChibiOS: fixed default fast sampling on CubeOrange and Durandal
2020-02-05 12:48:51 +11:00
Andrew Tridgell
e0cd790505
HAL_ChibiOS: fixed spektrum RC input on Pixracer
...
RCININT is inverted compared to RCIN, so need to enable SBUS_INV pin
2020-02-05 10:45:36 +11:00
Randy Mackay
a71ae54d3a
AP_HAL: add RCOutput::get_output_mode_banner
2020-02-04 12:23:33 +11:00
giacomo892
529f067914
HAL_ChibiOS: save more flash on SuccexF4
2020-02-02 06:02:59 +11:00
giacomo892
23a42b1914
HAL_ChibiOS: disable parachute and sprayer on SuccexF4
2020-02-02 06:02:59 +11:00
Andrew Tridgell
8b2629bfc1
HAL_ChibiOS: save 7k flash for boards close to flash limit
2020-02-01 06:58:43 +11:00
Andrew Tridgell
c8395bb2c1
HAL_ChibiOS: use blocking semaphore for new_input()
...
this prevents a race where we continually fail to get new input
2020-01-31 11:09:07 +11:00
Andrew Tridgell
05f095f338
HAL_ChibiOS: fixed build
2020-01-31 11:09:07 +11:00
Andrew Tridgell
3fe3c8ecdc
HAL_ChibiOS: implement pulse_input_enable()
...
and cleanup use of mutexes in RC input
2020-01-31 11:09:07 +11:00
Andrew Tridgell
9c0cf0871b
HAL_ChibiOS: added disable() API for pulse input
2020-01-31 11:09:07 +11:00
Andrew Tridgell
27c114828b
HAL_ChibiOS: fixed bitmask error on storage erase
2020-01-31 11:06:29 +11:00
Peter Barker
bff97eb150
AP_HAL_ChibiOS: assert that storage size is an even number of storage-lines
2020-01-30 19:53:02 +11:00
Andrew Tridgell
a7b6887f44
HAL_ChibiOS: added a f303-Universal build target
2020-01-26 09:12:55 +11:00
Andrew Tridgell
7a812a5516
HAL_ChibiOS: use cortex m7 instructions on F7/H7
2020-01-25 08:50:09 +11:00
Peter Barker
73c32f403b
AP_HAL_ChibiOS: do not compile EKF2 for MatekF405-Wing
2020-01-21 11:53:18 +11:00
Peter Barker
e189b17efb
AP_HAL_ChibiOS: remove unused AnalogIn fields
2020-01-21 10:06:18 +11:00
Andrew Tridgell
a8501a91c7
HAL_ChibiOS: fixed handling of write mutex
...
this fixes an issue with log download on USB and mavlink throughput
caused lock contention. The issue was introduced with the changes for
unbuffered writes recently (does not affect stable releases)
2020-01-21 08:37:25 +11:00
Andrew Tridgell
982cff0695
AP_HAL_ChibiOS: make all semaphores recursive
...
the cost is very similar and this prevents an easy coding error which
can occur on less used code paths
2020-01-19 20:19:30 +11:00
Andrew Tridgell
0aae8e13c1
AP_HAL_ChibiOS: use take_blocking instead of HAL_SEMAPHORE_BLOCK_FOREVER
...
this makes for cleaner and smaller code as the failure case is not
needed
2020-01-19 20:19:30 +11:00
Andrew Tridgell
7ce771734c
HAL_ChibiOS: fixed fw build size for several boards
2020-01-19 07:24:57 +11:00
Andrew Tridgell
320a703afc
HAL_ChibiOS: fixed UART DMA config for ALT() pins
2020-01-19 07:24:57 +11:00
Andrew Tridgell
0cc6d4a70b
HAL_ChibiOS: added support for FrSky R9 flight controller
2020-01-18 17:00:44 +11:00
Andrew Tridgell
f7a65afa67
HAL_ChibiOS: allow for baro with no arguments
2020-01-18 17:00:44 +11:00
Andrew Tridgell
83d3488eb2
HAL_ChibiOS: fixed ZubaxGNSS board ID
2020-01-18 15:44:51 +11:00
Michel Pastor
6fa09c05c2
HAL_ChibiOS: added SuccexF4 board
2020-01-18 14:54:29 +11:00
Andrew Tridgell
ce4120e803
HAL_ChibiOS: disable parachute and sprayer on MatekF405-Wing
...
fixes build size
2020-01-18 13:48:48 +11:00
Andrew Tridgell
a935b764f4
HAL_ChibiOS: fixed UART DMA issue on F4
...
disabling in rx irq callback should only be done on F3
2020-01-18 07:13:11 +11:00
Andrew Tridgell
a220b37bf8
HAL_ChibiOS: use 4k bouncebuffer for sdcard
...
match AP_Logger IO size
2020-01-18 07:13:11 +11:00
Andrew Tridgell
2b7bffa906
HAL_ChibiOS: adjust dma reserve allocation
...
use larger target and allow for smaller allocation
2020-01-18 07:13:11 +11:00
Andrew Tridgell
9554103418
HAL_ChibiOS: don't extend alloc of iomcu uart
2020-01-18 07:13:11 +11:00