{"id":13650259,"url":"https://github.com/stylesuxx/esc-configurator","last_synced_at":"2025-03-17T09:30:43.248Z","repository":{"id":37792290,"uuid":"344924352","full_name":"stylesuxx/esc-configurator","owner":"stylesuxx","description":"A Web-App to flash your BLHeli_S and AM32 based ESCs from the browser using the Web-Serial API.","archived":false,"fork":false,"pushed_at":"2024-02-02T01:25:55.000Z","size":5024,"stargazers_count":124,"open_issues_count":26,"forks_count":37,"subscribers_count":8,"default_branch":"master","last_synced_at":"2024-02-02T22:48:47.518Z","etag":null,"topics":["am32","blheli","blheli-s","bluejay","esc","multirotor","pwa","quadcopter"],"latest_commit_sha":null,"homepage":"https://esc-configurator.com","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/stylesuxx.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2021-03-05T20:18:24.000Z","updated_at":"2024-04-14T17:56:06.437Z","dependencies_parsed_at":"2023-11-01T11:31:43.493Z","dependency_job_id":"850627fe-c096-45a4-a434-23225d3751ba","html_url":"https://github.com/stylesuxx/esc-configurator","commit_stats":null,"previous_names":[],"tags_count":49,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stylesuxx%2Fesc-configurator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stylesuxx%2Fesc-configurator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stylesuxx%2Fesc-configurator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stylesuxx%2Fesc-configurator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/stylesuxx","download_url":"https://codeload.github.com/stylesuxx/esc-configurator/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243858794,"owners_count":20359257,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["am32","blheli","blheli-s","bluejay","esc","multirotor","pwa","quadcopter"],"created_at":"2024-08-02T02:00:35.356Z","updated_at":"2025-03-17T09:30:42.207Z","avatar_url":"https://github.com/stylesuxx.png","language":"JavaScript","funding_links":[],"categories":["Motor Control ⚙️"],"sub_categories":["VTOLs 🚀"],"readme":"\u003cimg align=\"right\" src=\"./public/logo512.png\" alt=\"ESC Configurator\" width=\"250\"\u003e\n\n[![Build Status](https://app.travis-ci.com/stylesuxx/esc-configurator.svg?branch=master)](https://app.travis-ci.com/github/stylesuxx/esc-configurator) [![Codacy Badge](https://app.codacy.com/project/badge/Grade/eb8de2b80f8342b8ab2e7f3cf7f716ac)](https://app.codacy.com/gh/stylesuxx/esc-configurator/dashboard?utm_source=gh\u0026utm_medium=referral\u0026utm_content=\u0026utm_campaign=Badge_grade) [![codecov](https://codecov.io/gh/stylesuxx/esc-configurator/branch/develop/graph/badge.svg?token=WLZXIOEDP7)](https://codecov.io/gh/stylesuxx/esc-configurator)\n [![Crowdin](https://badges.crowdin.net/esc-configuratorcom/localized.svg)](https://crowdin.com/project/esc-configuratorcom) [![Netlify Status](https://api.netlify.com/api/v1/badges/d297f59c-7496-49fb-9803-1cf2876aaad4/deploy-status)](https://app.netlify.com/sites/sad-goodall-6b6045/deploys) [![Discord](https://img.shields.io/discord/822952715944460368.svg?label=\u0026logo=discord\u0026logoColor=ffffff\u0026color=7389D8\u0026labelColor=6A7EC2)](https://discord.gg/QvSS5dk23C)\n\n# ESC Configurator - PWA (Progressive Web App)\nA progressive web-app to flash your BLHeli_S capable ESCs directly from the web using the [Web Serial API](https://wicg.github.io/serial/) or the [Web USB API](https://wicg.github.io/webusb/) as a fallback for Chrome on Android. The Web USB solution will work on a majority of android devices, but not all. Unfortunately it is not possible to detect if it will work, you will simply have to try. Also see this [SO thread](https://stackoverflow.com/questions/66771484/webusb-can-not-claim-device-on-some-android-devices) and this [Chromium issue](https://bugs.chromium.org/p/chromium/issues/detail?id=1099521).\n\n\u003e The latest state of the master branch can be [viewed in the browser](https://esc-configurator.com)\n\nThis project is basically a re-write and clean up of the original [BLHeli Configurator](https://github.com/blheli-configurator/blheli-configurator). Some bits and pieces have been re-used - mainly the ones concerning the actual flashing part.\n\nI did this since I was interested in having this as an web app, but also because the original BLHeli configurator code was too much for me to re-factor and I thought I might be able to re-write it in the same amount of time.\n\nI also tried to go with one front-end framework - **React**. Instead of having a mixture of lots of different stuff.\n\nI re-used most of the look and feel of the original configurator, but since this is used on the web, adaptations to style are very much welcome. In the long run I can see this also be used on mobile phones via OTG port - once the [Web Serial API](https://wicg.github.io/serial/) makes it to there.\n\n## Supported Platforms \u0026 Firmware\nCurrently the SiLab EMF8 MCU's are supported with the following firmware:\n\n### SiLab EFM8:\n\n*   [BLHeli_S](https://github.com/bitdump/BLHeli)\n*   [Bluejay](https://github.com/bird-sanctuary/bluejay)\n\n### ARM:\n\n*   [AM32](https://github.com/AlkaMotors/AM32-MultiRotor-ESC-firmware)\n\n### Adding new firmware\nIf you are a firmware developer please feel free to drop an issue so I can add your firmware. Look at how BLHeli and Bluejay are implemented.\n\nIf your firmware is based on BLHeli, make sure that you set a NAME in your layout - this allows me to easily identify which firmware is flashed and act accordingly.\n\n### Adding new platforms\nRight now only SiLabs EFM8 MCU's are supported. But a lot of ARM and Atmel related code is ported, just the flashing is not implemented. If you want to see those features added and are willing to help, please tell me so in the issue section.\n\n## Translations\nTranslations are managed via [crowdin](https://crowdin.com/project/esc-configuratorcom) so head on over there and contribute to the translations. Should your language not be enabled yet, let me know in the issues and I will add it.\n\n## Contributing\nContributions are very welcome. Feel free to submit PR's and discuss feature requests - I am open for all suggestions. If you submit a PR please also **provide tests** where it makes sense. Some tests can not (yet) be easily automated, like playing music or the actual flashing process without having to heavily mock those components.\n\nIf you do submit a PR, please do so against the **develop** branch. Also make sure that your code matches the linting rules. If you get warnings, try to adapt your code accordingly. If the rule makes no sense or can't really be satisfied it's OK to submit your PR anyway.\n\n### Dev Setup\nSimply clone the repository, install dependencies and run the dev server. Pull requests are more than welcome.\n\nSearch the codes for TODO or IMPROVEMENTS, there is a lot that still can be done.\n\n#### Install dependencies\n\n    yarn\n\n#### Start dev server\n\n    yarn start\n\n#### Build\n\n    yarn build\n\nThe build is then available from the build directory and can be served by simply hosting the content of the directory or via serve:\n\n    serve -s build -l 1234\n\n#### Linting and testing\n\n    yarn lint\n    yarn test\n    yarn test:watch\n    yarn test:coverage\n\n### Docker setup\n\nA Dockerfile is supplied that will build esc-configurator into a container image. A companion script called 'run.sh' is also supplied, which will trigger a build, start a container with the image and open the app in a google chrome.\n\n## History \u0026 Credits\nThis configurator is based on [BLHeli Configurator](https://github.com/blheli-configurator/blheli-configurator) which was based on [Cleanflight Configurator](https://github.com/cleanflight/cleanflight-configurator) which itself was based on [Baseflight Configurator](https://github.com/multiwii/baseflight-configurator). I would like to thank everyone who contributed to one of those projects, without you this project would not be possible.\n\n### Authors \u0026 Contributors\nTo continue the legacy of everyone who was mentioned as author or contributor in one of the previously mentioned projects:\n\n*   Dominic Clifton aka. hydra - maintainer of the [Cleanflight firmware](https://github.com/cleanflight/cleanflight) and [configurator](https://github.com/cleanflight/cleanflight-configurator).\n*   ctn - primary author and maintainer of [Baseflight Configurator](https://github.com/multiwii/baseflight-configurator) from which [Cleanflight Configurator](https://github.com/cleanflight/cleanflight-configurator) project was forked.\n*   Andrey Mironov aka. DieHertz - primary author of [BLHeli Configurator](https://github.com/blheli-configurator/blheli-configurator)\n*   Michael Keller aka. mikeller - maintainer of [BLHeli Configurator](https://github.com/blheli-configurator/blheli-configurator)\n*   Stefan van der Ende\n*   Nathan\n*   Steffen Windoffer\n*   Steven R. Lilly\n*   Tuomas Kuosmanen\n*   Robyn Bachofer\n*   ByeJon\n\n#### Authors \u0026 Contributors for esc-configurator\n*   Mathias Rasmussen aka. mathiasvr - primary motivator and contributor for [esc-configurator](https://github.com/stylesuxx/esc-configurator)\n*   Chris Landa aka. stylesuxx - primary author and maintainer of [esc-configurator](https://github.com/stylesuxx/esc-configurator)\n*   Georg Oberleitner aka. Noctaro - Logo\n\n##### Translations\nThank you to everyone who contributed their time and added [translations via crowdin](https://crowdin.com/project/esc-configuratorcom):\n\n*   Hugo Chiang aka. DusKing1 - Chinese translation\n*   Asier Ruiz aka. Asizon - Spanish translation\n*   djtms - Polish translation\n*   Mat Cron - Italian translation\n*   psicho100pro - Czech translation\n*   Noctaro - German translation\n\n##### Startup Melodies\nA big shout out goes to all the talented people submitting startup melodies:\n\n*   Airwolf359\n*   arwebSE\n*   cypher1591\n*   GKLove\n*   kilozebra\n*   Lordnibbler\n*   Noctaro\n*   Ryano12\n*   Shadow0624\n*   Thorondor\n\nIf you feel that your name should be mentioned in the authors section, please do not hesitate to submit a pull request.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstylesuxx%2Fesc-configurator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fstylesuxx%2Fesc-configurator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstylesuxx%2Fesc-configurator/lists"}