|
Post by Girlvsworld on Apr 8, 2018 17:18:58 GMT
hello, just curious if changing pc to cc messages is possible with Midifire and if there are any issues with doing so on a foot controller - I have a drum app that only accepts cc messages and a test I did using pads on a midi keyboard would only trigger ‘play’ if the pad was held down, stopping the minute it was released.
Thank you!
|
|
nic
Soapbox Supremo
Troublemaker
Press any key to continue
Posts: 2,011
|
Post by nic on Apr 8, 2018 17:33:50 GMT
Yes, a PC can be mapped to a CC. You can either use the PC to toggle the CC on/off with each press, or in your case maybe just on with each press.
It would be done using the Stream Byter app and a rule like:
C0 12 = B0 15 7F
Which would send a CC 21 ON whenever PC 18 is seen. This is just an example with arbitrary numbers.
You could also do a blanket map of all PCs to corresponding CC ons with a rule like:
CX = BX XX 7F
Regards, Nic.
|
|
|
Post by Girlvsworld on Apr 8, 2018 17:36:35 GMT
Thanks for the quick reply!
|
|
|
Post by Girlvsworld on Apr 8, 2018 18:20:40 GMT
Sorry, another question - total newbie here!
I used C1 = B0 15 7F to test pc 1 > cc 18, and turned on the event monitor - when I press the pedal the modules turn yellow, but nothing happens in the event monitor, nor is the cc message sent to Vatanator.
Do I need to add anything to the rules? I am only adding that one line, no END or anything and i’, not sure if I’m doing it right!
|
|
nic
Soapbox Supremo
Troublemaker
Press any key to continue
Posts: 2,011
|
Post by nic on Apr 8, 2018 18:22:48 GMT
Your test rule needs a small tweak:
C0 01 = B0 15 7F
C1 means any PC on MIDI channel 2
Regards, Nic.
|
|
nic
Soapbox Supremo
Troublemaker
Press any key to continue
Posts: 2,011
|
Post by nic on Apr 8, 2018 18:26:14 GMT
Please note there is a bug in the event monitor (fixed for next update) where it will get confused when you remap from one event type to another (as you are doing) and often not display the right thing.
|
|
|
Post by girlvsworld on Apr 8, 2018 18:34:32 GMT
I tried with midi monitor I noticed that each pedal sends out as
PROG 1 000 000 PROG 1 000 001 PROG 1 000 003
Thank you again for your helpfulness and quick replies!
|
|
|
Post by girlvsworld on Apr 8, 2018 18:36:05 GMT
Forgot to ask if that rule is still correct considering the way the pedal is sending it’s messages?
|
|
nic
Soapbox Supremo
Troublemaker
Press any key to continue
Posts: 2,011
|
Post by nic on Apr 8, 2018 19:02:52 GMT
Hi girlvsworld , That seems to me that the pads send program changes 0, 1 and 3 all on MIDI channel 1. So your rules would look something like: C0 00 = BX 15 7F C0 01 = BX 16 7F C0 03 = BX 17 7F This remaps as follows: Program Change 0 -> CC 21 ON PC 1 -> CC22 ON PC 3 -> CC23 ON If you need different CC numbers than the ones I chose, then you just adjust the byte between BX and 7F in each rule. Regards, Nic.
|
|
|
Post by girlvsworld on Apr 8, 2018 19:41:24 GMT
Sorry but it’s still not working. I’m sure the problem is me! Event monitor says it’s ch 01 ctl num: 5 Val:127 which seems to me that it’s working (rules set to cc 5) but Vatanator in midi learn doesn’t recognize any input. I have midi in on Vatanator set to midifire on channel 1.
|
|
nic
Soapbox Supremo
Troublemaker
Press any key to continue
Posts: 2,011
|
Post by nic on Apr 8, 2018 19:59:18 GMT
Hi girlvsworld, Sounds like a routing issue. If you have configured vatanator to listen to the midifire virtual output then make sure in midifire, that on the canvas you have your routing laid out as: <pad controller> -> Stream Byter -> MidiFire You should not need any midi destination called vatanator, since you've configured that to use the midifire port. Regards, Nic.
|
|
|
Post by girlvsworld on Apr 8, 2018 20:09:14 GMT
Thank you so much!!! It’s working. One last question, how would I write a rule to trigger a cc on/off for a play/stop button? I promise to leave a good review in the App Store
|
|
nic
Soapbox Supremo
Troublemaker
Press any key to continue
Posts: 2,011
|
Post by nic on Apr 8, 2018 20:21:35 GMT
Hi girlvsworld , A little bit more tricky. We have to toggle the CC each time we see the play/stop button, which I am going to assume is a program change. Taking your example of program 0 -> CC5 then this would do it: IF LOAD ASS L0 = 0 # assume we are in stop END IF M0 == C0 00 # PC 0 on channel 1 MAT L0 = L0 ^ 7F # toggle the value in L0 SND B0 05 L0 # send CC5 with ON/OFF XX = XX +B # block PC ENDWe keep track of the current value of the play/stop CC in a variable called L0. Each time we see the PC then flip that L0 value between OFF (0) and ON (7F) and then we issue a CC on or off depending upon current value of L0. Flipping is done mathematically using the '^' (XOR) operator. Regards, Nic.
|
|
|
Post by girlvsworld on Apr 9, 2018 0:53:33 GMT
Thank you so much for all your help!
|
|
|
Post by girlvsworld on Apr 11, 2018 22:06:27 GMT
Hi Nic. I ended up using an expression pedal to send the play stop messages, because my original midi foot controller has a pedal input on the back that sends cc messages and that just seemed easier. Now unfortunately it has stopped working. It’s not the expression pedal because I can plug it into the other inputs - cc 64/hold, expression 2/cc 16 and expression 1 (volume)/cc 7 and they all will start the drum machine but not stop it. I have tried using the code above in a separate stream bytes module (because adding it to the first stopped everything from working), could you help me with the above code for start stop using one of the cc’s mentioned here? Thank you.
|
|