Skip to content

anthonyhfm/launchpad-core-firmware

Repository files navigation

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.

Installation

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.

Features

  • 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

Device Support

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

Roadmap

  • 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

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 all

The Mystrix Pro target uses the ESP Rust toolchain installed by espup and produces the MatrixOS-compatible UF2 image build/core-mystrix-pro.uf2:

cargo mxpro

The 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.

Flashing the firmware manually

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.syx

Credits

Kaskobi - Boot Animations

mat1jaczyyy - The original lpp-performance-cfw for the Launchpad Pro Mk2

License

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.

About

Rust-based custom firmware for the Novation Launchpad device series

Topics

Resources

License

Stars

36 stars

Watchers

3 watching

Forks

Packages

 
 
 

Contributors

Languages