Welcome to %s forums

BrainModular Users Forum

Login Register

Isomorphic touchscreen keyboard

I need help on a Patch
Post Reply
Marlow77
Member
Posts: 15
Contact:

Unread post by Marlow77 » 17 Feb 2015, 16:09

Hello,

I am trying to make an isomorphic touchscreen keyboard somewhat like the Soundplane or Linnstrument. Has anyone made anything like this? If someone could help me to do a simple touch key to midi out for several separate keys I think I could fill in the rest. It seems that most people use matrices for this and arrays. These methods are still new to me and I don't quite understand them. Also, other things in the add-ons sections don't seem to work well with multiple touches at the same time. When I started trying to build it from scratch it seemed that keys seemed to not mix well and caused delays and such.

Bottom line, if someone could help me to build a simple two or three button patch that each sends a different note I think I could build an isomorphic keyboard to share if this hasn't already been done.

Icing on the cake -- and it would be even cooler if someone could help me to understand how to make three button (keys) that could send X-Y CCs, that would be even better!

Thanks in advance.

Marlow

sephult
Member
Posts: 1144
Contact:

Unread post by sephult » 17 Feb 2015, 17:11

Hi marlow77!

Start here for MIDI Note Messages and also CC sending

Browser-All Modules-Midi-Create Midi Message.
You define the Message Type for Note On, Code 1 is the Note, Code 2 is the velocity.
For CC Code 1 is the CC, Code 2 is the value.

To send you trigger the create inlet. So you could essentially Set up a different note for an array of Buttons.

Obviously it would get out of hand, so then start looking into Sub-Patches and Polyphony to organize more amounts of data.
Also Using Fastscripts and sending messages can be a preferred choice of some.

So the CC is the same method, I am not sure what you mean about 3 buttons that send X-Y CC's.
However you can Take an XY pad and convert the data from 0-1 range to 0-127 MIDI range Using Browser-All modules-Data-Data Manipulation- Change Scale. There you would just define 0,1 as your minimum input scale from an XY, and then you would specify your output range for MIDI. This value would just then pump into a code 2 of a Create Midi Module.

As for Notes, a basic way to have the preferred Note On/Off is to add a Midi Transform Module after the Create Midi Message. With this you can define scales to adhere to, set fixed Length of note durations, Pitch change, Velocity change....etc.

Let me know how it goes and if you need some additional help I will be around here in a few hours.
If you are having problems, I can also give you some tutorial patches to help explain.

-S
"Every act of creation is first an act of destruction." -Picasso

Marlow77
Member
Posts: 15
Contact:

Unread post by Marlow77 » 17 Feb 2015, 19:10

sephult,

Thanks for all of your ideas! I will play around with it some more given what you have said and let you know if I have any questions!

sephult
Member
Posts: 1144
Contact:

Unread post by sephult » 17 Feb 2015, 19:44

Yeah, sometimes the best is to dig in and see what you can find. Do some test and check output.
There are a lot of different design methods and ways to do things. Once you start and get an idea then you can go by cleaning up and optimizing.

You have any questions or want to bounce back and forth ideas let me know and I can help.

-S
"Every act of creation is first an act of destruction." -Picasso

Marlow77
Member
Posts: 15
Contact:

Unread post by Marlow77 » 18 Feb 2015, 10:46

sephult,

Could you please send me those tutorial patches you described? I want the midi notes to send when I have clicked on the XY pad and then turn off when I take my hand off of the pad, but I think I need to send a note off command. Any help and example patches would be great. Also, insights on sub-patches and polyphony would be helpful if you have any.

My email address is marlow77@hotmail.com

Thanks!

Marlow

Marlow77
Member
Posts: 15
Contact:

Unread post by Marlow77 » 18 Feb 2015, 10:48

Also, is there a way to merge midi events? For instance, if I make three different instances and feed them to a VST midi input, they seem to conflict with each other, like it is mono or something... Ideally, to save CPU, I would like to send all midi XY pads to a midi bus and use one VSTi to feed them to.

Thanks,

Marlow

ceasless
Member
Posts: 330
Contact:

Unread post by ceasless » 21 Feb 2015, 02:12

There is a MidiMux script in my 'midi on my mind' add-on which may help. If you need more inputs, you can change a single value inside of the script. Just double click and change it to what you want. Check out MidiPlex as well, which gives you the ability to 'mute' any of the inputs.

As to the main idea, depending on the kind of isomorphism you want, there was just released an APC isomorphic add-on in the style of Ableton Push. I'm planning to build from drakh's hard work, and I imagine you might be able to as well. It might be almost as easy as "wiring in" a grid module.

Marlow77
Member
Posts: 15
Contact:

Unread post by Marlow77 » 21 Feb 2015, 09:40

ceasless,

Thanks for the suggestion. I will go and download it and take a look. I did some work on making a simple 12 button midi keyboard, but it seems to be monophonic. I have uploaded the patch here if you would be willing to take a look. I am wondering if I need to make it a subpatch and add polyphony. I also wonder if I need a midi dispatcher for it. It seems to be polyphonic, but it kind of re-triggers when notes are released in a weird way.

https://www.dropbox.com/s/lje6prrt8guu5 ... s.pat?dl=0

Thanks,
Marlow

Post Reply

Who is online

Users browsing this forum: No registered users and 72 guests