A Qt Widgets desktop application for configuring and updating AM32 electronic speed controllers (ESCs) without using the web configurator. The current app identifies itself as Config Tool 1.97.2 and targets AM32 firmware 2.21 and newer.
This is a fork of am32-firmware/Offline-Configurator. Compared with the upstream v1.97 base, this fork focuses on desktop usability and macOS distribution:
- Adds a Refresh Ports button and preserves the selected serial port when the detected-port list changes.
- Uses AM32-branded application icons and larger macOS UI text/scaling defaults.
- Remembers the last firmware folder and displays a timestamp after successful flashing.
- Publishes separate Apple Silicon and universal macOS packages.
The AM32 configuration and firmware communication behavior remains based on upstream; this fork does not provide or modify ESC firmware.
Download either disk image from the Releases page:
- Apple Silicon (arm64):
SerialPortConnector-macOS-arm64.dmg. Choose this for an M-series Mac. - Universal:
SerialPortConnector-macOS-universal.dmg. Supports both Intel (x86_64) and Apple Silicon (arm64) Macs.
The release builds target macOS 13 or newer. Open the DMG and drag SerialPortConnector.app to Applications. CI builds are ad-hoc signed but not notarized, so macOS may show a Gatekeeper warning on first launch. Only bypass it if you trust the release source.
- Connect the ESC through a supported USB/serial interface.
- Select its port and click Connect.
- Use the configuration and firmware tools as needed. Load or save a configuration file from the main screen.
- Disconnect before refreshing the port list; click Refresh Ports to rescan.
Always select firmware intended for the exact ESC target and follow the hardware manufacturer's safety guidance. Motors can start unexpectedly during configuration or testing.
The macOS release workflow uses Qt 6.10.3 with the Qt SerialPort module and Xcode's Clang toolchain. See .github/workflows/build.yml for the reproducible build and packaging commands. The universal app is made from separate arm64 and x86_64 builds and verified with lipo before packaging.