Google Chrome application for BLHeli firmware flashing and configuration.
This software is provided as is, use it at your own risk. ALWAYS REMOVE THE PROPELLERS and power your ESCs via a current-limiting device or power supply.
- Only BLHeli passthrough supported at the moment, hence only CleanFlight, BetaFlight, INAV and TriFlight
- Changing settings for any BLHeli_S, BLHeli SiLabs and BLHeli Atmel ESCs with bootloader
- Flashing BLHeli and BLHeli_S to SiLabs and Atmel ESCs
- Add declarative UI description for MAIN and MULTI modes
- Full-featured 4-way interface support via BLHeli boxes, with C2-interface support
Electron/NW.js wrapper with auto-update- Android/iOS version based on the same code-base
You can submit pull requests to js/blheli_versions.json and js/blheli_escs.json files, user installations of BLHeli Configurator will see the changes shortly.
This project uses ReactJS, JSX and some modern ECMAScript extensions and depends on npm
for building.
Following the initial checkout, you have to run:
npm install
After that, to actually compile all the required .jsx files, run:
npm run build
- Install node.js
- Change to project folder and run
npm install
. - Run
npm start
to build & run the debug flavor.
The tasks are defined in gulpfile.js
and can be run either via gulp <task-name>
(if the command is in PATH or via ../node_modules/gulp/bin/gulp.js <task-name>
:
- Install babel-cli
npm install --global babel-cli
. - Install gulp
npm install --global gulp-cli
. - Run
gulp <taskname> [[platform] [platform] ...]
.
List of possible values of <task-name>
:
- dist copies all the JS and CSS files in the
./dist
folder. - apps builds the apps in the
./apps
folder [1]. - debug builds debug version of the apps in the
./debug
folder [1]. - release zips up the apps into individual archives in the
./release
folder [1].
[1] Running this task on macOS or Linux requires Wine, since it's needed to set the icon for the Windows app (build for specific platform to avoid errors).
To build or release only for one specific platform you can append the plaform after the task-name
.
If no platform is provided, all the platforms will be done in sequence.
- MacOS use
gulp <task-name> --osx64
- Linux use
gulp <task-name> --linux64
- Windows use
gulp <task-name> --win32
- ChromeOS use
gulp <task-name> --chromeos
You can also use multiple platforms e.g. gulp <taskname> --osx64 --linux64
.
Having enabled Developer Mode in Chrome, navigate to chrome://extensions/ and use Load unpacked extension..., providing path to the root directory of your working copy.
Launch the application, plug your flight controller into a USB port, press Connect, power your ESCs. If you run into problems while working with the program, make sure to copy Developer's Console output as well as save log using the Save Log button.
This software started as a tab in Cleanflight Configurator, hence my deep appreciation to all of you who contributed to it's development.
Special thanks to everyone who helped me with development, testing, collecting of logs and ideas and all other stuff:
- Stefan van der Ende
- Nathan
- Steffen Windoffer
- Steven R. Lilly
- Tuomas Kuosmanen
- Robyn Bachofer
- ByeJon from the IntoFPV forum for drawing an icon :-)
This list is extended as the development goes on and I remember all the names :)