CoreFW is a full reimplementation of the firmware for the Novation Launchpad device series. Originally, it was a reverse engineering and binary injection project (launchpad-injection-cfw). It now supports all RGB and non-RGB Launchpads with accessible bootloaders.
Note
This project does not redistribute official Novation firmware. CoreFW is custom firmware built through reverse engineering and independent reimplementation of the original firmware. This project is not affiliated with Novation.
Visit fw.anthonyhfm.dev for a step-by-step installation guide that walks you through flashing CoreFW onto your Launchpad.
Alternatively, download the .syx file from the releases page and flash it manually via the bootloader's MIDI port.
- Performance optimizations for lightshow use
- Roadrunner support on the Launchpad Pro Mk3 (high-speed LED system)
- Multiple built-in color palettes
- Novation palette
- Mat1jaczyyy palette
- MXOS palette
- Launchpad S (legacy) palette
- 3 flashable custom palette banks
- Color palette editor
- FastLED Apollo Support
- Performance Mode
- Bottom row mirroring on the Launchpad Pro Mk3
- Programmer Mode
- Custom boot animation
Novation Launchpad support:
| Device | Working | RGB | Custom Palettes | Highspeed LED |
|---|---|---|---|---|
| Launchpad Pro Mk3 | ✅ | ✅ | ✅ | ✅ |
| Launchpad X | ✅ | ✅ | ✅ | ✅ |
| Launchpad Mini Mk3 | ✅ | ✅ | ✅ | ✅ |
| Launchpad Pro | ✅ | ✅ | ✅ | ✅ |
| Launchpad Mk2 | ✅ | ✅ | ✅ | ✅ |
| Launchpad Mini Mk1 | ✅ | ❌ | ❌ | ❌ |
| Launchpad S | ✅ | ❌ | ❌ | ❌ |
Other devices:
| Device | Working | RGB | Custom Palettes | Highspeed LED |
|---|---|---|---|---|
| Mystrix Pro | ✅ | ✅ | ✅ | ❌ |
- Native Live Modes for all Launchpads
- Note Mode
- Chord Mode
- Custom Modes via Novation Components on all Launchpads
- Sequencer Mode
- Core Configurator app
... and more to come!
Build a firmware package using one of the cargo aliases:
cargo <device>Available <device> targets:
| Alias | Device |
|---|---|
lppmk3 |
Launchpad Pro Mk3 |
lpx |
Launchpad X |
mini |
Launchpad Mini Mk3 |
lpp |
Launchpad Pro |
mk2 |
Launchpad Mk2 |
minimk1 |
Launchpad Mini Mk1 |
lps |
Launchpad S |
mxpro |
Mystrix Pro (ESP32-S3) |
To build all targets at once:
cargo allThe Mystrix Pro target uses the ESP Rust toolchain installed by espup and produces
the MatrixOS-compatible UF2 image build/core-mystrix-pro.uf2:
cargo mxproThe UF2 contains the ESP32-S3 application image expected by the Mystrix OTA bootloader; it does not overwrite the factory bootloader or partition table.
Put the device into its UF2 bootloader mode, then copy that UF2 file to the mounted
bootloader volume. During development, the ELF can still be flashed directly with
espflash.
Hold the centre FN button during boot to enter the hardware test mode. It verifies the 64 pad LEDs, 32 underglow LEDs, pressure pads, touch strips, and FN button.
Matrix Pro pin assignments, LED-chain order, touch-strip mappings, and calibration defaults are independently reimplemented from the MIT-licensed MatrixOS Mystrix1 hardware definitions.
You can flash the firmware using our flash.py tooling. Here is an example for the Launchpad Pro Mk2
python3 tools/flash.py build/core-launchpad-pro.syxKaskobi - Boot Animations
mat1jaczyyy - The original lpp-performance-cfw for the Launchpad Pro Mk2
CoreFW is licensed under the GNU General Public License v3.0 (GPL-3.0-only).
Copyright (C) 2025-2026 Anthony Hofmeister.
This means that if you modify CoreFW and distribute or publish your modified version (e.g. as a fork, a public build, or a firmware release), you must:
- release the full corresponding source code of your modified version under the GPL-3.0-only license as well,
- retain the original copyright notices and give credit to Anthony Hofmeister as the original author,
- clearly mark what you changed.