Commit Graph

1363 Commits

Author SHA1 Message Date
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