Commit Graph

14445 Commits

Author SHA1 Message Date
Dominic Clifton 2466f43abd Remove USE_RTC6705_CLK_HACK.
For hardware SPI the GPIO pin is in Alternate Function mode, so setting
the bit in BSRR (via IOHi) won't have any affect on the IO level.
2019-05-21 18:50:03 +02:00
Dominic Clifton 165a760f1a Fix USE_RTC6705_CLK_HACK resource checking.
vtxCLKPin is only used by RTC6705 SoftSPI driver.

On targets using hardware RTC6705 that defined USE_RTC6705_CLK_HACK this
was enabled this prevented the VTX from initialising.

SPRacingF3NEO/SPRacingF4NEO.
2019-05-21 18:50:03 +02:00
jflyper 29dc861c8e NUCLEOH743 target 2019-05-22 01:29:38 +09:00
Dominic Clifton f6214a4c35 SPRacingF3NEO - Fix compilation, some baro code is included but the defines and src definitions were missing. 2019-05-21 15:11:56 +02:00
Michael Keller 1541466dac
[H7] H743 system and build files (#8308)
[H7] H743 system and build files
2019-05-22 00:55:36 +12:00
pkruger 9ae53d94d0
Merge branch 'master' into 8107-osd-profile-names 2019-05-21 21:22:50 +10:00
laz2wiringpi c1510c9f27 USE_RX_RSSI_DBM Split from pr 8042
rssi dbm osd negitive values
rename max to min
2019-05-20 22:19:04 -04:00
Michael Keller c330a905ea
Link Quality multiple sources without Aux DUP of 8232 (#8247)
Link Quality multiple sources without Aux DUP of  8232
2019-05-21 12:33:32 +12:00
laz2wiringpi e9a406f447 Link Quality without Aux
fix indent , move unused
remove premature optimisation
Use prior code for osd element calc
unit test add crsf for scaleCrsfLq
unittest typo
rx 0-100
elements simplify osdElementLinkQuality refactor
share  one 16 bit var
2019-05-20 18:10:37 -04:00
jflyper dacb709e38 [H7] System and build files
Basic system files

- Initial system files

- Additional RCC clock enables for testing

- Coding style tidy (target/system_stm32h7xx.c) and enable MCO for testing

- Clock generator changes for SPI support

- Setup MPU for "D2 SRAM as write-through by MPU, call it DMA_RAM"

- Drop USB clock enabling from driver/system_stm32h7xx.c

- stm32h7_hal_conf.h for persistent object storage

Basic build files

STM32H7.mk changes

- STM32H7.mk for USE_UART and USE_SERIAL_RX

- Modify STM32H7.mk for inclusion of SPI driver

- STM32H7.mk change for D2 SRAM as write-through by MPU, call it DMA_RAM

- STM32H7.mk for DMA facility

- STM32H7.mk for [TIMER] For "Initial cut without Dshot"

- STM32H7.mk change for [LED_STRIP] Add LED_STRIP

- STM32H7.mk for [ADC] Initial cut without internal sensors

- STM32H7.mk for Enable I2C (HAL)

- STM32H7.mk for "Enable HAL-based DShot (no burst yet)"

- STM32H7.mk change for transponder

- STM32H750 - Add platform support.

- STM32H750 - Add H750 MCU ID.

- STM32H743 - Add MCU ID.

STM32H7.mk change for "Burst Dshot First working version"

Fix boot loader request

STM32H750 - Add PERSISTENT memory support.

STM32H743 - Add PERSISTENT memory support.

Use PERSISTENT memory for bootloader request.

Using DTCM RAM did not work on H750.

Change flash latency from 4WS to 2WS

STM32H750 - Fix reset of RCC_CR to reset value.

Note: The comment above the code didn't match code.

STM32H750 - Remove duplicate startup code, see SystemClock_Config.

STM32H7.mk changes for Port RTC backup register based persistent storage for H7

Make use of persistent object facility

Force reboot after possible boot loader activity

Enable CRS

stm32h7xx_hal_conf.h for H7 - QuadSPI support

stm32h7xx_hal_conf.h for STM32H7 - SDCard/SDIO using HAL Driver

stm32h7xx_hal_conf.h : Fix systick to be 0x00 instead of ST's default 0x0F.
This fixes the ability to use HAL_Delay() from an ISR, as required by
the ST's USB Library.
Specifically, systick handler must be a higher priority than the USB
FS/HS Interrupt handler priorities.

stm32h7xx_hal_conf.h for Add PID-Audio support

source.mk for H7 - QuadSPI support

drivers/system_stm32h7xx.c for H7 - QuadSPI support

STM32H7.mk for H7 - QuadSPI support

STM32H7.mk change for CDC-HID support

common_pre.h updates

- Scheduler parameters to same as F4 & F7

- Enable some important default features

- STM32H7 - Enable ITCM RAM.
Requires voltage scaling fix from commit
6e684c609310024141c43de484a5e78103140e3c

STM32H750 - Disable caches before reboot.

Prior to this when EEPROM_IN_RAM was used the persistent data section
would have corruption immediately after a reboot, prior to even the
Reset_Handler code having been executed.

drivers/system_stm32h7xx.c Touch-up after 2019-02-02 rebase

STM32H7 - Write protect ITCM ram.

Remove local defs for RESET_xxx symbols

STM32H750 - EXST firmware reboots to FLASH bootloader, rather than ROM bootloader.

STM32H750 - Disable some MCO/clock testing code as the pins interfere with new targets.

STM32H750 - Don't disable data caches after bootloader.

Observed that disabling dcache after cold boot with BOOT pin high causes
segfault.

drivers/system_stm32h7xx.c for STM32H7 - SDCard/SDIO using HAL Driver

drivers/system_stm32h7xx.c change for Move SDMMC clock init into SDIO driver

drivers/system_stm32h7xx.c: Cleanup some Clock/MCO/GPIO initialisation code.

drivers/system_stm32h7xx.c for Reset if systick is stuck.

STM32H7 - Fix missing CPU voltage scaling.

It appears this was the cause of other seemingly random issues:

* Crash soon after enabling USB.
* Flash write failures.
* Random un-explainable crashes.

Change RCC_HSE_BYPASS to RCC_HSE_ON

Even Nucleo-H743 seems to work without setting HSE_BYPASS.

STM32H7xx - Move memory section initialisation earlier into the init sequence.

Allows startup-code/libs/etc to be moved into different memory regions.

Don't touch vector table in EXST targets

STM32H750_EXST - fix boot loop

target/system_stm32h7xx.c for STM32H7 - SDCard/SDIO using HAL Driver

target/system_stm32h7xx.c change for Fix SD card clock speed selection

STM32H750_EXST - Reset MPU regions on boot.

* Failure to reset regions will result in mem-fault if bootloader has
configured a similar region.

STM32H750 - Fix missing include of platform.h in system_stm32h7xx.c

This caused the SDMMC peripheral clock to be un-configured (at reset
state) when USE_SDCARD_SDIO was defined.

Change MPU region number for DMA_RAM from 0 to 1

Avoid conflict with ITCM-RAM write protection.

STM32H7xx - HSERDY slow/stuck workarounds.

STM32H7xx - Fix region MPU number for SDIO.

* It was overwriting the previous region causing LED strip and
transponder issues.

Target/system_stmh7xx.c for Reset if systick is stuck.

startup/system_stm32h7xx.c change for non-caching DMA_RAM

H750 - Use SIZE optimization by default due to limited flash space.

STM32H7.mk for STM32H7 - SDCard/SDIO using HAL Driver

STM32H7.mk updates

- Decrease HSE_STARTUP_TIMEOUT to 1 second
* default is 5 seconds, which is too long when HSE gets stuck.

- Add PID-Audio support

Temporary override LINKER_DIR
2019-05-21 02:26:31 +09:00
Dominic Clifton 7b79e496e0 Delete unused code as requested. 2019-05-20 19:19:32 +02:00
jflyper b749d56d9e Ammend BMP085 driver for configurability of EOC and XCLR pin 2019-05-20 19:13:50 +02:00
Dominic Clifton eea9242d7b Baro fixes, cleanups and improvements.
* Add BARO debug mode.
* BMP085 - Fix EOC and XCLR initialisation.
* BMP085 - update previously dead code.
* BMP280 - Move t_fine out of the calibration data, since their usage is mixed.
* BMP280 - Move static_assert closer to definition.
2019-05-20 19:13:11 +02:00
Bruce Luckcuck 9081bd3338 Add CMS menu entry level control of forced reboot on changes
CMS menu items can now be defined with a `REBOOT_REQUIRED` flag. If the user changes flagged elements the the exit/save options will change to `EXIT&REBOOT` and `SAVE&REBOOT` - ensuring that the changed items will be handled properly. This should be used for options where runtime changes either won't take effect (because they are read at boot), or for items that could have unexpected behavior if changed.

Several appropriate menus have been updated to include the flag.

To accomodate the dynamic nature of the save/exit options, the individual options have been removed from the main menu and replaced with a `SAVE/EXIT` submenu. This is the same menu that is presented as the quick-access popup save menu (yaw-right). This menu will adapt to requiring a reboot if any flagged setting is changed. Additionally the `REBOOT_REQD` arming disabled reason will be set (cleared by the reboot).
2019-05-20 12:39:36 -04:00
Michael Keller 7cd030559d
Use RC Smoothing initialized settings rather than current PG values (#8282)
Use RC Smoothing initialized settings rather than current PG values
2019-05-21 03:14:26 +12:00
Michael Keller ae9f938cb5
Added selection by alternate function to CLI 'timer'. (#8306)
Added selection by alternate function to CLI 'timer'.
2019-05-21 02:40:11 +12:00
Michael Keller a1421e6fdc
Add timer info to CLI 'timer' command. (#8305)
Add timer info to CLI 'timer' command.
2019-05-21 02:33:29 +12:00
Michael Keller 40fc353f9f
Fixed printing of reset DMA options in 'diff'. (#8303)
Fixed printing of reset DMA options in 'diff'.
2019-05-20 20:02:04 +12:00
Michael Keller 1c98fc58d6
Merge pull request #8302 from mikeller/fix_uint32_t_printing
Fixed setting / printing of VAR_UINT32 values.
2019-05-20 19:59:10 +12:00
Michael Keller 1c313a9a02
Add gps rescue option for not climbing to highest altitude of flight (#8301)
Add gps rescue option for not climbing to highest altitude of flight
2019-05-20 19:58:52 +12:00
Michael Keller 70215cc758
Really fixed flash erasing. (#8300)
Really fixed flash erasing.
2019-05-20 19:57:13 +12:00
Michael Keller 32ac83757c
Add common_deprecated_post.h to flag deprecated target defines (#8299)
Add common_deprecated_post.h to flag deprecated target defines
2019-05-20 19:56:24 +12:00
Bruce Luckcuck 25435ea49c Add reboot required arming disabled flag, support for setting in MSP 2019-05-19 09:42:03 -04:00
Michael Keller a20274c27d
Add flash partitioning system (#8297)
Add flash partitioning system
2019-05-20 01:21:09 +12:00
Michael Keller 8e77c6a9f9
Adding configuration for the 'no-response' app. (#8295)
Adding configuration for the 'no-response' app.
2019-05-20 01:19:35 +12:00
mikeller f169176022 Add timer info to CLI 'timer' command. 2019-05-20 01:10:29 +12:00
mikeller d4cd3d8227 Added selection by alternate function to CLI 'timer'. 2019-05-20 00:54:06 +12:00
jflyper f5084a59bd Partitions are now accessed by types rather than indices 2019-05-19 20:32:52 +09:00
Nicola De Pasquale 1262dbf06f added altitude options 2019-05-19 12:09:27 +02:00
mikeller ab9b7ff366 Fixed printing of reset DMA options in 'diff'. 2019-05-19 18:55:29 +12:00
mikeller 8233e4d7a3 Fixed printing of VAR_UINT32 values. 2019-05-19 16:19:18 +12:00
Michael Keller b1d1fba775
Added kiss rates (#8251)
Added kiss rates
2019-05-19 13:52:47 +12:00
Nicola De Pasquale 40d390cfdc better code 2019-05-19 03:10:07 +02:00
Pieter Kruger 28182706a4 Add OSD profile names feature 2019-05-19 10:50:22 +10:00
Michael Keller dcfe551621
Add tenths of a second OSD timer precision option (#8290)
Add tenths of a second OSD timer precision option
2019-05-19 12:47:38 +12:00
Nicola De Pasquale c5adc0b549 first commit
fixes
2019-05-19 02:45:11 +02:00
mikeller babad40dcb Really fixed flash erasing. 2019-05-19 12:30:37 +12:00
Bruce Luckcuck 0bfb6120c6 Add common_deprecated_post.h to flag deprecated target defines 2019-05-18 18:51:06 -04:00
Dominic Clifton 92999681e3 Add flash partitioning system 2019-05-18 21:39:08 +09:00
Michael Keller ba047e0559
Fixed 'flash' make rule, added support for DFU flashing (requires 'dfu-util'). (#8254)
Fixed 'flash' make rule, added support for DFU flashing (requires 'dfu-util').
2019-05-18 23:37:21 +12:00
Michael Keller 4b5948cbd3
Prevent 'system_hse_mhz' from showing in non-F4 'diff'/'dump'. (#8256)
Prevent 'system_hse_mhz' from showing in non-F4 'diff'/'dump'.
2019-05-18 23:33:28 +12:00
Michael Keller 197796873d
Increase async FAT filesystem cache sectors to prevent blackbox header corruption (#8284)
Increase async FAT filesystem cache sectors to prevent blackbox header corruption
2019-05-18 19:13:28 +12:00
Michael Keller 1e1a0d968d
Remove deprecated USE_MULTI_GYRO (#8281)
Remove deprecated USE_MULTI_GYRO
2019-05-18 19:11:25 +12:00
Michael Keller a40873d3b7
Add CLI flash_verify command (#8279)
Add CLI flash_verify command
2019-05-18 19:04:38 +12:00
Michael Keller da7c54c590
Enabled Multi Gyro on OmnibusF4 Nano V7 (#8267)
Enabled Multi Gyro on OmnibusF4 Nano V7
2019-05-18 19:03:01 +12:00
mikeller 705b0e5316 Adding configuration for the 'no-response' app. 2019-05-18 18:58:04 +12:00
Michael Keller f22c68af1b
More ACC_x_ALIGN cleanup (#8287)
More ACC_x_ALIGN cleanup
2019-05-18 18:21:50 +12:00
Michael Keller 7eef491470
Update flash drivers to support QuadSPI (#8278)
Update flash drivers to support QuadSPI
2019-05-18 17:40:32 +12:00
Bruce Luckcuck d62a4f4b18 Add tenths of a second OSD timer precision option
Currently the timers support full second and hundredth of a second display precision. This adds a tenth of a second option.
2019-05-17 14:25:30 -04:00
Bruce Luckcuck c4d7c3b72b More ACC_x_ALIGN cleanup
Cleaned up more targets added after the initial removal.
2019-05-17 09:42:34 -04:00