About
Highlights
- Grid sequencer and project library: save, load, chain and copy tracks freely
- Deep Machinedrum integration, including routing, FX and RAM tools
- Monomachine and Analog Four as secondary MIDI devices
- Runs on MegaCommand DIY, MegaCMD and RP2040/RP2350 hardware such as the TBD-16
What you need
A MegaCommand-compatible controller. MCL 5.02 needs Machinedrum OS X.13 and Monomachine OS X.01A. Update with PlatformIO or in Chrome with the MCL Hex Flasher.
Good to know
MCL 5.00 and later converts projects that older versions cannot open, so back up first. The Machinedrum X.13 OS is not part of the release. On MKI Machinedrums keep Turbo MIDI at 4x or lower.
README
MCL
A high-performance MIDI sequencer, controller and live performance system. Designed to for use with the Machinedrum and other MIDI devices.
Visit the releases page for:
- Latest firmware binaries
- User documentation
- Installation instructions
Documentation
The MCL User Documentation is available online.
The editable manual lives in docs/manual. It is written in
Markdown and built into a static GitHub Pages site with:
python3 tools/docs/validate_manual.py python3 tools/docs/build_manual_site.py
Platform Support
MCL can now be built to run across different hardware platforms using PlatformIO.
Current platforms:
- AVR - MegaCommand DIY and MegaCMD devices
- RP2350 - TBD
- RP2040
Upgrade MCL
-
Install PlatformIO Core
pip install platformio
-
Clone the Repository
First, you need a local copy of the MCL repository. Open your terminal, navigate to a directory of your choice, and run the following commands:
git clone https://github.com/jmamma/MCL.git cd MCL git pull origin master -
Place the MegaCommand in to OS UPGRADE mode
Hold down the < Page > button when powering-on the MegaCommand to enter the boot menu.
Select "OS UPGRADE" to place the MegaCommand in to serial mode.
-
Run the Upload Command
Choose the command that corresponds to your hardware:
MegaCommand DIY:
platformio run -t nobuild -t upload -e megacommand_latest
MegaCMD:
platformio run -t nobuild -t upload -e megacmd_latest
When you execute one of these commands, a script automatically performs the following steps:
- Fetches the latest MCL release manifest from this respostiory.
- Downloads the latest firmware file for your selected device.
- Flashes the downloaded firmware onto your device.
Should platformio not detect the correct upload port you can specify it like so:
platformio run -t nobuild -t upload --upload-port <port> -e <environment>
Building from Source Code
Building and uploading MCL from Source:
MegaCommand DIY:
platformio run -e megacommand -t upload
MegaCMD:
platformio run -e megacmd -t upload
TBD:
platformio run -e tbd -t upload
Architecture
.
├── art Pixel-art and animations
├── build Release manifest and compiled firmwares.
├── include Header files required for building specific libraries
├── resource Compressable C++ data structures used by MCL
│
├── src
│ ├── mcl MCL source code
│ ├── platform Platform specific code
│ └── resources Compressed C++ data structures
│
└── tools Various tools for building the firmware
The AVR version is built on top of the MegaCore Arduino core, and is extended for relevant platforms in src/platform/avr.
The RP2040/RP2350 version is built on top of the arduino-pico core, and is extended for supported hardware in src/platform/rp2040.
Libraries
MCL builds upon proven open-source libraries:
- ArduinoPico by Earle F. Philhower, III
- MegaCore by MCUdude
- MIDICtrl Framework by Manuel Odendahl
- SdFat Library by Bill Greiman
- Adafruit GFX Library by Adafruit
Pictures in the README load from GitHub.
What's New
Firmware Upgrades
MCL version 5.02 requires the following firmware versions:
- Machinedrum OS: X.13
- Monomachine OS: X.01A
- MegaCommand USB microcontroller firmware: 1.04
This update enables USB MIDI. Follow the instructions included inmegacmd_usb_dfu_1.0.4.zip.
Changes and Documentation
- See the Changelog for a complete list of changes.
- The MCL User Documentation is available online.
Upgrade Using Chrome
MCL can now be upgraded directly from Google Chrome using Waftlord’s MCL Hex Flasher.
Upgrade from the Command Line with PlatformIO
Follow the MCL upgrade instructions to upgrade from the command line using PlatformIO.
Need Help?
Join the MCL Discord server for live support.
- Language
- C++
- License
- Other
- Stars
- 92
- Forks
- 14
- Created
- 06-16-2017
- Last commit
- 2 months ago

