Skip to content

Releases: thnikk/MP2040

v1.3.0

Choose a tag to compare

@github-actions github-actions released this 15 Sep 00:28

Changes

This release focuses on the remaining missing features of GP2040-th and making migration easier. I'll be archiving GP2040-th since MP2040 now encompasses all of the GP2040-th features and I don't want to maintain two separate codebases.

Added

  • PS3/PS4/PS5 input modes
  • USB host port support (needs testing and physical wired port)
  • Playstation legends for the controller widget
  • Config for BeatBoard-v2
  • Caching for web assets
  • Auto-migrate settings when flashing MP2040 over GP2040-th
  • Support importing GP2040-th exported settings
  • Overlay on reboot or disconnection in the web config
  • Dirty state tracking for web config
  • Sticky save button
  • Browser setting to remember changes in LocalStorage
  • Status LED flashes on profile changes
  • Status LED shows preview color with color spinner
  • More intuitive MIDI remapper in mini menu

Fixed

  • Missing/wrong input history for keyboard/midi
  • Fixed LED settings showing for basic Fightboard

Changed

  • Hide LED settings for boards without LEDs
  • Changed default mapping for Fightboards to put L1/L2 on the left and R1/R2 on the right (for non-mirrored).

See the full changelog for all 43 commits.

Installation

  1. Download the .uf2 firmware file for your board below.
  2. Hold the second button while plugging the keypad in to enter BOOTSEL mode. If you have a touch model, plug it in first and touch the second button within 3 seconds.
  3. A removable drive named RPI-RP2 will appear. Copy the .uf2 file onto it.
  4. The device will flash and reboot automatically into the new firmware.

If the device was previously used for other firmware, flash flash_nuke.uf2 first to clear storage.

Firmware

Board File
2k MP2040_1.3.0_c59baf9_2k.uf2
2kw MP2040_1.3.0_c59baf9_2kw.uf2
3x3 MP2040_1.3.0_c59baf9_3x3.uf2
4K MegaTouch MP2040_1.3.0_c59baf9_4kMegaTouch.uf2
4kw MP2040_1.3.0_c59baf9_4kw.uf2
BeatBoard-v2 MP2040_1.3.0_c59baf9_BeatBoard-v2.uf2
BeatBoard MP2040_1.3.0_c59baf9_BeatBoard.uf2
Fightboard Basic (Mirrored) MP2040_1.3.0_c59baf9_Fightboard-b-m.uf2
Fightboard Basic MP2040_1.3.0_c59baf9_Fightboard-b.uf2
Fightboard (Mirrored) MP2040_1.3.0_c59baf9_Fightboard-m.uf2
Fightboard MP2040_1.3.0_c59baf9_Fightboard.uf2
MacroPad MP2040_1.3.0_c59baf9_MacroPad.uf2
MegaTouch MP2040_1.3.0_c59baf9_MegaTouch.uf2
MiniTouch MP2040_1.3.0_c59baf9_MiniTouch.uf2
Springboard MP2040_1.3.0_c59baf9_Springboard.uf2

v1.2.0

Choose a tag to compare

@github-actions github-actions released this 06 Sep 23:10

Changes

Added

  • Ported controller widget from GP2040-th
  • Controller widget now reflects input mode with icons for labels (where appropriate)
  • Added XBox One input mode. This is mostly to have an alternative to the XInput mode that supports USB CDC for a simultaneous serial connection.
  • Added d-pad modes to use directions as left/right stick
  • Show d-pad mode in the display statusbar
  • Show profile indicator in the statusbar
  • Added info page to mini menu to show some misc info
  • Added min/max brightness sliders for status LED
  • Added dirty state tracking for config changes to change save color button and use confirmation dialog when trying to leave without saving

Fixed

  • Fixed some flipped buttons in the springboard board layout
  • Fixed broken version checker
  • Fixed composite USB device for using serial with Switch and MIDI input modes
  • Fixed input history not showing correct directions with SOCD

Changed

  • Show the build year on the home page
  • Replaced manufacturer and product strings for the project (thnikk and MP2040)
  • Changed how RAM works with (emulated) EEPROM to not balloon memory usage with larger EEPROM allocation
  • Track dirty state in web config and added browser confirm when trying to leave without saving
  • Present all pages in key modal as tabs to change all modes regardless of the set input mode
  • Only show single octave for MIDI widget to make better use of the modal aspect ratio
  • Changed icon to GP2040-th icon

Removed

  • Profile banner on switching profiles, this is replaced by the profile indicator in the statusbar

