Controlling the Boss ME-5 Multi-effect through your cellphone/tablet/laptop

Started by Beach, September 23, 2017, 06:03:33 PM

Previous topic - Next topic

Beach

Dear members

A while ago I bought an ME-5 Multi Effect pedal manufactured by Boss Roland. Great sound! It is totally analog apart from the reverb/delay. As with all stompboxes -in my experience- the sound is very different using it at home or using it in the rehearsel room or gig. The ME-5 has a headphone output and then it sounds all different again. My peer musicians do not have much patience to wait for me to get the right sound, so I try to program it at home, where te sound is different, but it is never spot on the moment I use it with another amp. What I need is a way to program my floorboard on the spot, without much effort.

Digging into the specs of the ME-5 I noticed it has MIDI capabilities. Would it be possible to control the settings through that?

Short answer: YES IT IS!

Even better: I can do it remote, via Wifi. I could even control it from my house or from anywhere in the world (no use there, but it is possible).


I spent some time comprehending the MIDI protocol, then I spent some more time choosing the right hardware to control it, then I had to learn HTML, javascript, CSS and PHP, and some linux too. But I think I have a working solution now.

My requirements:
- Control all settings of the ME-5 with some platform independent protocol.
- Should be fast, and with a minimum in hardware.
- No pressing buttons on the floorboard (and bend down). Apart from the footswitches of course.
- Getting the ME-5 in manual mode. (Again without pressing any buttons on the floorboard).
- All patches should be available and programmable.
- Changes in patches can be saved/recalled.
- A dump save/load function.
- Low budget.

So I bought myself a raspberry pi zero W and peripheral hardware. Installed it as a webserver, and created a website to control the board from a smartphone. The raspberry acts as an access point in the rehearsel room so I do not need an internet connection. I just log in with my phone, open a webbrowser and all settings are at my disposal.

I now can instantly change any setting with my phone, save it if it is satisfactory, put the ME-5 in manual mode (and back again), change patchnumber. I further can still use all (foot)switches on the ME-5, no functionality is lost.

Hardware needed:

- ME-5 (obviously)
- raspberry pi zero w (*)
- Midi cable (**)

* Any raspberry would do I guess, I used a Zero W
* Any other hardware with which a webserver can be served would probably do, however some changes are required to control the midi port (RS232)
** Midi cable or self-build hardware

I bought a MIDI cable 2ndhand. In the ol´days they were manufactured for the old soundcards. It is a SUBD15 connector on one side and two din plugs on the other side. Mine as an extra SUBD15 ´through´ connector in which you could plug a joystick. Be sure to get the one with the optical chips in separating it electrically from the MIDI device.

I will not go into every detail. Here´s the steps I took:

Setup raspberry PI

Download the latest JESSIE (not STRETCH, the access point did not work for me)

Install apache
   sudo apt-get install apache2 -y
install PHP
   sudo apt-get install php5 libapache2-mod-php5 -y
install nfs server (optional)
   sudo apt-get install nfs-kernel-server

For RS232 midi add the following to the end of /boot/config.txt

enable_uart=1
dtoverlay=pi3-miniuart-bt
dtoverlay=midi-uart0

OR

enable_uart=1
dtoverlay=midi_uart1

(I use the latter, that way the bluetooth is still operative)

These commands configure UART1 (ttyS0) so that a requested 38.4kbaud actually gets 31.25kbaud, the frequency required for MIDI

In cmdline.txt
Find and remove any mention of ttyAMA0,115200 such as
“console=ttyAMA0,115200” and “kgdboc=ttyAMA0,115200”.
It should still say "console=tty1" after you've edited it.
edit: in my case it said console=serial0,115200. remove that too.

next add the apache user (www-data) to the dialout group
sudo usermod -a -G dialout www-data
check with ´groups www-data´

reboot your pi

sudo mkdir /var/www/html/syx
sudo chown www-data:www-data /var/www/html/syx
sudo chmod 744 /var/www/html/syx

syx is the directory users can write to.

