Notifications
Clear all

MIDI CC flow  

  RSS

Seagreg
(@seagreg)
Trusted Member
Joined: 10 months ago
Posts: 53
April 18, 2020 3:14 pm  

can you please create a flowchart in the manual for cc information starting with hardware knob going to the Unify Macroknob going to layers of Unify.
You did it already for the general midi workflow. But I think it is not displaying the funktion of the Macroknobs in detail.

please tell me if I’m wrong.

1) The incoming MIDI information including the cc information is distributed to every layer of unify, if no filter is activated. 

2) If a Macroknob is activated ( cc assigned) a filter is set to the corresponding cc signal. This cc signal is only distributed to 

destinations that are assigned in the parameter path.

3) You can use a Macroknob with assigned parameter paths without cc assignment with the mouse.

4) To be compatible with the existing pluginGuru patches you can assign cc 1,2,4,67 to Macroknobs - best the first four ( therefore I didn’t understand why the picture in the manual shows cc16 cc1 cc2 cc67 .....) 

 


Quote
getdunne
(@getdunne)
Member Admin
Joined: 1 year ago
Posts: 1606
April 18, 2020 3:27 pm  

Please don't ask questions more than once, thanks.


ReplyQuote
Seagreg
(@seagreg)
Trusted Member
Joined: 10 months ago
Posts: 53
April 18, 2020 4:15 pm  
Posted by: @getdunne

I don't have time to make a diagram at the moment, but I will do my best to explain.

Your points 1, 3, and 4 are correct, but 2 is not: When a macro knob is turned, the values of all of its linked parameters will be updated, according to the new position of the knob. The parameter values are set directly, not via MIDI. However, the knob will also send out a MIDI CC message, if it has an assigned CC number, and I believe this was the cause of your problem.

Here is a more detailed explanation of how incoming MIDI messages are handled in Unify:

  1. Incoming MIDI messages (CC included) are always distributed to all MIDI and INST layers, and the macro knobs.
    • INST layers can optionally be set to ignore the input MIDI stream, and listen to the output of a selected MIDI layer instead
  2. If an incoming MIDI CC message matches the CC-number assigned to a macro knob, that macro knob will move to match the value of the CC message.
    • MIDI CC messages carry a value in the range 0-127
    • This is interpreted as 0 to 100% of knob rotation
  3. If a knob has an assigned CC-number, turning the knob will also inject new CC messages into the MIDI stream to the layers.
    • This is supposed to happen only
      • when the knob is turned manually, using the mouse
      • OR when it moves in response to host automation
      • OR when the knob-position is set from the value saved in a patch (this is important--see below)
    • However, it also happens when the knob turns in response to incoming MIDI CC messages.
      • As a result, if a knob is set to, say, CC#16, and a CC#16 message comes in, Unify's layers will see two copies of the CC#16 message. The first one is the original, incoming message; the second is a duplicate produced by the knob.
      • This is a mistake, which I hope to fix in a future update. Most of the time it's harmless, but it can be confusing.

You should also understand that the position of each macro knob is saved with each patch. For example, the patch KEY - All In this Together is saved with the first five knobs positioned as shown in the attachment. Knobs 2, 4, and 5 are each set past the 50% mark. If you assign CC#64 (MIDI sustain) to any of these three knobs, here is what happens when you load that patch:

  • The previous patch is cleared (same as if you clicked INIT)
  • The patch's layers are loaded, layer-to-layer connections are made, etc.
  • Each of the macro knobs is set to the position it was at, when the patch was saved
  • Because the knobs move, any knobs which are have an assigned CC also generate a CC message, which goes to all layers.
  • In this case, one of the knobs was set to MIDI CC#64, so a MIDI CC#64 message is sent, with value >64. Instrument plug-ins will interpret this as "Sustain pedal DOWN".
  • Hence, all instruments will come up in a sustaining state, until you press and release the physical sustain pedal.

I don't know if this is what happened to you, but I suspect so. As I explained in an earlier answer, this could have happened accidentally. However, you say that this is not the case, so it may take longer to diagnose this problem. Hopefully the above explanation will help a bit.

Could you please save a copy of the KEY - All In this Together patch (e.g. to your User Library folder), and post the .unify file here so I can analyze it?

 
 
Sorry - after posting the topic I thought it would be better in a separat post. Hence there was no reply I copyed the post and deleted the original one. 
 
 
Thank you for your detailed answer. Thank you for your patience. But I also spent today several hours to get closer, partially tryed to undestand what is goining on in Unify.

