Control OpenLP with MIDI signals

edited September 2020 in General Support
Most of us will be using some kind of MIDI device when making music. Some people use apps like Ableton to play backing tracks send signals back and forth. Wouldn’t it be great if there was a way of controlling OpenLP by sending MIDI signals? Actually, there is a way to do this via JavaScript. Unfortunately it isn’t supported by every browser yet. But it seems to be fully supported by Chrome, Edge and Opera. At least, I tried it with Chrome and it worked just fine.

I included the files I wrote in this post. Just download them and unpack them. Then, for testing purposes open the file “midi-monitor.html” in the Chrome browser. Right away, it should show you all connected MIDI Input Devices. If you connect or disconnect one, the list updates automatically. Now, if there is a MIDI device connected, just press some keys, and every MIDI Event will be recorded. Press a key twice and the corresponding row will light up (possibly changing the value in the rightmost column). The way I set it up is: Every event with the value 127 or 0 gets its own row. Everything in between is counted as the same event, just with changing values.

(Note: If you want to have a look at the inner workings of the scripts, go ahead and open the HTML files. But I have to warn you: I didn’t really clean up. It’s pretty messy, but it works. In the future, I will make a prettier version of those files, with comments and everything.)

Then, if that worked, go on and open the file “midi-openlp.html”. Everything looks very similar, only there is a column to the right called “OpenLP”. Now press some keys. If you want that key event to be sent to OpenLP, click on “send to OpenLP”. More lines appear. First it tells you if it will use the value to determine if it should trigger or not (you can’t change that behaviour). Then you can choose, which OpenLP action you want to have performed.

Here are the settings I chose. I connected a Korg nanoKontrol and designated four keys.

Given that you activated the OpenLP remote and didn’t change the ports or gave a password or anything, it should work right away. Next time you press the key, the corresponding row will light up and OpenLP will get to work.

Now, to save your settings: Press the save button at the bottom. It will provide you with a link. Use this link to open the page the next time, and all your settings will be there. However, this link does not update itself automatically. If you make any changes, click “save” again, and then use the link.

Possible use cases:
  • Connect a MIDI Controller to your presentation computer. You can have one volunteer work on the keyboard while another one controls the slides via MIDI.
  • Use your left keyboard pedal or something like AirTurn Bluetooth Pedal or iRig Blu­e­Turn to switch slides. Additionally, if you have a stage monitor with chords, you will always have the right lyrics showing.
  • If you use something like Ableton to play backing tracks, you can automate slides by sending MIDI signals from Ableton to OpenLP.


Sign In or Register to comment.