PitchFactor – Key Toggling Over MIDI

Home Forums Products Stompboxes PitchFactor – Key Toggling Over MIDI

  • This topic is empty.
Viewing 5 reply threads
  • Author
    Posts
    • #108973
      brock
      Participant

      Here's one of those little discoveries that may or may not be a feature; depending on your perspective.

      The Basics:

       

      Behringer FCB-1010 (no UnO) —> PitchFactor [SW VER] 3.5.0[4]
      MIDI OUT / XMT Channel 2 to MIDI IN / RCV Channel 2
      [CLK IN] = ON [OUTPUT] = THRU (receive parameters on – transmit parameters off)
      RCV CTL: KB1 = CC32, KB1 = CC33 … KB8 = CC40 KB9 = CC41 (defaults)
      Any Diatonic or QuadraVox mode preset.  Note the "saved" Key / Scale value (in preset).

      The Key Toggle Recipe:

       

       

      Send a program change message [PC 2 here], immediately followed by a CC message [CC 38 here] to effect a a key change.  A CC value of 0 to 5 will change KB6 Depth/Key to C.  The "saved" value stored in the preset example is E.

      First FCB-1010 switch press:

      C1 01
      B1 26 00

      Show More...

      Preset switches to BANK 1:2Depth/Key updates to C.

      Second FCB-1010 switch press (identical messages):

      C1 01
      B1 26 00

      Preset switches to BANK 1:2Depth/Key reverts to "saved key" E.

      Subsequent FCB-1010 switch presses (identical messages):

      Depth/Key toggles between MIDI CC command and the preset saved key on alternate switch presses.  In this example, toggling between the keys of C and E.

      I tried sending the Program Change message after the MIDI CC to contrast the behavior.  In the FCB-1010, Program Changes 1 through 4 (per switch) are sent before the MIDI CC messages, while Program Change 5 is transmitted after the CC messages.

       

       

      B1 26 00
      C1 01

      As expected, the MIDI key change is overridden by the Program Change following it, in serial fashion.  This kind of preset / reset action seems to be coming into play in my first examples above, but only 50% of the time.

      So, perhaps the PitchFactor needs a little time to prepare the pitch algorithm for a given key before you start changing it up.  I put a short pause (a few bytes-worth of innocuous Program Changes) between the active Program Change message, and the MIDI CC key change message.

       

       

      C1 01
      C0 13
      C0 1D
      C0 1D
      B1 26 00

      Alternate switch presses (with the same PC and CC message) still toggle between the MIDI CC programmed key, and the internally saved key in the preset.  I haven't tried this across all kinds of PitchFactor parameters and algorithms, but I don't see a similar pattern developing for Speed / Scale using similar MIDI messages.  I've observed consistent behavior for key center toggling in the two Diatonic modes, though.

       

       

      Conclusions?
      If you want to toggle between keys, send a PC and CC message together.
      If you don't want to toggle keys, keep your MIDI messages on separate switches.

      Show Less...
    • #123729
      stringrazor
      Member

      It's been a while since I configured my FCB1010 and I haven't yet tried controlling the PF via MIDI, but I use a simple momentary switch to change keys on the PF. I used it live for a couple of years and it worked well, I connected the switch to the expression pedal control jack. I have forgotten the exact config and don't have the PF in front of me but using a momentary switch in the expression pedal jack allows the fastest switching of keys. Open/pdeal up = saved key, closed/pedal down = modified key. I used this method to get the right harmony notes while playing certain riffs. Unfortunately, I believe only one such key modification can be programmed for the pedal as it's a global setting not per patch. 

      Using the FCB, I'd planned to use the UNO chip toggle feature which I think would make the process of changing keys much simpler.  The UNO chip is so useful and cheap, I can't imagine using an FCB without it.

    • #123733
      brock
      Participant

      Is this the same "stringrazor" from the Cakewalk forums?

      Quote:
      Unfortunately, I believe only one such key modification can be programmed for the pedal as it's a global setting not per patch.

      The "normal" FCB-1010 method that I use to switch keys & scale at the same time is to send the two static MIDI CC values without a program change.  One footswitch may produce A Dorian; the next kicks out E (natural) minor, and so on.  These are all in addition to the "saved" key / scale that pops up with an isolated program change message.  This works in either the Diatonic or Quadravox modes in exactly the same way.

      Using the default PitchFactor CC Numbers as an example, CC #38 is mapped to Depth/Key:

      C = CC Value 0-5

      C# = CC Value 6-18

      D = CC Value 19-28

      D# = CC Value 29-40

      E = CC Value 41-51

      Show More...

      F = CC Value 52-64

      F# = CC Value 65-74

      G = CC Value 75-86

      G# = CC Value 87-97

      A = CC Value 98-108

      A# = CC Value 109-120

      B = CC Value 121-127

      You can program in any CC Value within that narrow range per-key.  There are some advantages in some algorithms/parameters to using the highest CC value found in a given range.  In most cases, it doesn't matter.  Now, for the Speed / Scale parameter (defaulting to CC #39):

      MAJ = CC Value 0-6

      min = CC Value 7-15

      DOR = CC Value 16-26

      PHRG = CC Value 27-36

      LYD = CC Value 37-47

      MLYD = CC Value 48-57

      LOC = CC Value 58-68

      Hmin = CC Value 69-78

      Mmin = CC Value 79-89

      Wton = CC Value 90-99

      ENIG = CC Value 100-114

      NPLT = CC Value 115-120

      HUNG = CC Value 121-127

      So, for an E minor, send CC#38 – CC Value 51, and CC#39 – CC Value 15, from the same footswitch.  For A Dorian, it would be CC#38 – CC Value 108, and CC#39 – CC Value 26 on another footswitch.  And so on (ten keys + scales per bank).  Any combination of key and scale available on the PitchFactor can be called up remotely with one press (and two CC messages received).

      Quote:
      Using the FCB, I'd planned to use the UNO chip toggle feature which I think would make the process of changing keys much simpler.  The UNO chip is so useful and cheap, I can't imagine using an FCB without it.

      I really should cave in on that UnO chip; it's a no-brainer.  I have the stock FCB-1010 (and tons of custom presets backed up) doing most anything that I need, though.  One of the "toggle" situations that I use involves the standard Controller Toggle feature.  I can switch between two keys, or two scales, but not both at the same time (using a single footswitch).

      The other thing that I do is to process the MIDI Note that a switch can send, and convert that (through an external event processor) to a CC value.  That way, I can use the footswitches to act one way when pressed, and another way when released.  But that was my workaround in place before considering the UnO upgrade.

      Show Less...
    • #134773
      stringrazor
      Member

      brock:

      Is this the same "stringrazor" from the Cakewalk forums?

      Yep.

      Quote:

      Quote:
      Unfortunately, I believe only one such key modification can be programmed for the pedal as it's a global setting not per patch.

      Show More...

      The "normal" FCB-1010 method that I use to switch keys & scale at the same time is to send the two static MIDI CC values without a program change.  One footswitch may produce A Dorian; the next kicks out E (natural) minor, and so on.  These are all in addition to the "saved" key / scale that pops up with an isolated program change message.  This works in either the Diatonic or Quadravox modes in exactly the same way.

      Using the default PitchFactor CC Numbers as an example, CC #38 is mapped to Depth/Key:

      C = CC Value 0-5

      C# = CC Value 6-18

      D = CC Value 19-28

      D# = CC Value 29-40

      E = CC Value 41-51

      F = CC Value 52-64

      F# = CC Value 65-74

      G = CC Value 75-86

      G# = CC Value 87-97

      A = CC Value 98-108

      A# = CC Value 109-120

      B = CC Value 121-127

      You can program in any CC Value within that narrow range per-key.  There are some advantages in some algorithms/parameters to using the highest CC value found in a given range.  In most cases, it doesn't matter.  Now, for the Speed / Scale parameter (defaulting to CC #39):

      MAJ = CC Value 0-6

      min = CC Value 7-15

      DOR = CC Value 16-26

      PHRG = CC Value 27-36

      LYD = CC Value 37-47

      MLYD = CC Value 48-57

      LOC = CC Value 58-68

      Hmin = CC Value 69-78

      Mmin = CC Value 79-89

      Wton = CC Value 90-99

      ENIG = CC Value 100-114

      NPLT = CC Value 115-120

      HUNG = CC Value 121-127

      So, for an E minor, send CC#38 – CC Value 51, and CC#39 – CC Value 15, from the same footswitch.  For A Dorian, it would be CC#38 – CC Value 108, and CC#39 – CC Value 26 on another footswitch.  And so on (ten keys + scales per bank).  Any combination of key and scale available on the PitchFactor can be called up remotely with one press (and two CC messages received).

      Quote:
      Using the FCB, I'd planned to use the UNO chip toggle feature which I think would make the process of changing keys much simpler.  The UNO chip is so useful and cheap, I can't imagine using an FCB without it.

      I really should cave in on that UnO chip; it's a no-brainer.  I have the stock FCB-1010 (and tons of custom presets backed up) doing most anything that I need, though.  One of the "toggle" situations that I use involves the standard Controller Toggle feature.  I can switch between two keys, or two scales, but not both at the same time (using a single footswitch).

      The other thing that I do is to process the MIDI Note that a switch can send, and convert that (through an external event processor) to a CC value.  That way, I can use the footswitches to act one way when pressed, and another way when released.  But that was my workaround in place before considering the UnO upgrade.

      Great stuff! I will keep your posts as a reference.

      I bought the PitchFactor for 1 song when I was performing regularly in an Eagles tribute band and it more than paid for itself. I had to change between 2 different scales to get the notes I wanted for the guitar lines during the verses of Hotel Cal (NOT the solos which we covered with 2 guitar players). Playing it as double stops didn't allow the right feel. When I used a Johnson (Digitech) Millennium Amp, I had its "J12" pedal (which had by far, the best, most flexible control architecture I have ever found)  configured to toggle keys on the built-in harmonizer and it worked pretty well.  Any of the buttons or  of the 2 CC pedals on the J12 could be set to perform multiple simultaneous internal functions PLUS send MIDI to other devices.  I still miss that control system. When I retired that amp from live use, everything else I tried glitched badly live so I decided to spring for the PF. Even though I just used it for ONE song, it was THE signature tune of that trib band. 

      The PF unit has a rather cryptic interface so I never really got deep into it once I was able to program the pedal switch. I'd always wondered what I could do with MIDI but never did the dive. 

      I REALLY WISH SOMEONE WOULD WRITE A DECENT PF PATCH EDITOR!!!!

      The FCB is an amazing device for the money. The UNO chip really makes it shine as does the Ripwerks editor (toss that horrible manual tho'!). I also did the phantom power mod as my original use was to control MIDI fx modules kept on the backline. I always hated AC power cords at the front of the stage but eventually I got used to them. 

      Show Less...
    • #156164
      Stax_911
      Participant

      Hi Brock, Thank you for these really useful advices. It’s exactly what I’d like to do : create a Diatonic preset in my H9 and send #CC to change the scale/key according to the song.

      I’ve tried to program that with my Musicom Lab EFX-LE, that allow to send #PC and #CC in a same preset. But the problem is that the EFX send informations simultaneously. If I send only #CC the H9 get it and change the scale/key. But if i send #PC and #CC in same time, the H9 change the preset but not scale/key, even if the  algo is already loaded.

      Would you have a solution for  that problem ? How to change algo and key/scale with a simple preset in my EFX-LE ? 

      How many milliseconds the H9 needs between #PC and #CC to take the whole informations ?

      Thank you for your help.

      Stephane

    • #156172
      brock
      Participant

      You don’t want to send the PC message repeatedly.  You are effectively reloading the stored preset, and that wipes out your CC message changes.

      Eventide would know best about exactly how long an average preset takes to load.  But that is going to be algorithm-dependent [huge algos take longer].  If I have to insert a MIDI delay, I usually start at ~100 mS, and adjust it up or down from there.

      As for a solution … you could simply program your key / scale changes into successive presets, and PC your way through them.  Or, you might use one preset as a base, and send key & scale changes to that one preset [two CC messages].  But I can’t think of a situation where I would send PC & CC messages sequentially with a single switch action.

Viewing 5 reply threads
  • You must be logged in to reply to this topic.