Tools

  • Added --skip to the build script to skip the build if a uf2 already exists
  • Added script to generate image of supported boards using board svgs

See the full changelog for all 55 commits.

Installation

  1. Download the .uf2 firmware file for your board below.
  2. Hold the second button while plugging the keypad in to enter BOOTSEL mode. If you have a touch model, plug it in first and touch the second button within 3 seconds.
  3. A removable drive named RPI-RP2 will appear. Copy the .uf2 file onto it.
  4. The device will flash and reboot automatically into the new firmware.

If the device was previously used for other firmware, flash flash_nuke.uf2 first to clear storage.

Firmware

Board File
2k MP2040_1.2.0_e6c83cf_2k.uf2
2kw MP2040_1.2.0_e6c83cf_2kw.uf2
3x3 MP2040_1.2.0_e6c83cf_3x3.uf2
4K MegaTouch MP2040_1.2.0_e6c83cf_4kMegaTouch.uf2
4kw MP2040_1.2.0_e6c83cf_4kw.uf2
BeatBoard-v2 MP2040_1.2.0_e6c83cf_BeatBoard-v2.uf2
BeatBoard MP2040_1.2.0_e6c83cf_BeatBoard.uf2
Fightboard Basic (Mirrored) MP2040_1.2.0_e6c83cf_Fightboard-b-m.uf2
Fightboard Basic MP2040_1.2.0_e6c83cf_Fightboard-b.uf2
Fightboard (Mirrored) MP2040_1.2.0_e6c83cf_Fightboard-m.uf2
Fightboard MP2040_1.2.0_e6c83cf_Fightboard.uf2
MacroPad MP2040_1.2.0_e6c83cf_MacroPad.uf2
MegaTouch MP2040_1.2.0_e6c83cf_MegaTouch.uf2
MiniTouch MP2040_1.2.0_e6c83cf_MiniTouch.uf2
Springboard MP2040_1.2.0_e6c83cf_Springboard.uf2

v1.2.0-prerelease

v1.2.0-prerelease Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 03 Sep 22:06

Changes

See the full changelog for all 34 commits.

Installation

  1. Download the .uf2 firmware file for your board below.
  2. Hold the second button while plugging the keypad in to enter BOOTSEL mode. If you have a touch model, plug it in first and touch the second button within 3 seconds.
  3. A removable drive named RPI-RP2 will appear. Copy the .uf2 file onto it.
  4. The device will flash and reboot automatically into the new firmware.

If the device was previously used for other firmware, flash flash_nuke.uf2 first to clear storage.

Firmware

Board File
2k MP2040_1.2.0_9b2b99a_2k.uf2
2kw MP2040_1.2.0_9b2b99a_2kw.uf2
3x3 MP2040_1.2.0_9b2b99a_3x3.uf2
4K MegaTouch MP2040_1.2.0_9b2b99a_4kMegaTouch.uf2
4kw MP2040_1.2.0_9b2b99a_4kw.uf2
BeatBoard MP2040_1.2.0_9b2b99a_BeatBoard.uf2
Fightboard Basic (Mirrored) MP2040_1.2.0_9b2b99a_Fightboard-b-m.uf2
Fightboard Basic MP2040_1.2.0_9b2b99a_Fightboard-b.uf2
Fightboard (Mirrored) MP2040_1.2.0_9b2b99a_Fightboard-m.uf2
Fightboard MP2040_1.2.0_9b2b99a_Fightboard.uf2
MacroPad MP2040_1.2.0_9b2b99a_MacroPad.uf2
MegaTouch MP2040_1.2.0_9b2b99a_MegaTouch.uf2
MiniTouch MP2040_1.2.0_9b2b99a_MiniTouch.uf2
Springboard MP2040_1.2.0_9b2b99a_Springboard.uf2

v1.1.0

Choose a tag to compare

@github-actions github-actions released this 30 Aug 04:34

New Features

This release focuses on merging Fightboard configs (and the Springboard) into MP2040. The major changes are:

  • Added SSD1306 display support
  • Ported Mini Menu
  • Fixed BeatBoard config after testing on real hardware
  • Added 3x5 font for the splash screen
  • Added boot key mapping
  • Added hotkey mapping
  • Changed global default colors for fire, rain, and ripple modes

Otherwise, I would consider this release to be at feature parity with GP2040-th for most of the features I actually care about, with some advantages over it from MP2040, including:

  • LED Simulator that shows a preview of the LED effects in the LED config
  • Lighter web config
  • BPS, Ripple, Rain, and Fire LED modes
  • USB CDC for serial control
  • Support for more input types

