Skip to content

Massdrop Firmware Loader - for CTRL / ALT / SHIFT / Rocketeer keyboards

License

Notifications You must be signed in to change notification settings

MrCNeale/mdloader

 
 

Repository files navigation

User instructions

  1. Follow the instructions here to download the executable for your operating system: https://github.com/Massdrop/mdloader/releases

  2. Plug in your keyboard.

  3. In your terminal, change to the directory where you downloaded the executable and applet-*.bin file(s).

  4. Windows - Run mdloader_windows.exe --first --download FILE_NAME --restart. Replace "FILE_NAME" with the filename of your compiled firmware.
    Linux - Run mdloader_linux --first --download FILE_NAME --restart. Replace "FILE_NAME" with the filename of your compiled firmware. Depending on your user's permissions, you might have to add your user to the dialout group or use sudo on the command.
    Mac - Run mdloader_mac --first --download FILE_NAME --restart. If you downloaded with Mac Safari, run mdloader_mac.dms --first --download FILE_NAME --restart. Replace "FILE_NAME" with the filename of your compiled firmware.

  5. You should see the message:

Scanning for device for 60 seconds  
.....
  1. Within 60 seconds, press the reset button on your keyboard. For most keyboards running the default firmware, you can hold Fn + b for half a second and release to reset your keyboard (you will see the LEDs turn off). For CTRL keyboards in the first production run running original firmware or of the first method does not work for you, you will need to use a pin to press the reset button through the hole in the bottom of the keyboard.

  2. You should see a series of messages similar to:

Device port: /dev/cu.usbmodem234431 (SAMD51J18A)

Opening port '/dev/cu.usbmodem234431'... Success!
Found MCU: SAMD51J18A
Bootloader version: v2.18Sep  4 2018 16:48:28
Applet file: applet-flash-samd51j18a.bin
Applet Version: 1
Writing firmware... Complete!
Booting device... Success!
Closing port... Success!
  1. Afterwards, you should see the keyboard's LEDs light up again (if your configuration has LEDs enabled) and the keyboard should respond to typing. Your keyboard is now running the new firmware you specified.

Massdrop Loader

Massdrop Loader is used to read firmware from and write firmware to Massdrop keyboards which utilize Microchip's SAM-BA bootloader, over the USB connection.

Supported operating systems

Windows XP or greater (32-bit and 64-bit versions, USB Serial driver in drv_win folder)
Linux x86 (32-bit and 64-bit versions)
Mac OS X

Supported devices

Massdrop keyboard's featuring Microchip's SAM-BA bootloader.

Building

Enter mdloader directory where Makefile is located and excute:

make

This will create a build directory with the compiled executable and required applet-*.bin files.
Run ./build/mdloader to test. Note that the target MCU applet file must exist in the directory the executable is called from.

Usage

Usage: mdloader [options] ...
  -h --help                      Print this help message
  -v --verbose                   Print verbose messages
  -V --version                   Print version information
  -f --first                     Use first found device port as