Resources · Firmware

AM32 vs BLHeli_32 for defense UAVs.

AM32 is fully open-source and auditable. BLHeli_32 is proprietary and closed-source. Both run on compatible hardware and support Dshot, but for federal drone programs requiring firmware security review, that auditability difference is decisive. This guide covers the technical and compliance tradeoffs.

Updated May 2026 · QuadDrive 80A firmware specs →
// The Short Answer

The one-paragraph answer.

For defense UAV programs, AM32 is preferred over BLHeli_32 primarily because of auditability: AM32's complete source code is publicly available and can be reviewed by security teams or DoD auditors, while BLHeli_32's proprietary codebase cannot be independently inspected for vulnerabilities or backdoors. Both firmware options run on similar hardware, support Dshot 300/600 and bidirectional telemetry, and neither originates from a covered foreign entity under NDAA definitions. The Lirith QuadDrive 80A ships with AM32 as default and also supports BLHeli_32.

// Background

Why firmware matters in defense ESCs.

An ESC runs a tight control loop: it reads a throttle command from the flight controller, synthesizes a 3-phase AC waveform, and drives the motor. The firmware executing that loop has direct authority over motor torque, timing, and current draw. It also handles telemetry reporting — RPM, current, temperature — back to the flight controller.

A compromised or malicious firmware could: delay commutation to reduce motor efficiency, report falsified telemetry to the autopilot, refuse a motor command at a critical moment, or gradually overcurrent a motor to induce thermal failure. The fact that ESC firmware executes at the lowest level of the propulsion chain — below the autopilot, below the flight controller — makes it a high-value target for supply-chain attacks.

For defense programs, the question is not just "what entity wrote this firmware?" but "can we verify what this firmware does?" Open-source firmware answers that question. Closed-source firmware cannot.

// AM32

AM32: open-source ESC firmware.

AM32 is an open-source ESC firmware for STM32-based hardware, developed by AlkaMotors and maintained by a distributed contributor community. The full source code is available on GitHub under an open license. No corporate entity owns AM32, and its development is not controlled by any covered foreign entity under NDAA definitions.

AM32 technical capabilities

Processor
ARM Cortex-M4 (STM32G0, STM32F4, and others)
Control Protocols
PWM, Dshot 300/600, Servo
Telemetry
Bidirectional Dshot (RPM, current, voltage, temperature)
CAN Support
DroneCAN / UAVCAN v0 (hardware-dependent)
Source
Open-source, GitHub (AlkaMotors/AM32)
License
MIT / GPL (depending on module)
Configurator
AM32 Configurator (open-source, web-based)

Why AM32 is preferred for defense programs

  • Full audit trail. Any security engineer, DoD reviewer, or program office can download the source, build the firmware from scratch, and diff the binary against the deployed image. There are no hidden components.
  • No covered-entity IP. AM32's contributors are not affiliated with covered foreign entities. The firmware does not contain any IP licensed from a prohibited source.
  • Customer-controlled firmware versioning. Because AM32 is open-source, a program can fork the codebase, apply security patches, and manage its own approved firmware build — standard for high-assurance systems.
  • No commercial licensing dependency. There is no vendor license that can be revoked, repriced, or discontinued. The firmware is available under open-source terms permanently.
// BLHeli_32

BLHeli_32: proprietary closed-source firmware.

BLHeli_32 is a proprietary ESC firmware with a closed-source codebase, developed originally by Steffen Skaug (a Norwegian developer) and subsequently licensed commercially to ESC manufacturers. It is widely used in commercial and racing drone platforms. Its developer is not a covered foreign entity under NDAA definitions, but its codebase cannot be independently audited.

BLHeli_32 technical capabilities

Processor
ARM Cortex-M3/M4 (STM32)
Control Protocols
PWM, Dshot 300/600/1200
Telemetry
Bidirectional Dshot (RPM, current, voltage, temperature)
CAN Support
Limited / hardware-dependent
Source
Closed-source, proprietary license
Configurator
BLHeli Suite / BLHeliSuite32

Limitations for defense programs

  • No independent audit path. The full codebase cannot be reviewed by security teams. It is not possible to verify the firmware does not contain unintended functionality.
  • Commercial licensing dependency. Continued use depends on the licensor's commercial terms. In a program with a 10-year support requirement, a proprietary firmware introduces a single-point-of-failure risk.
  • No fork or modification rights. Defense programs cannot apply independent security patches, add custom telemetry fields, or extend the firmware without the licensor's cooperation.
// Comparison

Side-by-side comparison.

Feature AM32 BLHeli_32
Source code Open-source (GitHub) Closed-source / proprietary
Independent security audit Yes — full codebase available No
Covered-entity origin None None
Dshot 300/600 support Yes Yes
Dshot 1200 No Yes
Bidirectional telemetry Yes Yes
CAN bus support Yes (hardware-dependent) Limited
Customer-controlled versioning Yes — forkable No
Commercial licensing dependency None Yes — licensor required
Preferred for federal programs Yes With caveats
// NDAA & Supply Chain

NDAA considerations and firmware security.

The NDAA covered-component definition explicitly includes "operating software" embedded in a UAS component. Firmware IP that originates from — or is substantially licensed from — a covered foreign entity would implicate NDAA compliance. Neither AM32 nor BLHeli_32 originates from a covered entity, so both satisfy this specific statutory requirement.

However, DoD programs increasingly operate under broader supply-chain security requirements — some formalized in contract language, others in program security reviews — that go beyond the statutory NDAA minimum. These requirements often include: independent firmware audit capability, documented firmware provenance, and the ability to produce a reproducible build. AM32 satisfies all three. BLHeli_32 satisfies none.

For programs operating under a CMMC framework, supply-chain risk management requirements may explicitly require auditable software in critical systems. ESC firmware in a defense platform is exactly the kind of embedded software these requirements are designed to address.

// FAQ

Frequently asked questions.

What is AM32?

AM32 is an open-source ESC firmware for STM32-based hardware. It supports Dshot 300/600, bidirectional telemetry, CAN bus, and PWM. The full source code is publicly available on GitHub, enabling independent security audit.

Is AM32 suitable for defense UAVs?

Yes. AM32 is preferred for defense programs because its open-source codebase is fully auditable, it has no covered-entity IP, and programs can fork and version-control the firmware independently. The QuadDrive 80A ships with AM32 as default.

Does BLHeli_32 violate the NDAA?

No — BLHeli_32 does not originate from a covered foreign entity and does not violate NDAA statutory requirements on its own. The concern is auditability: its closed-source code cannot be independently verified for supply-chain security purposes.

Can the QuadDrive 80A run BLHeli_32?

Yes. The QuadDrive 80A supports both AM32 (default) and BLHeli_32. BLHeli_32 is available for customers who have existing tooling or integrations that depend on it. Contact sales@lirith.com for details.

Which firmware does ArduPilot/PX4 prefer?

Both AM32 and BLHeli_32 are compatible with ArduPilot and PX4 via Dshot and bidirectional telemetry. Neither flight stack has a hard requirement for one over the other at the autopilot level, though AM32 is increasingly common in new defense-oriented designs.