Date   

Re: Controlling Helix Native in Cakewalk with FCB1010/UnO (1.0.4)

EJ SHELDON
 

I have good news and bad news.
The bad news is that, using a PC and Cakewalk, you can't select presets in Native.
The only PC DAW in which Native supports preset changes is Pro Tools, and you can't load 3rd party AAXs in Pro Tools First, so you have to buy the full version.

The good news is that you can change presets and snapshots, and use the expression pedals.
As your research indicates, you create an audio track for Native, then create a MIDI track that takes it's input from the FCB and sends that to the Native track. Both tracks need to be RECORD ENABLED for it to work.

You'll need to refer to the MIDI section of the Helix device manual (the Native Pilot's Guide doesn't cover MIDI) for the specific MIDI commands, but the basics are you can use any CC#s for the toggling (stomp on/off) commands, and CC#69 with a Value of 0-7 (snapshots 1-8) for snapshots.
The expression pedals, like the stomps, can use whatever CC#s you choose.

Attached are screenshots of example configurations for Cakewalk and a basic ControlCenter configuration.
In ControlCenter, the bottom row is set to Stomps, the top row selects snapshots - Bank 00 = snapshots 1-5, Bank 01 = snapshots 6-8.

Lastly, ACT is unnecessary and a PITA to work with. It's only real purpose is to configure MIDI control for the Cakewalk UI functions - transport, etc.


Re: Controlling Helix Native in Cakewalk with FCB1010/UnO (1.0.4)

pwgblack@...
 

Thanks for your reply and offer of assistance EJ. I am very grateful.

I certainly had no intention to cast aspersions upon the control center and I apologise if it seemed I did.

