# BLHeli

> open firmware for electronic speed controller boards

**Wikidata**: [Q110628132](https://www.wikidata.org/wiki/Q110628132)  
**Source**: https://4ort.xyz/entity/blheli

## Summary
BLHeli is open-source firmware designed for electronic speed controller (ESC) boards. It provides the low-level control necessary for managing specific hardware, primarily running on the STM32 platform. The software is distributed under a permissive license, allowing users to access and redistribute the original source code.

## Key Facts
*   **Definition:** Open-source firmware for electronic speed controller (ESC) boards.
*   **Aliases:** Also known as BLHeli32.
*   **Platform:** Designed for hardware utilizing STM32 processors.
*   **Software Class:** Classified as both firmware and open-source software.
*   **Source Code:** Hosted on GitHub at `github.com/bitdump/BLHeli`.
*   **Configurator Tool:** A dedicated configuration tool is maintained at `github.com/blheli-configurator/blheli-configurator`.
*   **Release History:** Version 1.1.0 was released on December 22, 2017.
*   **Latest Release:** Version 1.2.0 (preferred) was released on October 19, 2019.

## FAQs
### Q: What is the primary function of BLHeli?
A: BLHeli serves as firmware that provides low-level control for a device's specific hardware, specifically for electronic speed controller (ESC) boards. It bridges the gap between the hardware and higher-level software instructions.

### Q: Is BLHeli free to use?
A: Yes, BLHeli is open-source software. This means anyone is free to use and redistribute it in its current state, as it is distributed with a permissive license providing libre access to the original source code.

### Q: What platforms are compatible with BLHeli?
A: BLHeli is designed to operate on the STM32 platform.

## Why It Matters
BLHeli plays a significant role in the field of electronics by providing a transparent and adaptable solution for controlling electronic speed controllers (ESCs). Unlike closed-source alternatives, BLHeli's status as open-source firmware grants users libre access to the original source code, fostering a community-driven approach to hardware management. This allows for greater flexibility in how the software is used and redistributed.

By offering low-level control for device-specific hardware on the STM32 platform, BLHeli enables precise management of electronic speed controllers. The availability of a dedicated configurator tool further underscores its utility, allowing users to tailor firmware settings to specific hardware requirements. Its continued development, evidenced by releases such as version 1.2.0 in 2019, highlights its relevance as a maintained tool in the open-source ecosystem.

## Notable For
*   **Open-Source Ecosystem:** Distinguished by its permissive licensing and availability of source code, which is uncommon for low-level hardware firmware.
*   **ESC Specialization:** Specifically engineered to address the complex needs of electronic speed controller boards.
*   **STM32 Integration:** Optimized for the widely used STM32 hardware platform.
*   **Configurator Support:** backed by a dedicated configurator application to manage firmware updates and settings.

## Body
### Software Classification
BLHeli is strictly defined as **open-source software** and **firmware**. As firmware, it functions as computer software that provides low-level control for a device's specific hardware. As open-source software, it adheres to a model where anyone is free to use and redistribute the software in its current state under a permissive license.

### Technical Specifications
The firmware is built to run on the **STM32** platform. It is utilized to control electronic speed controller (ESC) boards. The project maintains two primary repositories on GitHub:
*   **Core Firmware:** `https://github.com/bitdump/BLHeli`
*   **Configurator:** `https://github.com/blheli-configurator/blheli-configurator`

### Version History
The development of BLHeli is documented through its release history, with key milestones including:
*   **Version 1.1.0:** Released on December 22, 2017.
*   **Version 1.2.0:** Released on October 19, 2019, and marked as the preferred version.

## References

1. [Release 1.1.0. 2017](https://github.com/blheli-configurator/blheli-configurator/releases/tag/1.1.0)
2. [Release 1.2.0. 2019](https://github.com/blheli-configurator/blheli-configurator/releases/tag/1.2.0)