MIDI Control and Program changes

Working to controll my Edirol V4 by MIDI, I have the next problemm.

For the ‘monitor input’ select funtion, I need to send the next MIDI code (code is Decimal)

176, 0 ,0, 176, 32 ,0, 192, 1

176 means control change, and 192 means program change.

Since only way to send out MIDI is by MidiShortOutput (devices), I have to send 3 MIDI outputs: (message - data1 - data2)

Output1: 176 - 0 - 0
Output2: 176 - 32 - 0
Output3: 192 - 1 - 0

I have constructed some thing with an LFO loop in (sends every value 0,1 sec) and some switches, but I am not sure if this is the most elegant way. The framedelay is to stop the LFO, I don’t know if it is needed.

See attached patch.

Any commands, sugestions or ‘easy’ ways are very welcome.

Control and Program Change.v4p (15.8 kB)

i like it more with spreads, though i’m not really sure, whether it makes a difference in performance.

your lfo-construct was sending the Output1 again after the 3rd one, as the framedelay pauses the lfo delayed.
and i think you didn’t send the value for 0,1 sec. the change only banged the send signal every 0,1 second. so i guess you send the value only for the frame, when it banged.

Control and Program Change_v2.v4p (10.6 kB)

this can be done much simpler. just enter the numbers (176, 176, 192) as a spread in the first input of the MidiShortOutput (use an IObox or the inspector); (0, 32, 1) as the second and 0 in the third. If you like to make things complicated you could also enter (0,0,0) instead of 0.
now bang the DoSend and you should be done.

Thnx for the commands Woei :)

Not that it helped me much, because the thing oschatz said realy works.

Now, when I look with the inspector at the MIDIshortOUTPUT (devices), it cleary says:

=> BUGS; NOT SPREADABLE YET

So I didn’t bother. But hehe, using a simple set-slice function is making life a bit more easy for me now.

Oschatz, how many values can I send in one go/bang??

Now, when I look with the inspector at the MIDIshortOUTPUT (devices), it cleary says: => BUGS; NOT SPREADABLE YET

i guess that message is a bug… we´ll try to fix that :)
from what i expect, you can send as many values as you like… it might take a while though…