Pimp my MOCOLUFA - Dual bootable firmware for Arduino DIY MIDI controllers

Last news. A new (to be tested) version of the compiler was put online by @ezequielabregu

Check it out here: https://pumpmocolufa.ezequielabregu.net/

:warning: NOTE: THE ORIGINAL “PIMP MY MOCOLUFA” IS CURRENTLY OFFLINE DUE TO CHANGES IN HEROKU SERVICE CANCELLING FREE PLANS. If you want to rename your Arduino-based MIDI controller using HIDUINO, refer to this tutorial.

Arduino is great for creating DIY MIDI controllers. Many years ago, when I started creating my first Arduino UNO/Mega-based controllers, I got really happy when I came to HIDUINO. This was a USB MIDI Firmware developed by Dimitri Diakopoulos.

The HIDUINO project provides firmware, documentation, and example code for building a class-compliant USB-MIDI device from an Arduino UNO or Mega 2560. HIDUINO does not use middleware software to convert serial messages through a MIDI loopback port (like LoopBe1 on Windows or IAC on OSX). Instead, HIDUINO provides a true USB-MIDI device for plug-and-play compatibility on Windows, OSX, and Linux - just like a commercial MIDI controller. HIDUINO | Dimitri Diakopoulos

That’s great! I used it for many DIY controllers. But I have to say something was not too comfortable about using HIDUINO: I had to open and program the “programmed” micro through ISP method because the board lost it’s Serial USB capabilities when switching to MIDI.

Then, I came across MOCOLUFA, a simple dual-bootable firmware that solved that problem. GitHub - kuwatay/mocolufa: mocoLUFA (MIDI firmware for Arduino Uno)

For everyone looking to create a custom controller with MOCOLUFA firmware, we did this simple website that compiles a custom version of the firmware, letting you name the device and manufacturer at will > Pimp My MOCOLUFA

If you are making a DIY MIDI controller project, feel free to post your progress, doubts, or experiences in this category of the forum.

Hello!

Is Pimp My MOCOLUFA website off for good? :frowning:

Hey @aanjinn
Welcome to the forum!

All those years PMML was hosted on a free server (heroku), but that service is gone.

So we need to find a new host and time to redeploy.
We will bring it back but it may take some time.

Hello! I would like to know if the repository for the ‘Pimp My Mocolufa’ project is public, as I am interested in using it. I plan to set it up in a self-hosted environment. I don’t know the technology used, but if possible, I would consider using a service like Vercel for hosting, as they have free plans. Thank you in advance!

1 Like

Hello!

It wasn’t public, but now it is!

Frontend: https://github.com/pablofullana/moco-lufa-web-ui
Backend: https://github.com/pablofullana/moco-lufa-web-api

There isn’t much documentation, but if you have any questions you can contact pablo, the developer or post them here and we will have him answer.

Cheers and have fun!

Thank you so much for your availability francoytx!
I don’t have experience with Ruby, but based on my background with Java, I believe I can handle the self-hosted deployment.

1 Like

hey @climmaeng let us know if you manage to have it back online for public use. Many people still come to this thread when looking for a way to rename their old UNOs :slight_smile:

Just wanted to drop a quick note — I built a little web app to compile custom MocoLUFA firmware. Tested it and it’s working great so far.

Planning to put it online in the next few days. :grinning_face_with_smiling_eyes:

3 Likes

Ok, I’m pumped about this now :stuck_out_tongue:

Great news! Let us know when it is online, and we can test it out

1 Like

https://pumpmocolufa.ezequielabregu.net/

Here’s a first test deploy.
I’ve tried it a bit (only with Arduino UNO) and it seems to work well.
I should mention that my original idea was always for personal use — for wider use, it might need some adjustments.
Best!

1 Like

I ended up encountering some problems and due to lack of time I couldn’t do it.
I tried to set up a docker environment, but without success, mainly because I didn’t dedicate the necessary time lol (too many tasks in progress).

But I see that @ezequielabregu was successful!

@ezequielabregu please share your step by step if possible, thank you.

1 Like

Hi there,
I couldn’t get the original repo working either, so I ended up throwing together a basic, simple Flask web app that basically does the same thing I was doing by tweaking Descriptors.c and the makefile. Also, since I’m using a newer version of the avr-gcc compiler, I had to tweak the string structure a bit and make a few extra changes.
I’ll definitely give a shoutout to the legendary Pimp My Mocolufa as a reference!
Here’s the repo:
https://github.com/ezequielabregu/pumpmocolufa

1 Like