Siddharth Purohit
cdf8e369f1
AP_HAL_ChibiOS: create UAVCAN agnostic CANIface driver
...
HAL_ChibiOS
2020-08-19 17:31:09 +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
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
c61cecdbc7
HAL_ChibiOS: report thread name in watchdog
2020-04-29 07:36:55 +10:00
Peter Barker
9ba2aecbb8
AP_HAL_ChibiOS: send statustext at regular intervals after watchdog reset
2020-03-31 14:30:11 +11:00
Peter Barker
a59c3670c8
AP_HAL_ChibiOS: stash lr_thd in watchdog hardfault handler
2020-03-19 16:03:58 +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
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
Mirko Denecke
b84dcd483d
AP_HAL_ChibiOS: remove unnecessary tabs and whitespaces
2019-10-21 08:01:56 +11:00
Andrew Tridgell
63f39c2bd6
HAL_ChibiOS: fixed build of iomcu firmware
2019-08-27 10:29:56 +10:00
Andrew Tridgell
16bdaaa1af
HAL_ChibiOS: added support for STM31F10x for AP_Periph
2019-08-27 10:29:56 +10:00
Andrew Tridgell
12dd33ac2b
HAL_ChibiOS: added logging of hardware fault information in watchdog
...
this may help trackdown software bugs that trigger hard faults
2019-07-19 16:02:41 +10:00
Andrew Tridgell
2d5e4dcfa2
HAL_ChibiOS: fixed SemLine data in WDOG msg
...
semline was being overwritten in the setup() call
2019-07-15 08:08:54 +10:00
Andrew Tridgell
0075b96f3a
HAL_ChibiOS: added uartH
2019-07-12 17:01:21 +10:00
Peter Barker
f5190d1bcc
AP_HAL_ChibiOS: use logger().WriteCritical(...) for WDOG message
2019-05-16 17:21:24 +10:00
Andrew Tridgell
0708b65c2d
AP_HAL_ChibiOS: added const for PersistentData
2019-05-15 15:33:48 +10:00
Andrew Tridgell
8d0bca6ba9
HAL_ChibiOS: log mavlink IDs and semaphore lines for watchdog
...
this gives a better chance of tracking down a hang
2019-05-15 15:33:48 +10:00
Andrew Tridgell
e3c80bf08f
HAL_ChibiOS: fixed bootloader build
2019-05-15 15:33:48 +10:00
Andrew Tridgell
d7a0eb42ee
HAL_ChibiOS: added logging of watchdog data
...
log MON msgs in the leadup to a watchdog, and log a WDOG message after
a watchdog reset
2019-05-15 15:33:48 +10:00
Andrew Tridgell
dbfe6b8019
HAL_ChibiOS: implement persistent_data for watchdog
...
this is a much simpler approach to persistent data
2019-05-15 15:33:48 +10:00
Andrew Tridgell
0461692ea5
HAL_ChibiOS: enable watchdog on IOMCU
2019-04-22 16:53:35 +10:00
Andrew Tridgell
2476927048
HAL_ChibiOS: don't call internalerror for iomcu
2019-04-22 16:53:35 +10:00
Andrew Tridgell
63d21d995a
HAL_ChibiOS: setup watchdog_reset internal error
2019-04-22 16:53:35 +10:00
Andrew Tridgell
54cbf8ea9e
HAL_ChibiOS: change to 2s timeout on watchdog
...
a bit more of a safety net against false positives for stable release
2019-04-22 16:53:35 +10:00
Andrew Tridgell
19526b5826
HAL_ChibiOS: implement scheduler->expect_delay_ms()
2019-04-22 16:53:35 +10:00
Andrew Tridgell
8100c71a96
HAL_ChibiOS: added commented out test code for watchdog
2019-04-22 16:53:35 +10:00
Andrew Tridgell
272c277056
HAL_ChibiOS: use BRD_OPTIONS to enable watchdog
2019-04-22 16:53:35 +10:00
Andrew Tridgell
c09df1ea7b
HAL_ChibiOS: added IWDG watchdog support
...
this resets the MCU if the main loop stops for 1 second
2019-04-22 16:53:35 +10:00
Andrew Tridgell
006583d812
HAL_ChibiOS: fixed iomcu build with flash driver
2019-04-11 13:22:53 +10:00
Andrew Tridgell
36f7116054
HAL_ChibiOS: implement flash driver
2019-04-11 13:22:53 +10:00
Andrew Tridgell
bd47aba5ca
HAL_ChibiOS: reduced delay time in main loop to 50us
...
this allows for faster loop rates, and seems to be enough in testing
2019-02-26 16:18:26 +11:00
Andrew Tridgell
24f6d6d647
HAL_ChibiOS: support microSD slowdown
...
allow use of BRD_SD_SLOWDOWN to slow down clock on microSD
2018-12-31 08:00:14 +11:00
Andrew Tridgell
7e777d8b28
HAL_ChibiOS: disable loop() delay for iofirmware
2018-10-30 13:00:48 +11:00
Andrew Tridgell
af4340d1d1
HAL_ChibiOS: enable analog input on IOMCU
2018-10-30 13:00:48 +11:00
Siddharth Purohit
87a2dea9d4
HAL_ChibiOS: disable features that require advanced dma
2018-09-19 12:14:15 +10:00
Siddharth Purohit
0f07480faf
HAL_ChibiOS: continue main_loop branching from main instead of allocating a separate thread
2018-09-19 12:14:15 +10:00
Andrew Tridgell
0201893f7c
HAL_ChibiOS: fixed peripheral power-up on fmuv5
...
we need to do the powerup before we initialise the UARTs
2018-07-13 07:34:30 +10:00
Andrew Tridgell
63a0a4979c
HAL_ChibiOS: delay peripheral power on for fmuv5
...
this should prevent SiK radios staying in the bootloader
2018-07-13 07:34:30 +10:00
Andrew Tridgell
0a5d287326
HAL_ChibiOS: support uartG
2018-06-29 08:17:38 +10:00
Andrew Tridgell
369ac5edd0
HAL_ChibiOS: save more space in the bootloader
2018-06-25 21:22:31 +10:00
Alexander Malishev
6b15b2f44f
HAL_ChibiOS: Enable sdcard on spi bus
2018-05-27 19:10:24 +10:00
Andrew Tridgell
e4ce2f532b
HAL_ChibiOS: make smaller builds possible
...
this allows for much smaller builds when you disable a lot of
options. This is part of an effort to create a bootloader of less than
16k using ChibiOS
2018-04-12 11:50:44 +10:00
Andrew Tridgell
01e9c55721
HAL_ChibiOS: fixed SPI bus speed on SPI3
...
and add optional bootup test of SPI bus speeds to help with porting to
new MCUs
2018-04-07 09:10:29 +10:00
Andrew Tridgell
306d35655e
HAL_ChibiOS: allow for bare board builds
...
this allows for a build with no UARTs, no SPI, no I2C, no PWM. Great
for initial board bringup with just USB
2018-03-02 12:52:50 +11:00
Andrew Tridgell
427e00dd41
HAL_ChibiOS: switched to system timer for AP_HAL::micros()
...
this uses the ChibiOS system timer instead of a separate GPT timer for
the core ChibiOS timer. The advantage is it saves us a timer, plus it
changes ChibiOS to use a 1MHz clock on its timer, which gives us
higher resolution for delays.
This has a remarkable effect on timing jitter, reducing it greatly
2018-02-14 18:27:00 +11:00
Andrew Tridgell
b7c4dea9d3
HAL_ChibiOS: gain back 250usec in loop time
...
if we have already called delay_microseconds_boost() then we know
we've given up time to drivers, so we can avoid the extra delay in the
HAL
2018-02-13 17:15:05 +11:00
Andrew Tridgell
aee6462deb
HAL_ChibiOS: enable I2C clearing on F412 board only
...
may be needed on other boards in the future, but for now we only know
its needed on an I2C 20789, which is rare
2018-02-08 17:36:33 +11:00
Siddharth Purohit
40142e5aef
ChibiOS: implement way to clear i2c bus by toggling clock line
2018-02-08 17:36:33 +11:00
Andrew Tridgell
23555f4c25
HAL_ChibiOS: allow for empty storage during bringup
...
useful when storage backend driver isn't written yet
2018-02-07 20:33:45 +11:00
Andrew Tridgell
f14a847b97
HAL_ChibiOS: rename classes to remove 'Chibi'
...
it is redundent as all classes are in ChibiOS namespace, and makes the
code harder to read
2018-01-15 11:46:02 +11:00