in /etc/php/apache set php.ini
max_input_vars = 3000 (anything larger than ca 2250)
UPDATE: the php.ini file differs in Jessie and does not
need to be altered.

Optional:

Install software to set the raspberry as access point so you do not need to login to some router.
Add a button to shutdown/wake up the raspberry without the need of a keyboard/monitor/mouse/ssh
Add LEDS to show the status of the raspberry.
Add a 9V to 5V regulator to power the raspberry from a 9VDC PSU which is compatible to all my other stompboxes (I can daisychain now)

Access Point:
I followed most of http://www.raspberryconnect.com/network/item/331-raspberry-pi-auto-wifi-hotspot-switch-no-internet-routing

Add button:
Follow: http://www.stderr.nl/Blog/Hardware/RaspberryPi/PowerButton.html#comments.

Add a status LED:
In /boot/config add the line:
dtparam=act_led_gpio=23

And connect a led (in series with a resistor of some 2k2) to gpio port 23

Add a 9VDC input port:
Well I used an LM7805 for that, connected a red LED (with 2k2 resistor in series) to the 5V output).

I build a bomb-proof case around it, so it would n´t be destroyed if someone stepped on it (as with my guitar case...)

I am not a programmer or web-designer, so the layout is minimal design. You can have the code under the following conditions:

Do not delete the headers. I once wrote a book on integrated optics under contract at the university. The minute my contract ended my name vanished from this very book. Suddenly the head of the department was the author!

You have to send me an email requesting the software, I´d like to keep track of things.

Do not share the software with others, instead give them my mail address.

Absolutely no warranty whatsoever, use it at your own risk (I did, no smoke yet).

Like it? Donations are welcome, I spent some 200-250 hours. This is not a requirement though.

Send me a PM for the software, start the subject with "ME-5".

Questions? Upgrades? Better layout? Write a comment in this forum.




I added some pics of screenshots, but they do not show????
Tried it again.. no dice. How can I add pics?



Apparantly one pic is max....

This is the page entry. After a few seconds (3 in my case) all patch information is loaded into the page. You´ll see a notification in the left-bottom. In this screen you can choose directly which patchnumber you´d like to hear by selecting its bank/group/number directly or go up/down one patch.

Try this: http://www.checkout-systems.com/me-5

Beach




Typical screen in which you can change settings with sliders. You can instantly save the setting (to temp memory in the ME-5) by clicking SAVE. In another screen you can save patches as .syx files to the webserver disk for keeps, or save it to a specific patchnumber in the ME-5

Beach



Used an old Philips power supply case to put everything together.
On the left the MIDI cable (SUBD15 or DB15), left bottom you see the 1/4" jack that plugs to the ME-5 ´manual´ input. The other cables at the bottom are for HDMI, and USB and (for now) the PSU.

The loose cables at the right are the 9VDC connection. I am waiting for my DC panel plug I ordered from ebay....

There is a RED LED indicating power-on and a BLUE LED (not visible in the pic) to indicate ´movement´ in the processor.
On the right there is a button with which I can shutdown the raspberry in an orderly fashion (unplugging the PSU could damage the SD-cards´ content). The same button is used to start it up again.

Beach

Be sure to empty your inbox if you´re expecting a message and it does not arrive.

pinkjimiphoton

dude,
you are an epic hero.
still one of the most musical multis ever made, i have 4-5 of 'em.

i used to take off my shoes n program it with my toes while playing to get it dialed in. its not as hard as it sounds. ;)

props on digging it

if i had the use for it, i'd be all over it but i'm a luddite with a crackberry still ;)
  • SUPPORTER
"When the power of love overcomes the love of power the world will know peace."
Slava Ukraini!
"try whacking the bejesus outta it and see if it works again"....
~Jack Darr

Beach

I can imagine that my 1st story was rather scary for the Luddites out there. However, I bought a midi to USB converter and changed some of the software. So still not for the faint of heart, but rather less complicated. You will have to set up a webserver on your laptop/pc/raspberry whatever, but it does work now with a simple usb-midi converter. So 80% of the original setup can now be omitted (everything raspberry related).