External Control

Use this forum to ask questions about procedures for connecting with MIDI host devices and apps.
Post Reply
erniethepiper
Posts: 3
Joined: Thu Dec 29, 2022 1:29 am

External Control

Post by erniethepiper »

Will the WARBL receive a MIDI message from an app to change instruments? Specifically, one of the three instrument setup possibilities within the Warbl, and not to be confused with a program change within an app such as ThumbJam. I would like to have a virtual button within LoopyPro select a different instrument fingering within the warble itself vs. using a long press of one of the three physical buttons. I’ve tried messing around by sending program changes to the warble with no success. The console within the WARBL config tool shows a message of "PB 1 0 64" when using the physical buttons to switch an instrument, but I’m not sure how to translate this to a hex output for a command too be sent back from LoopyPro. This would also be useful to automate things from Loopy or another DAW. An example would be to be playing a whistle on a timeline and have an immediate automated switch to Highland pipes.

Thanks in advance.
erniethepiper
Posts: 3
Joined: Thu Dec 29, 2022 1:29 am

Re: External Control

Post by erniethepiper »

Got it figured. I did a deep read of the code on GitHub (thanks so much for the open source https://github.com/amowry/warbl/tree/ma ... bconfig/js) and found within the web app some of the cc codes that are sent to configure the WARBL.

CC 102, 60 selects tab/instrument 1
CC 102, 61 selects tab/instrument 2
CC 102, 62 selects tab/instrument 3

All sent from Loopy Pro on channel 7 worked great. I get the flash of the led on the WARBL and the tab moves within the WARBL app on iOS.

Cheers!




Reference lines 1425-1462 of WARBL/web confit/js/midi.js:

function sendFingeringRadio(tab) { //change instruments, showing the correct tab for each instrument.

instrument = tab;
updateCustom();
advancedOkay(); //turn off the advanced tab
pressureOkay();
handleDefault(); //display correct default instrument and "set default" buttons
customFingeringOkay();
if (tab == 0) {
document.getElementById("instrument0").style.display = "block";
document.getElementById("instrument1").style.display = "none";
document.getElementById("instrument2").style.display = "none";

document.getElementById("key0").style.display = "block";
document.getElementById("key1").style.display = "none";
document.getElementById("key2").style.display = "none";
sendToWARBL(102, 60);
} else if (tab == 1) {
document.getElementById("instrument0").style.display = "none";
document.getElementById("instrument1").style.display = "block";
document.getElementById("instrument2").style.display = "none";

document.getElementById("key0").style.display = "none";
document.getElementById("key1").style.display = "block";
document.getElementById("key2").style.display = "none";
blink(2);
sendToWARBL(102, 61);
} else if (tab == 2) {
document.getElementById("instrument0").style.display = "none";
document.getElementById("instrument1").style.display = "none";
document.getElementById("instrument2").style.display = "block";

document.getElementById("key0").style.display = "none";
document.getElementById("key1").style.display = "none";
document.getElementById("key2").style.display = "block";
blink(3);
sendToWARBL(102, 62);
}
User avatar
admin
Site Admin
Posts: 741
Joined: Tue Mar 26, 2019 5:17 pm
Contact:

Re: External Control

Post by admin »

Great, I'm glad you got it figured out! I had to look it up myself and I was just going to reply. FYI, the MIDI Console in the Configuration Tool ignores all those messages on channel 7 that are used for communication, which is why you didn't see them there.
Andrew Mowry
info@warbl.xyz
erniethepiper
Posts: 3
Joined: Thu Dec 29, 2022 1:29 am

Re: External Control

Post by erniethepiper »

All very exciting stuff. There are so many thing that can be tweaked and controlled on the fly in the same way. I take it that you don’t happen to have a quick reference list of all the CC commands pertinent to the warbl if you were going to look things up. If you don’t happen to have one, maybe in my spare time I’ll make one and post it here for others to reference.

Thanks for such a wonderful musical tool. It’s really changed the way I approach music.
User avatar
admin
Site Admin
Posts: 741
Joined: Tue Mar 26, 2019 5:17 pm
Contact:

Re: External Control

Post by admin »

My apologies, I didn't see this request. Here's the Google sheet that contains all the commands:

https://docs.google.com/spreadsheets/d/ ... sp=sharing

Sorry that it's not totally organized, as I've mostly been the only one who has used it. It also may change with future updates.
Andrew Mowry
info@warbl.xyz
Post Reply