FCB1010 vs PU-2: Why do it?

While waiting for parts (I do have to get a better inventory “system”) to complete the Betas for the PU-2, I went through a short period of discouragement. It’s hard to stay fully motivated when the project is bogged down by unforeseeable delays (or is it bad management?). But yesterday, I read an entry on the FCB1010 forum that reminded me why I was doing all this. A fellow user is trying to program the FCB1010 to communicate with a Yamaha device. The series of instruction that he had to document, after much trial and error I’m sure, goes like this:

So… to set the 1010’s bank 00, preset 3 button to access my Motif’s PRE 3
bank, patch 92, I put the 1010 in operation mode, called up bank 00 and hit
button 3 to indicate that I wanted to program that preset, then held the down
switch for 2-3 seconds.Hit the UP button to display which functions are active for the preset.For any button LED that light up besides button 5,6 & 7 (assuming that the only
thing this preset is going to do), press and hold that button down until the LED
goes out.

If button 6’s LED isn’t lit, press and hold button 6 until the LED comes on
steady.

Press button 6 again to start defining that button’s function, and it starts
flashing.

Press UP to view the current CC# the button will send.

Enter 00 (Remember, the MSB paramater is sent with CC0) as the CC # you want the
button to send and press UP to enter.

Button 6 is still flashing, and the numeric display changes to show the current
CC value. Enter 63 (the MSB value) and press UP to enter.

We’ve just defined the first CC change.

If the button 7 LED isn’t on, hold it down until the LED comes on.

Press button 7 briefly. It starts flashing, now we need to program the LSB
value.

Press UP. The numeric display flashes the current CC # for the button. Enter 32
(Yamaha accepts LSB values as CC32) and press UP to enter.

The numeric display flashes… enter the LSB value for the bank change (in my
case I wanted bank PRE 3, which the data list defined as LSB = 2).

At this stage, the 1010 preset is set up to select the Motif’s PRE 3 bank, but I
still need to tell it which actual patch I want. An old post from Michael
LaMeyer stated that only PROG CHG 5 is sent AFTER the CC’s, so…

If button 5’s (PROG CHG 5) LED isn’t lit, press and hold until it is. Press
again to begin programming PROG CHG 5, and the button 5 LED starts flashing)

Press UP and the numeric LED shows the current PC value. In my case, I want
patch 92 (of my PRE 3 bank), so I type 92 and UP to enter.

The button should now be fully programmed to select the PRE 3 bank, patch 92.

Press and hold DOWN to save and exit, and button 3 of the 1010’s 00 bank should
now select MSB 63, LSB2, Patch #92. If the device (Motif, in this case) already
happens to have that bank and patch selected, manually change the device’s bank
and patch to another patch, and hit button 3 to test.

On the PU-2 the input file for the same thing would include 3 lines:

Bank,Switch,Type,Cmd Type,Channel,Command,Value,Extra,Comment
0,3,0,CC,1,0,63,,MSB
0,3,0,CC,1,32,2,,LSB
0,3,0,PC,1,92,,,PATCH

Then run the Java utility and send the Sysex to the FCB1010.

Repeatable, savable, simple.

That switch could be programmed to send anything else, including other CC commands to have other equipment react to a press of switch 3.

This entry was posted in Arduino, FCB1010, Pedal board, PU-2. Bookmark the permalink.

5 Responses to FCB1010 vs PU-2: Why do it?

  1. Peter Sharp says:

    Nice work, Robert. Here’s a suggestion prompted by the above discussion: Since the MSB/LSB is pretty standard for bank selection, why not use your “extra” value to enter the 2 bytes in 1 line? Let’s call it a “BC” Cmd Type (Bank Control). eg.

    Bank,Switch,Type,Cmd Type,Channel,Command,Value,Extra,Comment
    0,3,0,BC,1,32,63,2,MSB

    I figured the Command value should correspond to the LSB since, I believe, MSB will always be ‘0,value’ & I don’t really know if any manufacturer uses anything different for the LSB. Just a thought for maximising the PU-2 data structure & storage…

    Peter

    • rt says:

      Good idea Peter. One line to replace three. I just modified the Command Processor. Done.

  2. Peter Sharp says:

    Well, technically it’s one line to replace two. The following PC would still be required to select the patch.

    • Peter Sharp says:

      Or, if I’m interpreting your reply correctly, are you saying that you’re including the PC value in the BC command (instead of my idea of the 32 for the LSB indicator)? I think that makes a lot more sense & I agree – 3 into 1 is much better than 2 into 1 🙂

      • rt says:

        I was thinking ahead. Yes, the PC command is included in the translation. It’s like a macro command. I think that it could also be defined globally, by the user, and re-used at will. I’ll think about that and come back with a data structure arrangement.

Leave a Reply

Your email address will not be published. Required fields are marked *