Custom firmware (CFW) for the Anycubic ACE 1 Pro (Gen 1) and ACE 2 Pro (Gen 2) filament management systems (GD32F303, FreeRTOS).
Download the latest firmware: See Releases
Latest: ACE 2 Pro CFW v1.0.6 · ACE 1 Pro CFW v1.1.1 · ACE Flash Tool v1.0.3
Each generation has its own firmware:
- ACE 1 Pro (Gen 1):
ACE_V…_….bin— KlipperGo-stack printers (e.g. Kobra 3, Kobra S1) - ACE 2 Pro (Gen 2):
ACE2_V…_….bin— AVATA-stack printers (e.g. Kobra X) and KlipperGo-stack printers with ACE 2 Pro support (e.g. Kobra S1 Max)
Flashing the wrong generation's firmware onto an ACE will soft-brick the device. The Flash
Tool blocks obvious mismatches (a ACE_V… Gen 1 image on an AVATA printer, or — when the printer
reports the model of the connected ACE — an image that does not match that ACE), but this is a
safeguard — it remains your responsibility to check which ACE you own and pick the matching .bin.
Recovery without a hardware flash programmer is normally possible: an OTA flash never overwrites the bootloader, so a unit that fails to boot falls back to update mode and can be re-flashed over the network. See docs/how-to-flash.md.
Flashing custom firmware modifies your device. I take no responsibility for any damage, data loss, or malfunction resulting from using this firmware or flash tool. You flash at your own risk.
The original Anycubic ACE firmware binaries are stored in originalFirmware/
(Gen 1 and Gen 2). You can restore them at any time using the same flash tool.
- Multi-vendor NFC — reads filament spools from multiple brands automatically (same on both generations)
- Improved NFC reliability — maximum RX gain + TX power, chip-type-aware reads
| ACE with Bambu & Anycubic spools | Slicer showing recognized spools |
|---|---|
![]() |
![]() |
Full details: docs/supported-spools.md
| Brand | Status |
|---|---|
| Anycubic Gen 1 | ✅ Confirmed |
| Anycubic Gen 2 | ✅ Confirmed |
| Bambu Lab | ✅ Confirmed |
| Elegoo | ✅ Implemented / untested |
| TigerTag | ✅ Confirmed |
| OpenSpool | ✅ Confirmed |
| OpenPrintTag (Prusa) | ✅ Implemented / untested |
| QIDI | 🔄 Unknown AES keys |
| Creality | 🔄 Unknown AES keys |
This repo contains the ACE Flash Tool — a Qt desktop application that flashes the firmware over your local network (MQTT via your printer), for both ACE generations.
→ See docs/how-to-flash.md
Requirements: Qt 5.15+, CMake 3.20+, MSVC 2019/2022
cd flashtool
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build buildThe CMakeLists.txt defaults to E:/Qt/5.15.2/msvc2019_64 for Qt and
E:/Qt/Tools/QtCreator/bin for the OpenSSL DLLs. Override if your paths differ:
cmake -S . -B build \
-DCMAKE_PREFIX_PATH="C:/Qt/5.15.2/msvc2019_64" \
-DOPENSSL_SRC="C:/Qt/Tools/QtCreator/bin"The firmware source code is maintained privately. Compiled release binaries are provided here.
Some parts of the underlying platform and communication protocols are proprietary and undocumented. The source is therefore not publicly distributed at this time.
If you find this project useful and want to help cover the cost of filament spools from more brands for NFC testing and implementation — donations are always welcome, never expected.
Flash tool: MIT
Firmware binaries: provided as-is, use at your own risk