ReplyQuote
getdunne
(@getdunne)
Member Admin
Joined: 1 year ago
Posts: 1606
April 18, 2020 4:21 pm  

@seagreg

In one of your other posts, you said you were having the same problem even with the INIT patch. If so, the problem may be with your MIDI keyboard, which I think you said is a Yamaha Montage.

If you have multiple MIDI controllers, please disconnect all except one keyboard.

Please unplug your sustain pedal from your keyboard, then switch the keyboard off, then on again. Then run Unify and see if you still get sustaining notes.


ReplyQuote
Seagreg
(@seagreg)
Trusted Member
Joined: 10 months ago
Posts: 53
April 18, 2020 4:55 pm  

@getdunne

I was doing so. I disconnected all of the four controllers. Same result.

Additional information to Key -All In this Togheter:  only layer 2 to rings layer 5 also a Dexed Layer doesn´t

I`ll check it with another keyboard. Unfortunally i own 5 Yamaha Keyboards


ReplyQuote
Seagreg
(@seagreg)
Trusted Member
Joined: 10 months ago
Posts: 53
April 18, 2020 4:56 pm  

the file type .unify is not allowed to be posted ?


ReplyQuote
getdunne
(@getdunne)
Member Admin
Joined: 1 year ago
Posts: 1606
April 18, 2020 4:59 pm  

Zip the file

 


ReplyQuote
Seagreg
(@seagreg)
Trusted Member
Joined: 10 months ago
Posts: 53
April 18, 2020 5:25 pm  

okay


ReplyQuote
getdunne
(@getdunne)
Member Admin
Joined: 1 year ago
Posts: 1606
April 18, 2020 6:42 pm  

Thank you. This version of the patch loads with no issues for me, but you have saved it with INST2 muted and INST5 soloed. If I unmute/unsolo, the patch plays fine, and there are no issues with sustain.

As I observed before, the Guru Sampler instance on INST3 has Release time set to >14 seconds, so it does ring out for a while, but it's not stuck.

Did you try my suggestions about unplugging all but one MIDI controller, unplugging your sustain pedal, and power-cycling your keyboard?

 


ReplyQuote
Seagreg
(@seagreg)
Trusted Member
Joined: 10 months ago
Posts: 53
April 18, 2020 7:36 pm  
Posted by: @getdunne

Thank you. This version of the patch loads with no issues for me, but you have saved it with INST2 muted and INST5 soloed. If I unmute/unsolo, the patch plays fine, and there are no issues with sustain.

As I observed before, the Guru Sampler instance on INST3 has Release time set to >14 seconds, so it does ring out for a while, but it's not stuck.

Did you try my suggestions about unplugging all but one MIDI controller, unplugging your sustain pedal, and power-cycling your keyboard?

 

I did so. Same behaviour as ever. 


ReplyQuote
getdunne
(@getdunne)
Member Admin
Joined: 1 year ago
Posts: 1606
April 18, 2020 8:05 pm  

@seagreg

Sorry I didn't see your earlier answer. Thank you for trying the MIDI controller tests.

Is your problem only with KEY - All in this Together, or are other patches affected?


ReplyQuote
Seagreg
(@seagreg)
Trusted Member
Joined: 10 months ago
Posts: 53
April 29, 2020 1:08 pm  

I have to return again to this topic

a) If the cc message is also injected in the midi stream every layer behaves like it used to do as a stand alone VST or other unit.
But additionally the message is directly distributed to all destinations in the parameter paths. Will it not end up in confusion if you use many layers?

b) Changing CC settings of the Unify knobs to correspond to hardware controllers will inject different CC message in the stream which usually cause nothing (??). And only the directly wired destinations in the parameter list will react. 

is there a way to adapt the Unify knobs to external hardware and get the „original“ behaviour of a)

CC routing : f.e. CC 16 Hardware to CC2 Unify knob


ReplyQuote
getdunne
(@getdunne)
Member Admin
Joined: 1 year ago
Posts: 1606
April 29, 2020 2:25 pm  

@seagreg

a) MIDI CC messages resulting from parameter-knob movements are sent to layers only, not "directly distributed to all destinations".

b) Yes, changing CC settings of knobs will result in the new CC-numbers being used for injected messages. There is no way to change this at the moment. A future version of Unify (not the forthcoming v1.1 version) will include this ability.

 


ReplyQuote
Share: