Can a button send an arbitrary string?

+2 votes
asked Nov 10, 2015 in Suggestions by jimlaing (170 points)
recategorized Dec 2, 2015 by MIDI Designer Team (Dan)

1 Answer

0 votes
 
Best answer
Hi there, right now you cannot do this in MD. MD sends on one MIDI message per control, and MIDI messages are separated at their high-bit  bytes (except in the case of sysex, where they are sandwiched in high-bit bytes).

However, this is a cool suggestion for MD. On the other hand, this might be something MidiBridge or MidiFlow can do?

Thanks!
answered Nov 10, 2015 by MIDI Designer Team (Dan)
selected Dec 2, 2015 by MIDI Designer Team (Dan)
Thanks for the response.  I hope that this would be considered as a future feature, to have a button be able to send any arbitrary string, including multiple commands of various types all in one button, or any HEX string that a user wants.  Thanks!
Thank you for the suggestion and for using MD. We'll see what we can do, and when.
This is an interesting idea and could be pretty challenging to implement properly.

 For example, the user might want to select a patch on his instrument and then dial several parameters to tune it in. You wouldn't want to retain and replay every single message received while listening because there would be stream of messages as the control is changed and you only want the last value.

The way to do this probably would be to create a list of message types and values as messages come in (add to the list everytime a new message type is received) and only retain the last message value.

There also is the question of what order the list should be sent in when the control is activated.....
Interestingly, we do thinning like that as messages come in. It's a tiny bit more complicated, but it's interesting.

My concern was really how do you know when the bytes are done... But that's just a UI problem. This could be a cool feature in the future.
I haven't tried this so I don't know what happens when you press the "learn" button so my first reaction is "hit the button again to exit learn mode". I'll have to play with it.
Hi - as for when the bytes end, do you mean in the Learn mode?  The app could have a "STOP" button, so when you are done doing whatever you're doing on your keyboard to generate some various MIDI commands (bytes), you just tap STOP to say "I'm done, go ahead and store the bytes you received so far".  Could that work?
send xml? Or JSON?
...