Emuflight Configurator

May 1, 2026 · View on GitHub

Emuflight Configurator is a crossplatform configuration tool for the Emuflight flight control system.

Emuflight

Supports quadcopters, hexacopters, octocopters, and fixed-wing aircraft. Configure any supported Emuflight target.

Downloads

Please download our releases at GitHub.

Installation

Download the installer for your platform from the Releases page.

macOS: Right-click the app and select Open to bypass Gatekeeper on first launch.

Support


Development

Requirements

  1. Node.js (LTS recommended)
  2. nvm (Node version manager; optional but recommended for reproducible local Node versions)
  3. Yarn (npm install -g yarn)

Commands

CommandDescription
yarn devStart dev mode with devtools
yarn debugAlias for yarn dev
yarn buildBuild dist/ only
yarn makeCreate release packages (all platforms)
yarn make:devAlias for yarn make:debug
yarn make:debugCreate debug packages with the DevTools menu enabled
yarn packageBuild an unpacked application package
yarn package:debugBuild an unpacked debug package
yarn commandsShow the available project commands
yarn lintRun ESLint
yarn setup:hooksInstall git pre-commit hook (enforces lint checks)

Git Hooks

EmuConfigurator enforces code quality with automatic git commit hooks. Before each commit, yarn lint runs automatically — commits with lint errors are blocked (warnings OK).

Setup (first time):

yarn setup:hooks

This works on all platforms (Windows, macOS, Linux).

After setup:

  • Commits are checked automatically
  • Lint errors block commits
  • Run yarn lint -- --fix to auto-fix issues
  • Use git commit --no-verify to bypass (emergency only)

See .github/GIT-HOOKS.md for detailed docs.

Build Output

  • dist/ — assembled app sources
  • out/make/ — packaged applications and installers

Platform packages:

  • macOS: ZIP always, DMG local only (requires macos-alias)
  • Windows: EXE installer
  • Linux: DEB + RPM

macOS DMG Building

CI (GitHub Actions): Builds ZIP only (portable, suitable for distribution)

Local Dev: To build DMG locally (macOS only):

brew install macos-alias   # One-time install
yarn make                   # Builds both .zip and .dmg

DMG is skipped in CI because macos-alias (native module) doesn't cross-compile reliably. ZIP is portable and sufficient for most use cases.

Platform Notes

Linux: Serial Port Access

sudo usermod -aG dialout $USER
# Log out and back in

Linux: USB DFU Flashing

Create /etc/udev/rules.d/49-stm32dfu.rules:

SUBSYSTEM=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="df11", \
MODE="0664", GROUP="plugdev"

Then: sudo udevadm control --reload-rules && sudo udevadm trigger


Emuflight