Tools

Some tools were added to tools/ in this release:

  • font3x5_edit.pg: Export the 3x5 font to a png for easy editing with Pixelorama and re-convert the png to a header.
  • display_preview.py: Preview display layouts in a simple web server in real time with pixel-perfect accuracy.

See the full changelog for all 41 commits.

Installation

  1. Download the .uf2 firmware file for your board below.
  2. Hold the second button while plugging the keypad in to enter BOOTSEL mode. If you have a touch model, plug it in first and touch the second button within 3 seconds.
  3. A removable drive named RPI-RP2 will appear. Copy the .uf2 file onto it.
  4. The device will flash and reboot automatically into the new firmware.

If the device was previously used for other firmware, flash flash_nuke.uf2 first to clear storage.

Firmware

Board File
2k MP2040_1.1.0_b9f4d45_2k.uf2
2kw MP2040_1.1.0_b9f4d45_2kw.uf2
3x3 MP2040_1.1.0_b9f4d45_3x3.uf2
4K Mega Touch MP2040_1.1.0_b9f4d45_4kMegaTouch.uf2
4kw MP2040_1.1.0_b9f4d45_4kw.uf2
Beat Board MP2040_1.1.0_b9f4d45_BeatBoard.uf2
Fightboard Basic (Mirrored) MP2040_1.1.0_b9f4d45_Fightboard-b-m.uf2
Fightboard Basic MP2040_1.1.0_b9f4d45_Fightboard-b.uf2
Fightboard (Mirrored) MP2040_1.1.0_b9f4d45_Fightboard-m.uf2
Fightboard MP2040_1.1.0_b9f4d45_Fightboard.uf2
Macro Pad MP2040_1.1.0_b9f4d45_MacroPad.uf2
Mega Touch MP2040_1.1.0_b9f4d45_MegaTouch.uf2
Mini Touch MP2040_1.1.0_b9f4d45_MiniTouch.uf2
Springboard MP2040_1.1.0_b9f4d45_Springboard.uf2

v1.0.0

Choose a tag to compare

@github-actions github-actions released this 25 Aug 21:37

Release Notes

Initial release

Installation

  1. Download the .uf2 firmware file for your board below
  2. Enter BOOTSEL mode — hold the BOOTSEL button while plugging in (or double-press the reset button)
  3. A removable drive named RPI-RP2 will appear — copy the .uf2 file onto it
  4. The device will flash and reboot automatically

If the device was previously used for other firmware, flash flash_nuke.uf2 first to clear memory.

Firmware

Board File
2k MP2040_1.0.0_b8c60ef_2k.uf2
2kw MP2040_1.0.0_b8c60ef_2kw.uf2
3x3 MP2040_1.0.0_b8c60ef_3x3.uf2
4K Mega Touch MP2040_1.0.0_b8c60ef_4kMegaTouch.uf2
4kw MP2040_1.0.0_b8c60ef_4kw.uf2
Beat Board MP2040_1.0.0_b8c60ef_BeatBoard.uf2
Macro Pad MP2040_1.0.0_b8c60ef_MacroPad.uf2
Mega Touch MP2040_1.0.0_b8c60ef_MegaTouch.uf2
Mini Touch MP2040_1.0.0_b8c60ef_MiniTouch.uf2

v1.0.0-prerelease

v1.0.0-prerelease Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 20 Aug 22:42

Installation

  1. Download the .uf2 firmware file for your board below
  2. Enter BOOTSEL mode — hold the BOOTSEL button while plugging in (or double-press the reset button)
  3. A removable drive named RPI-RP2 will appear — copy the .uf2 file onto it
  4. The device will flash and reboot automatically

If the device was previously used for other firmware, flash flash_nuke.uf2 first to clear memory.

Firmware

Board File
2k MP2040_1.0.0_28947b1_2k.uf2
2kw MP2040_1.0.0_28947b1_2kw.uf2
3x3 MP2040_1.0.0_28947b1_3x3.uf2
4K Mega Touch MP2040_1.0.0_28947b1_4kMegaTouch.uf2
4kw MP2040_1.0.0_28947b1_4kw.uf2
Beat Board MP2040_1.0.0_28947b1_BeatBoard.uf2
Macro Pad MP2040_1.0.0_28947b1_MacroPad.uf2
Mega Touch MP2040_1.0.0_28947b1_MegaTouch.uf2
Mini Touch MP2040_1.0.0_28947b1_MiniTouch.uf2