I want to make a little JUCE utility that interfaces with a ROLI Seaboard. In particular I would like to somehow get the raw 2D (x, y) position data right from the keyboard and do various things with it and map it to MIDI in various ways. Is this somehow possible to do?
This is different from just the “Glide” and “Slide” MIDI data as the “Glide” value is always relative to the position of the initial note on, whereas I just want the absolute initial x and y values even if the initial note position is in between keys.
What I am looking to do clearly possible because the ROLI Dashboard app (which I think is made in JUCE) shows the raw (x, y) position when you play a key. It also looks like there were various JUCE APIs released for ROLI instruments a long time ago. Thus there is clearly some way to get this data right from the keyboard. Can anyone point me in the right direction?
Thanks,
Mike
EDIT, some stuff I have looked at so far:
The BLOCKS SDK. Is this supposed to support the Seaboard block module? Running the BlocksMonitorDemo with the Seaboard block connected just gives the message “No BLOCKS Connected.”
Hi Mike,
BLOCKS SDK doesn’t support the Seaboard RISE.
I wasn’t aware of the Seaboard Grand SDK but I couldn’t see anything on a quick glance.
Dashboard gets its position data from the MIDI MPE input. The juce classes can help with this - you will just need to map pitchbend and timbre (slide) to X/Y. See the MPEDemo in juce.
It looks like Dashboard can tell where the key is pressed horizontally, even if the location of the initial press is located at different positions “within” one key. For instance, suppose I play something halfway between B and C; the correct (x,y) value will show in Dashboard. But from an MPE standpoint, doesn’t it first quantize to the nearest note value, and then only bend relative to the position of the initial note press, so wouldn’t it just output either B or C with no pitch bending?
But this isn’t what Dashboard does; it shows the correct location of the initial press regardless, meaning the (x,y) coordinates are wherever I played it in between B and C. I interpreted this as that Dashboard was getting additional information besides just the MPE data to put the (x,y) value on the screen.
If you are saying this is possible to do just from MPE, then how do I determine the position of the initial note press just from the MPE data?
Does anyone know where I may be able to get this information? Are there any ROLI developers on here or would there be another board better suited for this question?
Also very curious if the RISE 2 will support this.