Commit Graph

14445 Commits

Author SHA1 Message Date
Michael Keller 43e90da1b0
[H7] Fix TIM13 and TIM14 def in timer_def.h (#8388)
[H7] Fix TIM13 and TIM14 def in timer_def.h
2019-06-09 12:41:08 +12:00
Michael Keller 843852e744
[H7] Cleanup io (#8391)
[H7] Cleanup io
2019-06-09 12:06:46 +12:00
Michael Keller d0f46de73e
Add RacePIT mini (#8387)
Add RacePIT mini
2019-06-09 11:57:59 +12:00
jflyper 7db7431aeb Use DEFW instead of DEFA for UART dmaopts 2019-06-08 11:44:37 +09:00
MJ666 252f49872f Add RacePIT mini
RacePIT documentation update
2019-06-07 16:07:04 +02:00
jflyper 8185ee03ef [H7] Cleanup / consolidate io.c and io.h 2019-06-07 21:22:41 +09:00
Miguel Angel Mulero Martinez 240975f736 Refactor of OSD fonts 2019-06-07 12:35:02 +02:00
jflyper 246fba741b NUCLEOH743 update for USE_DMA_SPEC 2019-06-07 14:46:28 +09:00
Michael Keller e3c8b1b46a
Support compilation of EXST (EXTERNAL STORAGE) targets (#8377)
Support compilation of EXST (EXTERNAL STORAGE) targets
2019-06-07 12:38:14 +12:00
jflyper 16f2392458 [H7] Add USE_DMA_SPEC to H7 2019-06-07 08:00:52 +09:00
Michael Keller c6041e1ed6
[NUCLEOH743] Add missing USE_ADC (#8383)
[NUCLEOH743] Add missing USE_ADC
2019-06-07 09:19:43 +12:00
Michael Keller c57d858774
Remove second symbol in the Throttle OSD element (#8372)
Remove second symbol in the Throttle OSD element
2019-06-07 09:17:24 +12:00
Michael Keller 62a815bb10
[H7] Use channel member for H7 DMA request (#8382)
[H7] Use channel member for H7 DMA request
2019-06-07 09:16:28 +12:00
Dominic Clifton 0632eeb934 Support compilation of EXST (EXTERNAL STORAGE) targets
- Initial

- Adjust load address of EXST firmware.

- Add helper script to pad an EXST binary to the expected size.

Padded firmware currently required due to a bug in the flash/dfu code
which causes anything less than a flash page size to be truncated when
uploading new firmware via the bootloader DFU.

- Minor linker script cleanups.

- STM32H7.mk change hardcoded TARGET_FLASH (384) to FIRMWARE_SIZE

- Delete unused configuration section entries from linker
scripts.

- Increase EXST firmware size to 448K.
It turns out 384K wasn't enough for a feature-complete firmware.

- Update pad-exst.sh to use 448K by default.

- Move the EXST file generation to the makefile.

[EXST] Embed firmware hash in ELF

- Add debug marker at end of CODE_RAM section.

It was found when transferring firmware to the H7 RAM via a BMP probe
using the 'gdb load' command, that the last few bytes were not
transferred, this debug marker is present to ensure all needed parts of
the firmware are present.

Example memory view of corrupted bytes at end of transfer:
0x2407DFAE  DEB90000 DEB9DEB9 DEB9DEB9 DEB9DEB9  ..¹Þ¹Þ¹Þ¹Þ¹Þ¹Þ¹Þ
0x2407DFBE  000000B9 00000000 00000000 00000000  ¹...............

should be:
0x2407DFAE  DEB9DEB9 DEB9DEB9 DEB9DEB9 DEB9DEB9  ¹Þ¹Þ¹Þ¹Þ¹Þ¹Þ¹Þ¹Þ
0x2407DFBE  00000000 00000000 00000000 00000000  ................

- Remove debug marker in EXST firmware.

STM32H750_EXST - Provide space for empty hash.

* Bootloader will run firmware if hash is empty, without re-verifying
RAM content against hash.
* CODE_RAM always shows as 100% usage.

STM32H750_EXST - Use a specific ELF section for a hash.

Two benefits:
1) CODE_RAM no-longer shows 100% full, since it is no-longer
padded/filled.
2) Prepares the code so that objcopy can be used to inject the hash
into the ELF.

STM32H750_EXST - Patch MD5 into ELF.

Process is now as follows.

* Binary generated (via make target dependency) so there is something to
hash.
* Binary copied (and padded).
* MD5 Hash computed.
* xxd patch file generated from hash.
* xxd hash patch applied to copy of binary at correct address.
* elf .exst_hash section dumped.
* hash injected into into dumped section.
* elf .exst_hash section updated with updated dumped section.

Replace EXST with USE_EXST.

Add documentation for the EXST firmware format.

Add table formatting to EXST documentation.

Update bootloader block.

Update H750 EXST linker script to use block format 0x00.

Use .exst.elf and .exst.bin on the exst files.

Add 'no checksum' to list of checksum hash methods.

Update EXST build system so it generates the following sets of files

obj/main/betaflight_TARGET.elf
obj/main/betaflight_TARGET.map
obj/main/betaflight_TARGET_EXST.elf
obj/betaflight_VERSION_TARGET.bin
obj/betaflight_VERSION_TARGET.bin.md5
obj/betaflight_VERSION_TARGET_EXST.bin

Update EXST build system to be more user-friendly.

* user-flashable files are generated in the normal place.
* Intermediate files are generated in `obj/main/...`
* Removes the `exst` goal.
* Adds .hex generation for EXST builds based on the patched .elf.

To build EXST targets, simply use `make TARGET=x` as normal and flash
the resulting `.hex/.bin` files rather than the .exst.bin file.

Developers can use either the `.elf` or patched `_EXST.elf` file as is
appropriate for their needs.

EXST documentation updated to match changes to build system.
2019-06-07 09:14:49 +12:00
jflyper 76b508d17a [H7] Fix timer_def.h for TIM13 and TIM14 2019-06-06 15:23:04 +09:00
Michael Keller 0c8c671cde
Support MPU6000 for KakuteF7 (#8375)
Support MPU6000 for KakuteF7
2019-06-06 03:11:32 +12:00
Michael Keller b5b18863dc
Fix GPS coordinate in the OSD between 0 and -1 (#8374)
Fix GPS coordinate in the OSD between 0 and -1
2019-06-06 01:33:16 +12:00
jflyper 97602c13b3 [NUCLEOH743] Add missing USE_ADC 2019-06-05 18:14:46 +09:00
jflyper e18c4ec662 [H7] Use channel member for H7 DMA request 2019-06-05 18:13:17 +09:00
Michael Keller d486c47bc1
Removed 'slots' from the adjustment range configuration. (#8369)
Removed 'slots' from the adjustment range configuration.
2019-06-05 18:51:02 +12:00
Michael Keller d3a70bc635 Added comment about removed parameter in CLI. 2019-06-05 13:30:30 +12:00
Miguel Angel Mulero Martinez a12f425325 Fix GPS coordinate in the OSD between 0 and -1 2019-06-04 16:47:18 +02:00
Michael Keller 5918177be9
[ADC] Remove bogus inclusion of drivers/accgyro/accgyro.h (#8373)
[ADC] Remove bogus inclusion of drivers/accgyro/accgyro.h
2019-06-05 01:08:28 +12:00
Michael Keller 32416c7972
Baro fixes 1 (#7711)
Baro fixes 1
2019-06-05 01:07:24 +12:00
Michael Keller d16efe6885
SPRACINGF3NEO - Remove some unneeded target config. (#8332)
SPRACINGF3NEO - Remove some unneeded target config.
2019-06-05 01:02:56 +12:00
mikeller 56f3788cff Fixed tests for adjustment ranges. 2019-06-05 00:56:41 +12:00
mikeller 75b1c0d4ce Removed 'slots' from the adjustment range configuration. 2019-06-05 00:56:37 +12:00
Dominic Clifton 2c468ec334 SPRACINGF3NEO - Remove some unneeded target config.
The defaults in pgResetFn_barometerConfig and pgResetFn_compassConfig
are fine.
2019-06-04 14:05:38 +02:00
Michael Keller c28e7cf8e3
[H7] Remove excess member from timerHardware_s (#8368)
[H7] Remove excess member from timerHardware_s
2019-06-04 21:14:54 +12:00
jamming 898ba30cca Support MPU6000 for KakuteF7 2019-06-04 09:03:25 +08:00
jflyper 0b434369d0 Remove bogus inclusion of drivers/accgyro/accgyro.h 2019-06-03 22:28:48 +09:00
Miguel Angel Mulero Martinez 97d87bd16b Change the home symbol to free the triangle character in OSD 2019-06-03 11:39:48 +02:00
Miguel Angel Mulero Martinez ba99bdae21 Remove second symbol in the Throttle OSD element 2019-06-03 08:44:45 +02:00
Michael Keller 5673310277
Fixed typo in help text for CLI 'timer' command. (#8365)
Fixed typo in help text for CLI 'timer' command.
2019-06-03 16:09:34 +12:00
jflyper f0e5363703 Remove excess member from timerHardware_s 2019-06-02 21:32:03 +09:00
Michael Keller 7f715143da
Consolidate F7 and H7 VCP HAL code except usbd_conf.c (#8364)
Consolidate F7 and H7 VCP HAL code except usbd_conf.c
2019-06-02 16:45:29 +12:00
mikeller cb207e4637 Fixed typo in help text for CLI 'timer' command. 2019-06-02 12:19:16 +12:00
Michael Keller 2b19e8ced8
Use the new Speed and Flight Distance OSD symbols (#8348)
Use the new Speed and Flight Distance OSD symbols
2019-06-01 22:27:40 +12:00
Michael Keller e713cf0bdd
[VIVAF4AIO] Fix for non-working ACC (#8349)
[VIVAF4AIO] Fix for non-working ACC
2019-06-01 21:55:38 +12:00
Michael Keller ee1fbc8711
Merge pull request #8356 from IllusionFpv/gps-new-descent-distance-fix
Add minimum descent distance
2019-06-01 21:47:38 +12:00
Michael Keller 23ff506241
Clean up use of MAX7456_SPI_CLK and MAX7456_RESTORE_CLK (#8358)
Clean up use of MAX7456_SPI_CLK and MAX7456_RESTORE_CLK
2019-06-01 21:42:03 +12:00
Michael Keller dd2c83f6a4
[SmartAudio] Fixed power logic for SA2.0 and 1.0 (#8350)
[SmartAudio] Fixed power logic for SA2.0 and 1.0
2019-06-01 21:39:28 +12:00
jflyper 6beeca38c3 Consolidate F7 and H7 VCP HAL code except usbd_conf.c 2019-06-01 11:57:50 +09:00
blckmn 80d4a0339a Removing VIVAF4AIO target 2019-06-01 11:27:15 +10:00
Nicola De Pasquale f6bd706cb7 This is a combination of 4 commits.
prevents newDescentDistanceM variable from going negative

fix lineSlope and lineOffsetM too

better solution

removed spaces
2019-05-31 20:47:31 +02:00
root dd388ff20d typo in src/main/drivers/max7456.c 2019-05-31 02:20:13 +00:00
root 77e2a1e29e Clean up use of MAX7456_SPI_CLK and MAX7456_RESTORE_CLK
These are set in many targets, but they are exactly the same as set in #6871

Notable exceptions: NOX, IMPUSERCF3 are set to clock data into the MAX7456 at 5MHz
2019-05-31 02:06:12 +00:00
functionpointer 7f4ef5f2d6 [SmartAudio] improved readability of vtxSASetPitMode 2019-05-30 23:49:04 +02:00
Miguel Angel Mulero Martinez 26f5c02331 Make OSD Speed fixed length 2019-05-30 19:18:47 +02:00
functionpointer 1b710ca3c8 [SmartAudio] fix variable names 2019-05-29 15:45:44 +02:00