You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Note: Do not attempt to use any older BF configurator to flash an SP Racing H7 board, it will not work.
Note: The configurator does not support flashing the SPRacingH7EXTREME PX4 Edition, use DFU-UTIL, see below.
Via configurator with manual entry to SP Racing bootloader - use this method if you have erased firmware, bad firmware, etc
Enter SP Racing bootloader DFU mode (see below).
Ensure configurator shows DFU in top-right hand corner.
Disable "Full chip erase"
Enable "No reboot sequence"
Load the .hex file using "Load firmware local" button or via development build, see below.
Click "Flash Firmware" button.
Via configurator with automatic entry to SP Racing bootloader - use this method if you have firmware on the FC and the FC boots.
Disable "Full chip erase"
Disable "No reboot sequence"
Load the .hex file using "Load firmware local" button or via development build, see below.
Click "Flash Firmware" button, FC should reboot into SP Racing bootloader mode and flashing will be performed via DFU which should appear in top right-hand corner while flashing.
Firmware upgrade procedure via USB.
Enter SP Racing bootloader DFU mode (see below).
Computer should detect USB DFU device. Install DFU drivers as required, see Betaflight wiki/manual.
Upload firmware with DFU util (minimum version = v0.9) as follows:
LED flashes ON then OFF every two second. Release BIND the button after 7 flashes. Remove power to FC if you need to abort. WARNING: Releasing button after the 15th LED flash will erase the CPU requiring it to be sent back to the factory for re-programming at your expense!
FC will erase firmware on the external flash chip, it happens very quickly.
After erasing the led with flash quickly 10 times. Any other patterns indicates failure.
Wait till LED flashes slowly again.
Press and HOLD BIND button.
LED flashes ON then OFF every two second. Release BIND the button after 10 flashes. Remove power to FC if you need to abort. WARNING: Releasing button after the 15th LED flash will erase the CPU requiring it to be sent back to the factory for re-programming at your expense!
FC will load firmware from SD card and flash external flash chip with new firmware, it happens very quickly.
After flashing the led with flash quickly 10 times. Any other patterns indicates failure.
Running different firmware from SD card.
Place .exst (4.0) or .bin (4.1 onwards) on SD card as CFEXSTFW.BIN
Bootloader will attempt to load firmware from SD card before attempting to load firmware from external flash, bootloader will only do this if the SD card is detected.
You can have two different firmware revisions on your FC, one on the SD card, one on the External flash. However if the configuration format between the two firmware revisions is not IDENTICAL then the firmware that is loaded will reset the configuration and/or leave it in an invalid state. You may need to reset the config manually.
Note:
If no SD card is present, or the file is missing, the bootloader will will attempt to load firmware from the external flash immediately.
If the file cannot be read, the bootloader will display the LED pattern for 'SD read failed'.
If there is an error with the file, i.e. it can be read, but is not valid, then the bootloader will display the LED pattern for 'Firmware verification failed'.
It's also possible to compile betaflight so it stores it's config in a file on the SD card. This allows you to insert an SD card with firmware that loads it's config from the SD card and also have firmware on the external flash that loads its config from the external flash. See betaflight source code for this experimental feature and CONFIG_IN_SDCARD instead of CONFIG_IN_EXTERNAL_FLASH when compiling.
Entering SPRacing Bootloader DFU mode.
The SPRacingBootloader DFU mode can be used to perform firmware updates, it is not the same as CPU ROM DFU bootloader which is for developers only.
There are two methods:
using BIND button (or BIND pads on SPRacingH7NANO)
Power off FC
Hold BIND button.
Power on FC with USB cable attached.
Wait for LED to flash rapidly.
Release BIND button to enter SP Racing Bootloader DFU mode. LED flashes slowly.
using configurator CLI.
If you have BF 4.0 firmware.
Go to the CLI.
enter bl and press return.
FC reboots, LED flashes slowly.
If you have BF 4.1 firmware.
Go to the CLI.
enter bl flash and press return.
FC reboots, LED flashes slowly.
Note: the default bootloader was changed from FLASH to ROM between 4.0 and 4.1 by @mikeller in this PR - betaflight#8429
SPRacing bootloader functions
When holding the BIND button down in SP Racing Bbootloader mode, each LED flash indicates a different function:
1 Load firmware.
2 Launch loaded firmware in RAM (for developers).
3 Clear firmware in RAM.
4 Enter CPU ROM DFU bootloader.
5 Reboot.
6 Erase config on external flash.
7 Erase firmware on external flash.
8 Erase entire external flash.
10 Flash firmware from file on SD card.
15 Erase CPU bootloader (DO NOT DO THIS - You will have to return the FC to the factory for reprogramming).
16 Erase external flash reserved area.
Failure patterns.
When the bootloader can't do something, it will give a failure pattern. The patterns starts with a few quick flashes, then some slow flashes. Count the slow flashes and use the table below.
There are other codes, if you experience them contact SP Racing support with your symptoms.
Bin/Hex files
Both SD card and DFU flashing methods require BINARY format files. The BF build system generates .hex files only download here, however these can be converted to .bin files using hex2bindownload
20190421 only - Flip-over-after-crash feature causes arming issue. See Will not re-arm using DSHOT600 or 1200 #3, workaround: disable it, or use newer firmware (confirmed fixed).
20190421 confirmed. On some ESCs the ESC startup motor tones are heard twice after booting up with battery connected. There is an issue causing the motor outputs to be suspended after they are first initialized, the root cause is currently unknown and requires investigation, however this issue does not affect flight.
20190805 and older - Bi-Directional/DSHOT & RPM Filter not available in firmware. Initial RPM filter support added in 20190813 firmware. The feature was delayed, primarily due to ST Micros not releasing the LL drivers in HAL 1.3 library. HAL 1.4 library with LL support has now been merged into master, work is underway to update the DSHOT code to support bi-directional telemetry which is required for RPM filter. @joelucid the author of the RPM filter code has been provided with an H7EXTREME for development purposes. The H7 hardware itself fully supports and was designed for bi-directional DSHOT. Please provide feedback on RPM filter support issues here: [H7] LL-Dshot support betaflight/betaflight#8712 - Note you'll need new ESC firmware with DSHOT GCR support. e.g. https://jflight.net/
20190718 and newer. SPRACINGH7EXTREME only. The custom gyro settings are overridden by the configurator when saving anything on the "Configuration" page. The issue is due to the current configurator not knowing how to handle the new CUSTOM setting required for the 45 degree gyro. A configurator update is available, PR Add support for custom gyro alignment. betaflight/betaflight-configurator#1580, recent development builds on the link above include this fix. To workaround this issue issue with an older configurator use the following commands after in the CLI.
NOTE: Now that the SPRacingH7 flight controller support is officially merged into Betaflight please report bugs with firmware or configurator on the Betaflight issue tracker where they will be seen by all the Betaflight developers.
The text was updated successfully, but these errors were encountered:
Firmware Upgrade
This document is intended for the following FCs.
The SPRacingH7ZERO and SPRacingH7EXTREME can be upgraded by USB or SD Card, The SPRacingH7NANO does not have an SD card socket.
The instructions below were initially written for the SPRacingH7EXTREME, if you have an H7ZERO or H7NANO update filenames as appropriate.
Do not flash SPRacingH7EXTREME firmware onto an H7NANO or H7ZERO, or vice versa.
Firmware upgrade procedure via configurator.
All new development builds of the betaflight configurator now include EXST flashing support.
An up-to-date configurator is required, grab the latest one from here:
https://github.com/spracing/betaflight-configurator/releases
Initial support was added in https://github.com/spracing/betaflight-configurator/releases/tag/spracing-20190816 and will be in the official release of 10.6.0 when available.
Note: Do not attempt to use any older BF configurator to flash an SP Racing H7 board, it will not work.
Note: The configurator does not support flashing the SPRacingH7EXTREME PX4 Edition, use
DFU-UTIL
, see below.Via configurator with manual entry to SP Racing bootloader - use this method if you have erased firmware, bad firmware, etc
Via configurator with automatic entry to SP Racing bootloader - use this method if you have firmware on the FC and the FC boots.
Firmware upgrade procedure via USB.
BF 4.0:
dfu-util -D betaflight_4.0.0_SPRACINGH7EXTREME_EXST.exst -s 0x97CE0000:leave
dfu-util -D betaflight_4.0.0_SPRACINGH7NANO_EXST.exst -s 0x97CE0000:leave
dfu-util -D betaflight_4.0.0_SPRACINGH7ZERO_EXST.exst -s 0x97CE0000:leave
BF 4.1 onwards:
dfu-util -D betaflight_4.1.0_SPRACINGH7EXTREME.bin -s 0x97CE0000:leave
dfu-util -D betaflight_4.1.0_SPRACINGH7NANO.bin -s 0x97CE0000:leave
dfu-util -D betaflight_4.1.0_SPRACINGH7ZERO.bin -s 0x97CE0000:leave
PX4 edition:
dfu-util -D betaflight_4.2.3_SPRACINGH7EXTREME-W25Q128JV_75194ebefb.bin -s 0x90F90000:leave
Firmware upgrade procedure via SD card.
BF 4.0
copy betaflight_4.0.0_SPRACINGH7EXTREME_EXST.exst U:\CFEXSTFW.BIN
copy betaflight_4.0.0_SPRACINGH7NANO_EXST.exst U:\CFEXSTFW.BIN
copy betaflight_4.0.0_SPRACINGH7ZERO_EXST.exst U:\CFEXSTFW.BIN
BF 4.1 onwards:
copy betaflight_4.1.0_SPRACINGH7EXTREME.bin U:\CFEXSTFW.BIN
copy betaflight_4.1.0_SPRACINGH7NANO.bin U:\CFEXSTFW.BIN
copy betaflight_4.1.0_SPRACINGH7ZERO.bin U:\CFEXSTFW.BIN
where
U:
is your SD card.Running different firmware from SD card.
BF 4.0
copy betaflight_4.0.0_SPRACINGH7EXTREME_EXST.exst U:\CFEXSTFW.BIN
copy betaflight_4.0.0_SPRACINGH7NANO_EXST.exst U:\CFEXSTFW.BIN
copy betaflight_4.0.0_SPRACINGH7ZERO_EXST.exst U:\CFEXSTFW.BIN
BF 4.1 onwards:
copy betaflight_4.1.0_SPRACINGH7EXTREME.bin U:\CFEXSTFW.BIN
copy betaflight_4.1.0_SPRACINGH7NANO.bin U:\CFEXSTFW.BIN
copy betaflight_4.1.0_SPRACINGH7ZERO.bin U:\CFEXSTFW.BIN
where
U:
is your SD card.You can have two different firmware revisions on your FC, one on the SD card, one on the External flash. However if the configuration format between the two firmware revisions is not IDENTICAL then the firmware that is loaded will reset the configuration and/or leave it in an invalid state. You may need to reset the config manually.
Note:
It's also possible to compile betaflight so it stores it's config in a file on the SD card. This allows you to insert an SD card with firmware that loads it's config from the SD card and also have firmware on the external flash that loads its config from the external flash. See betaflight source code for this experimental feature and
CONFIG_IN_SDCARD
instead ofCONFIG_IN_EXTERNAL_FLASH
when compiling.Entering SPRacing Bootloader DFU mode.
The SPRacingBootloader DFU mode can be used to perform firmware updates, it is not the same as CPU ROM DFU bootloader which is for developers only.
There are two methods:
If you have BF 4.0 firmware.
bl
and press return.If you have BF 4.1 firmware.
bl flash
and press return.Note: the default bootloader was changed from FLASH to ROM between 4.0 and 4.1 by @mikeller in this PR - betaflight#8429
SPRacing bootloader functions
When holding the BIND button down in SP Racing Bbootloader mode, each LED flash indicates a different function:
1 Load firmware.
2 Launch loaded firmware in RAM (for developers).
3 Clear firmware in RAM.
4 Enter CPU ROM DFU bootloader.
5 Reboot.
6 Erase config on external flash.
7 Erase firmware on external flash.
8 Erase entire external flash.
10 Flash firmware from file on SD card.
15 Erase CPU bootloader (DO NOT DO THIS - You will have to return the FC to the factory for reprogramming).
16 Erase external flash reserved area.
Failure patterns.
When the bootloader can't do something, it will give a failure pattern. The patterns starts with a few quick flashes, then some slow flashes. Count the slow flashes and use the table below.
2 = Firmware verification failed. Corruption, hash mismatch.
3 = Firmware load failed. No valid firmware found.
4 = Firmware write failed (e.g. when flashing).
5 = External flash write failed.
6 = External flash read failed.
7 = SD write failed.
8 = SD read failed.
There are other codes, if you experience them contact SP Racing support with your symptoms.
Bin/Hex files
Both SD card and DFU flashing methods require BINARY format files. The BF build system generates .hex files only download here, however these can be converted to .bin files using hex2bin download
e.g.
hex2bin.exe betaflight_4.1.0_SPRACINGH7EXTREME.hex
hex2bin.exe betaflight_4.1.0_SPRACINGH7NANO.hex
hex2bin.exe betaflight_4.1.0_SPRACINGH7ZERO.hex
Building from source
Once you have got the latest code and a working build environment, you can build the .bin file as follows.
make TARGET=SPRACINGH7EXTREME binary
make TARGET=SPRACINGH7NANO binary
make TARGET=SPRACINGH7ZERO binary
Firmware files
Latest Firmware:
Use latest,BF 4.1 release candidates.
Any recent development build or release candidate can be downloaded and installed using latest configurator*.
On the firmware flasher:
Follow remaining flashing procedure from the "Firmware upgrade procedure via configurator" section above.
Firmware for SPRacingH7EXTREME PX4 edition can be downloaded from here: https://github.com/spracing/betaflight/releases
Older experimental BF firmware:
betaflight_4.1.0_SPRACINGH7EXTREME-20190816.zip
betaflight_4.1.0_SPRACINGH7ZERO-20190816.zip
betaflight_4.1.0_SPRACINGH7ZERO-20190813.zip
betaflight_4.1.0_SPRACINGH7EXTREME-20190813.zip
betaflight_4.1.0_SPRACINGH7NANO-20190813.zip
betaflight_4.1.0_SPRACINGH7EXTREME-20190805.zip
betaflight_4.1.0_SPRACINGH7NANO-20190805.zip
betaflight_4.1.0_SPRACINGH7ZERO-20190805.zip
betaflight_4.1.0_SPRACINGH7EXTREME-20190718.zip
Factory Firmware:
BF 4.0
betaflight_4.0.0_SPRACINGH7EXTREME-20190421.zip
betaflight_4.0.0_SPRACINGH7NANO-20190421.zip
betaflight_4.0.0_SPRACINGH7ZERO-20190421.zip
BF 4.2
betaflight_4.2.0_SPRACINGH7EXTREME-20200616.zip
betaflight_4.2.0_SPRACINGH7NANO-20200616.zip
betaflight_4.2.0_SPRACINGH7ZERO-20200616.zip
SPRacingH7EXTREME PX4 Edition:
Betaflight firmware:
https://github.com/spracing/betaflight/releases
PX4 firmware:
See https://github.com/spracing/ssbl#px4-installation-to-external-flash
See https://github.com/spracing/ssbl/wiki/HOWTO-Extract-a-binary-image-from-a-PX4-release-file
Known Issues
CUSTOM
setting required for the 45 degree gyro. A configurator update is available, PR Add support for custom gyro alignment. betaflight/betaflight-configurator#1580, recent development builds on the link above include this fix. To workaround this issue issue with an older configurator use the following commands after in the CLI.NOTE: Now that the SPRacingH7 flight controller support is officially merged into Betaflight please report bugs with firmware or configurator on the Betaflight issue tracker where they will be seen by all the Betaflight developers.
The text was updated successfully, but these errors were encountered: