MCL (MegaCommand Live)

by jmamma·Tool

MCL firmware for the MegaCommand MIDI Controller.

Version 5.02·released 2 months ago·21k downloads
MCL (MegaCommand Live)
Preview picture from GitHub

About

MegaCommand Live is sequencer and performance firmware for the MegaCommand MIDI controller. With a Machinedrum it acts as an external brain: grid sequencing, saving and loading tracks, chains, sample tools and live arrangement. The Monomachine and the Analog Four work as secondary devices.

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

  1. Install PlatformIO Core

    pip install platformio
  2. 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
  3. 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.

  4. 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:

Pictures in the README load from GitHub.

What's New 5.02released 2 months ago
MCL 5.02

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 in megacmd_usb_dfu_1.0.4.zip.

Changes and Documentation

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.

Repositoryjmamma/MCL
Language
C++
License
Other
Stars
92
Forks
14
Created
06-16-2017
Last commit
2 months ago

Added by Neutron on Yesterday · History (1 version)




User Profile Send Private Message E-mail Find all posts Find all threads Mod Tools Admin Tools