The fact is that I am an absolute beginner with midi beyond plug and play and I have two areas where I require assistance and hope to learn much more. The first is the practical one I mentioned in my question i.e. I have an FCB1010 with the UnO 1.0.4 chip installed and I have the Control Center, which I have been able to connect (via a Roland UM1-mk2 interface with a PC) and have been able to get the unit into stompbox mode as you suggested, so there is a working connection between the FCB and the computer. I have Cakewalk and I have Helix Native as an FX plugin within it. This first practical dilemma is I don’t know how to achieve this chain i.e. FCB > Cakewalk > Helix Native so that I can select patches with the top row of switches, and stomps (on/off) with the bottom row and control variable parameters with the expression pedals. Some videos I have seen suggest that I need to set up a midi track in Cakewalk to receive the midi information from the FCB, then route this through to the audio track that has the Helix Native in it, but I don’t know how to achieve this. (I have been able to set up an audio track with Helix Native and have opened the ACT midi controller and it seems to receive a CC on/off message from the FCB (I entered 004 into the CC1 section of the preset grid). I say this, not to suggest that there was any method, or awareness in this poking around, merely that there seems to be a connection up to this point within the chain.

My second lack of knowledge is what to enter into the preset grid in the control center to send instructions to the Helix Native plugin. Whilst I would be very grateful if you could provide a set up file to achieve what I’m asking about, I also want to be able to better understand the ‘how and why’ of this myself. Is there a training video/book/site you could suggest that might teach such information?

Once again. I am very grateful for your response.

 

From: uno@fcb1010.groups.io <uno@fcb1010.groups.io> On Behalf Of EJ SHELDON
Sent: Monday, 5 April 2021 1:03 AM
To: uno@fcb1010.groups.io
Subject: Re: [fcb1010_uno] Controlling Helix Native in Cakewalk with FCB1010/UnO (1.0.4)

 

The user guide for ControlCenter is one of the best MIDI device manuals I've ever seen, with screenshots and everything you need.
To get to the screen where you select the Stomp Mode and which row of footswitches does what, you need to click on the FCB1010 logo.
To make the actual connection to the device, you click on the connector icon to the left of the logo.
If it doesn't connect, check SETUP>SELECT MIDI PORTS. The FCB appears as the name of the Interface.
What are you trying to control with the FCB? HW? SW? I can provide setup files (sysex/lgp) for a number of things.


Re: Controlling Helix Native in Cakewalk with FCB1010/UnO (1.0.4)

EJ SHELDON
 

The user guide for ControlCenter is one of the best MIDI device manuals I've ever seen, with screenshots and everything you need.
To get to the screen where you select the Stomp Mode and which row of footswitches does what, you need to click on the FCB1010 logo.
To make the actual connection to the device, you click on the connector icon to the left of the logo.
If it doesn't connect, check SETUP>SELECT MIDI PORTS. The FCB appears as the name of the Interface.
What are you trying to control with the FCB? HW? SW? I can provide setup files (sysex/lgp) for a number of things.


Controlling Helix Native in Cakewalk with FCB1010/UnO (1.0.4)

pwgblack@...
 

Hello Folks,

Could anyone out there direct me to either a video or written tutorial on how to do this please.

I want to be able to use the FCB1010/UnO (1.0.4) (in stompbox mode) to be able to select patches with the banks and upper five switches, including use of both expression pedals, and stomps with the lower five.

I have the FCB1010 Control Centre, but the instructions are not really clear for a beginner on how to do this. I'm connected to the comp (PC) with a Roland UM-1 mk2.

I guessing I'm not the only person who wants to be able to do this, but if I am, I'm happy to chip in (perhaps with others) a bit for one of you with more expertise to prepare something like this If there's nothing out there.

Thanks in advance for any assistance.


#UnO2 Uno2 + BIAS + KatanaMK1 #UnO2

jeffpagnutti@...
 

Hi folks,

Just got my FCB and UnO2 chip today.  Got it up and running and tested with BIAS FX2 -- all working great!

What I really wanted though and why I got the UnO2 was to send sysex to my Katana and was surprised that my first try worked!

I'd tested some stuff before ordering to make sure I could talk to the Katana and all worked fine (thanks to Gumtown, snhirsch/katana-midi-bridge, KatKontroller and many others messing with the Katana).  The UnO2 code was written to use the top row for patch changes and the bottom row for stomp boxes.  I used channel 4 and 5 for the Katana stuff and 1 to 3 for BIAS (just CC and PC).  I haven't developed it much more than that, but will likely try to get the expression pedals controlling volume and wah/pitch/fx.

Hopefully this is helpful to someone.  File is in the Files section under Uno2 + BIAS + KatanaMK1 (I think it could pretty easily get adapted to the MK2).

Let me know if you have any questions / comments.

Thanks and regards,
-Jeff


File /UnO2 BIAS Katana.txt uploaded #file-notice

uno@fcb1010.groups.io Notification <noreply@...>
 

The following files have been uploaded to the Files area of the uno@fcb1010.groups.io group.

By: jeffpagnutti@...

Description:
Control your Boss Katana and BIAS FX2!


Re: Set switch to send incremental CC values?

Mike Watkinson
 
Edited

Ok so I have had a go at implementing the suggestions as follows:

Switch 9:
TRIGGER_CLICK Major Semitone up =
{
   if($majkey < 121)
      $majkey += 11
   SendMidi MainStage CtrlChange 90 $majkey  
}

Switch 10:

TRIGGER_CLICK Major Semitone down =
{
   if($majkey > 7)
      $majkey -= 11
   SendMidi MainStage CtrlChange 91 $majkey  
}

Switch 1 is set to do this:

EFFECT_ON major harmoniser = 
{
   SendMidi MainStage CtrlChange 80 127
   SendMidi MainStage CtrlChange 90 1
   $majkey = 1
   }

So the variable starts with value 1 when the effect is enabled, then the following values are sent by each press of switch 9:

12
23
34
45
56
67
78
89
100
111
122

which are mapped to 12 of the 18 key centres available in Octavox (which offers Db as well as C# etc which caught me out for a while!)

So far so good - thanks for the template!

BUT, the above only allows starting on C then working one semitone at a time through to B, then back again. What  I would like to also be able to do is start on C (which is what happens when the plug in is enabled) and go down say one step to B using the down switch (switch 10). At the moment I have to go up 11 clicks of the up swicth (switch 9) to get there. I have tried a few stabs at this using Else type statements but can't quite get the 'parsing' right.

What I think I am trying to achieve is something like 'if ($majkey < 7) then SendMidi MainStage CtrlChange 91 122' in addition to the lines above for 'TRIGGER_CLICK Major Semitone down' but not quite sure how to write it out correctly.

Any help much appreciated!


Re: UNO 1.03 as 10-switch stompbox

hasse_fx@...
 

Thanks, yes I have disabled the PCs. Yes the only difference I can spot is that the "non stompbox" LEDs behave like they indicate preset changes. I assume that's hard coded.


Re: UNO 1.03 as 10-switch stompbox

EJ SHELDON
 

That's the normal FCB Toggling function. You just need to turn off the PCs for those presets to prevent sending them to the QC (unless you want that).


UNO 1.03 as 10-switch stompbox

hasse_fx@...
 
Edited

Hello group,

I just brushed off my FCB-1010 that has been stowed away for a couple of years. When I got it second hand I bought  and installed a UNO-chip (v.1.0.3  it turns out). However my setup changed before i made any use for it, but I kept it. Now as I'm awaiting a Quad Cortex and studied its MIDI implementation I came to to think of the FCB and to use it as a MIDI remote, providing 2 expression pedals and a bunch of switches to double the QC switches.

OK, so I go for the remote programming sofware - unfortunately it does not communicate with my unit. Instead I go to the documentation and finds out/remember that you can have 5 stomp box switches (the QC has 10) and the other... well for other functions. Maybe UNO2 then, but my availabe MIDI-interfaces times out (though the FCB is correctly identified as UNO 1.0.3. So back to what I got - 5 is better than none.

I get a grip of the setup and and programming the switch and pedal setup, checking the result of my efforts with MIDI monitor software. Then, by mistake I do the toggle controller value setup for a switch on the wrong row - and it turns out it also sends toggling CC-values! So I continue to set upp all 10 switches with stomp box functionality - the only difference being that the LEDs doesn't indicate the stomp function on the "wrong" row.

I haven't found (so far) anything documenting this "feature" of UNO 1.0.3 - is it widely known and used?

Anyway, for my simple intended use, the "feature" eliminates the need for a UNO2 (and extra compatible MIDI-interface).


Re: Dynamic Channel Names #UnO2

Jack Fenton
 

I agree. I think it is still amazing what you are able to accomplish with a 20 year old piece of hardware.

Also, I would think it would not be that expensive to make it USB class compliant.  

Right now my favorite competetor is the Nektar Pacer that has quite interesting capabilities:

  • 24 Banks of 10 switches - Plus 4 externnal switches and 2 external expression pedals. 
  • Can dynamically assign switch activities with another switch
  • Can use any switch to go directly to another bank
  • Has LED feedback (via USB only)

I use the Nektar to control different apps on my PC.  Voicemeeter Potato and OBS Studio for audio/video switching


I use Uno2 for my MIDI music setup. I also still have Uno 1.0.4 on a different FCB1010.  I have a Eureka Prom that I like for IO mode only but it sits on a shelf right now. It would be nice to be able to install multiple proms and switch between them. I have no stomach for adding other hardware MODs in case I want to sell on of my FCB1010s.


It would have been nice if Nektartec had incorporated 2 expression pedals like Behringer and Roland FC300

The FC300 is nice but programming is only available with pushing footswitches.  No Editor.
It also has a nice 2 line display if you don't mind looking at your feet while switching.




Re: Dynamic Channel Names #UnO2

ossandust
 

The one thing which still amazes/frustrates me most with the FCB1010 : Behringer could very easily replace the current 2KB setup memory with a 32KB chip without changing anything in the design or production process - it's fully pin compatible, it would raise the product cost with an amazing 15 cents (memory would cost around 0.25USD instead of 0.1USD), but what a difference it would make in what you could achieve with that same hardware. It's a shame... 


Re: Dynamic Channel Names #UnO2

Jack Fenton
 

Don't get me wrong. I think Uno2 is amazing!  Just thinking of ways to improve it and make it even better knowing the limitations of the FCB1010 memory.

I assume the less code you have to write, the less memory will be consumed on the device. Maybe not always a good assumption as I'm not sure how the code uses memory. I'm still experimenting since I've only had Uno2 for a few weeks.



Re: Dynamic Channel Names #UnO2

ossandust
 

ok, that makes sense.


Re: Dynamic Channel Names #UnO2

Jack Fenton
 

    It is  requested primarily for code reuse. I  want to be able to use the same code preset to send to a different MIDI channel depending on the device I have selected.

Instead of

switch($device)
{
case "Hammond":
 SendMidi HAMMOND ProgChange 1
 break
case "Nord"
 SendMIDI NORD ProgChange 1
 break
default:
 break
}

I would like to do this:

SendMidi $Device ProgChange 1

You don't think this adds value?  No switch statements and just 1 line of code.


Re: Consumption of Memorory #UnO2

Jack Fenton
 

Thanks, I'll play around with it to see what I can do to reduce memory. I only have 3 banks but most of my presets/triggers look to see what device is selected before applying the correct MIDI output. So a lot of case statements and in some instances, nested case statements within my triggers and presets. I had to eliminate the banks MSB LSB CCs in order to make things fit.

Basically, I use a pedal to select which device I want to talk to, then use the same presets/triggers for both devices.  In some cases I assign pedal functions for each device with some of the pedals which is the nested case statements.



Re: Dynamic Channel Names #UnO2

ossandust
 

No, the CHANNEL statements are there just for 2 reasons : 
- they make your code much more readable, as you clearly see to which device you are sending each command
- they make it easy to change the MIDI channel to which a certain device listens, for instance when you add more gear to your setup : just change the MIDI channel value in the "CHANNEL" definition line, instead of modifying all commands throughout the setup
I don't see much practical use in a dynamic MIDI channel definition - a MIDI device normally listens to 1 (or multiple) configured channels, this normally doesn't change once configured.


Re: Consumption of Memorory #UnO2

ossandust
 

A compiled setup doesn't contain any strings, since the FCB1010 doesn't use the string values. During compilation all possible values of a string variable are listed and converted to a 10-bit index  (a string variable can contain up to 1024 possible values). So the length of the string is not relevant for the setup size. 
It's not easy to calculate which approach will take most memory, you'll just need to try it out. A trigger is a good way to group commands which are often reused, but if the trigger only contains 2 MIDI commands and you always have to combine the "SendTrigger" command with some extra variable initialization code, it will take more memory than simply specifying the SendMIDI commands in the presets.


Dynamic Channel Names #UnO2

Jack Fenton
 

I would like to be able to do this :

 
VAR $ham = "Hammond"
VAR $nord = "Nord"
 
CHANNEL $nord = 12 // would like $nord to expand to NORD
CHANNEL $ham = 1 // would like $ham to expand to Hammond


or this:

VAR $ham = 1
VAR $nord = 12
 
CHANNEL NORD = $nord
CHANNEL HAMMOND = $ham

It appears that the CHANNEL command has no support for variable names.





Re: While Statement issue with Uno2 #UnO2

ossandust
 
Edited

ok, I tried it out myself now and I can confirm these are 2 bugs : 
- arithmetic functions on variables should always keep the value between 0 and 127, also in case of "overflow"
- when using a "while" loop within a switch statement, the "case" condition is not correctly evaluated on statements following the while loop. 

Following version works correctly, because it doesn't have statements after the "while" :
(for your info : the "default:" statement within a switch statement is optional, so if it doesn't contain any commands you can omit it) 

TRIGGER_CLICK AllNotesOffPanic =
{
   switch($Device)
   {
      case "Hammond":
         SendMidi Hammond CtrlChange $HammondAllSoundsOff 127
         break
      case "Nord":
         SendMidi Nord NoteOff 127 0
         $currentnote=127
         while ($currentnote > 0)
         {
            $currentnote--
            SendMidi Nord NoteOff $currentnote 0
         }
         // don't add any more commands here...
         break
   }
}

421 - 440 of 8942