Jump to content
Why become a member? ×

Zoom B3 or keep building effects board?


thegom
 Share

Recommended Posts

Hi

I have a small effects board, consisting of tuner, EBS Compressor and Sansamp DI. I'd like to add a chorus, some kind of distortion/fuzz, later probably an envelope filter and an octaver.

I have seen rave reviews of the Zoom B3 and consider getting it, however, not sure if I should better add some more individual effects.

Sound quality is the main concern but I am usually gigging in London what means carrying all gear to work and afterwards to the venue and then back in public transport. The Zoom looks incredibly useful from that point of view.

I tried one, the effects and amp simulations sound quite usable on headphones but I had mixed feelings when I played it on an amp.

Anyone here in a gigging original band playing small to medium sized venues who really uses this to get his original tone?

Any help and advise greatly appreciated.

Cheers

C

Link to comment
Share on other sites

Victor Wooten uses one for the looper and a few of the other effects I believe.

I use it for the metronome and drum loops too.

If you're carrying the gear on a bus in London, this HAS to be a great solution for you.

Edited by Grangur
  • Like 1
Link to comment
Share on other sites

I've been using a B3 in my cover & original bands for a few years now, for a bit of octave, boost/overdrive ( love the 'squeak' ) and preamp/eq.
I started putting a small board together to add a compressor (found the ones on the b3 too noisy) using an MS60B but keep going back to just using the B3. So easy to get set up when you get used to it.
I even made a footswitch for it to change patches quickly but have found I didn't even need that live.
I've found the blend control is key to using it live and am happy with the results, even more so for the price of it!

Edited by MarshallBTB
  • Like 1
Link to comment
Share on other sites

nothing wrong with giving it a try, figuring out exact which effects and sounds you want / need for your band and then if you find some of the B3 sounds work, use it for those, and if you want a better sound quality for areas where it falls short, then just go and buy whatever pedals you think will have the sound you're after

Link to comment
Share on other sites

[quote name='thegom' timestamp='1430116622' post='2757987']

I have a small effects board, consisting of tuner, EBS Compressor and Sansamp DI. I'd like to add a chorus, some kind of distortion/fuzz, later probably an envelope filter and an octaver.

I tried one, the effects and amp simulations sound quite usable on headphones but I had mixed feelings when I played it on an amp.

[/quote]

For what you want to use it for, the B3 will do a great job.

Having used one live for the last few months, you're right to say that not all the FX translate that well once volumes are boosted - but obviously this can be the case for any pedals, and no multi FX is going to excel everywhere.

I regularly travel on tube to rehearsals, and it beats the weight of multiple pedals.

Link to comment
Share on other sites

The B3 is great - the "problem" I found is that on virtually all of the effects, the blend-levels are just set too high for actual live work. So they just need to be turned down on the blend-levels, then they`re more than fine. Additionally on the amp-modelling I saw a thread on Talkbass that said it`s best to switch the speaker cab emulation to zero, and found this to be wise.

You can only use 3 different effects/amps at a time on the B3 though, whereas with the Zoom MS60B you can use 4. No DI, however it`s also much smaller than the B3.

Link to comment
Share on other sites

Thank you all for the answers, that's really helpful. I would use it mainly for my always on effects, ie a bit compression, tube grit and chorus, plus distortion here and there. The smaller MS60b was another thing I considered for that purpose. How easy or difficult is it to change patches on this little pedal in a live situation ?

Link to comment
Share on other sites

Changing patches can be a bit fiddly at first, but it's not too difficult once you get the hang of it! You hold one footswitch down to go to "patch mode" then just tap another to cycle through them.

I use mine as part of a pedalboard because I prefer the drive sounds I get from the Darkglass, and the noise gate is ok but I wanted something a bit better plus the extra space on the zoom :)

Link to comment
Share on other sites

[quote name='thegom' timestamp='1430141979' post='2758332']
Thank you all for the answers, that's really helpful. I would use it mainly for my always on effects, ie a bit compression, tube grit and chorus, plus distortion here and there. The smaller MS60b was another thing I considered for that purpose. How easy or difficult is it to change patches on this little pedal in a live situation ?
[/quote]

There are a couple of ways to skin this particular cat on an MS60B.

One way is to set up a couple of patches: one could have compression, tube grit and chorus. The second you could add distortion. Then you can tag the patches in the memory list, select the memory list function, and the footswitch will let you scroll between them.

The other way is to load the second patch and select the effect in the chain that you want to turn on and off (ie distortion). You can then use the footswitch to turn the distortion on and off.

The second method is fine if you have a few things that are always on and you only want to switch one on and off. Anything more than that, you're better off building a scrollable list.

Link to comment
Share on other sites

Sooo... I ordered a Boss CEB-3, a EHX Nano Big Muff AND a MS60B.... I want it all, and I want it now... ;) Got a Lehle Little Lehle II as well to have the option of a separate signal chain for the MS60B. Unfortunately that means more stuff to carry, but hey... Let's see, if I like the MS60B I may end up with just this pedal at gigs.

Link to comment
Share on other sites

[quote name='thegom' timestamp='1430141979' post='2758332']
Thank you all for the answers, that's really helpful. I would use it mainly for my always on effects, ie a bit compression, tube grit and chorus, plus distortion here and there. The smaller MS60b was another thing I considered for that purpose. How easy or difficult is it to change patches on this little pedal in a live situation ?
[/quote]

When I get the round tuits together, I'm going to assemble my Arduino-based patch switcher for MS60-B and B3 - just sends a MIDI program change message to the USB port.

Another way of doing this is with an Android phone or tablet with OTG, an OTG to USB adaptor lead and a USB lead to suit, and MIDI Commander on the phone/tablet. Then just put the phone/tablet on your music stand and you're sorted :D

Link to comment
Share on other sites

[quote name='tauzero' timestamp='1430233360' post='2759276']
When I get the round tuits together, I'm going to assemble my Arduino-based patch switcher for MS60-B and B3 - just sends a MIDI program change message to the USB port.

Another way of doing this is with an Android phone or tablet with OTG, an OTG to USB adaptor lead and a USB lead to suit, and MIDI Commander on the phone/tablet. Then just put the phone/tablet on your music stand and you're sorted :D
[/quote]

You lost me at "Arduino-based patch switcher..." ;-) I guess I will tap-dance on it the old way...

Link to comment
Share on other sites

I use an ms60b and a b3 in my originals band. In fact I got rid of my fuzz pedal in favour of just using the muff on the b3. It sounds perfectly good to my ears, everythingne can be balanced with some clean signal, plus if I fancy using a bit if flange rather than 'vibe' then I can.

Just makes sense for me to work like this!

Link to comment
Share on other sites

Got the MS60b today... Unbelievable! Recreated the sound of my EBS Comp -> Sansamp DI -> Boss Chorus always on chain, it needs a bit of tweaking and trying but if you have found the right settings, there is really not a lot difference.... In a full band context nobody will be able to notice it. Really impressed with this Zoom. Now need to squeeze it all properly onto the pedal board....

Link to comment
Share on other sites

[quote name='tauzero' timestamp='1430233360' post='2759276']
I'm going to assemble my Arduino-based patch switcher for MS60-B and B3 - just sends a MIDI program change message to the USB port.

[/quote]

I spent a frustrating afternoon yesterday with an Arduino Uno and the Sparkfun USB Host shield trying, without any success, to get it to send MIDI program change messages to my MS60-B. I've previously built an Arduino based MIDI foot switch for controlling a Line6 POD XT, and there's lots of helpful material on the web about using the MIDI libraries, but there's precious little about MIDI over USB.

I saw in another of your posts that you've managed this already - can you share what hardware you're using and which libraries, both for the USB host and drivers and for the MIDI over USB element?

Link to comment
Share on other sites

Right, this is my code. Note that displayNum displays the patch number on the connected computer - I want to rig up some sort of display for it:

[quote]
#include <Usb.h>
#include <usbhub.h>
#include <usbh_midi.h>

const int btnUp = 2;
const int btnDn = 3;

const int patchNumSw = 4;

int patchNum = 0;
int patchMax = 49;

int valNumSw;

static unsigned long lastBtnUp = 0;
static unsigned long lastBtnDn = 0;
unsigned long interruptTime;

USB Usb;
USBH_MIDI Midi(&Usb);

void setup()
{
Serial.begin(115200); // Temporary till I get 7-segment display

if (Usb.Init() == -1)
{
displayNum(88);
while(1); // Halt
}

pinMode(btnUp, INPUT_PULLUP);
pinMode(btnDn, INPUT_PULLUP);

pinMode(patchNumSw, INPUT_PULLUP);

attachInterrupt(0, interruptBtnUp, LOW);
attachInterrupt(1, interruptBtnDn, LOW);

sendMIDI( patchNum );

displayNum( patchNum );
}

void loop()
{
int valNumSw = digitalRead(patchNumSw);

if (valNumSw = HIGH) {
patchMax = 49;
}
else {
patchMax = 99;
}
}


// Interrupt handlers for patch up and patch down
// If interrupts come faster than 100ms, assume it's a bounce and ignore

void interruptBtnUp()
{
interruptTime = millis();
if (interruptTime - lastBtnUp > 100)
{
if (patchNum < patchMax)
{
patchNum++;
}
else
{
patchNum = 0;
}
sendMIDI( patchNum );
displayNum( patchNum );
}
lastBtnUp = interruptTime;
}

void interruptBtnDn()
{
interruptTime = millis();
if (interruptTime - lastBtnDn > 100)
{
if (patchNum > 0)
{
patchNum--;
}
else
{
patchNum = patchMax;
}
sendMIDI( patchNum );
displayNum( patchNum );
}
lastBtnDn = interruptTime;
}


// Send "Program Change" MIDI message

void sendMIDI(byte number)
{
Usb.Task();
if( Usb.getUsbTaskState() == USB_STATE_RUNNING )
{
byte Message[2]; // Construct the midi message (2 bytes)
Message[0]=0xC0; // 0xC0 is for Program Change (Change to MIDI channel 0)
Message[1]=number; // Number is the program/patch (Only 0 to 99 is valid for ZOOM G3)
Midi.SendData(Message); // Send the message
delay(10);
}
}


// Display the current patch number

void displayNum(int number)
{
Serial.print("Patch "); // Temporary expedient
Serial.println(number, DEC);

// What I really want is pins 5-9

}
[/quote]

I haven't got any further notes on where I got information from.

I also came up with a more sophisticated version (with more comments) which could scroll through either patches 1-50 for an MS60-B, or 1-100 for a B3. Well 0-49 and 0-99 probably.

[quote]
// Control Zoom G3/B3 or MS-60B via USB MIDI
// Based on https://github.com/vegos/ArduinoMIDI

// Two momentary footswitches and one toggle/slide/latching button switch are required
// Footswitches: patch up -> pin 2, patch down -> pin 3
// Switch on pin 4 - open circuit -> MS-60B, connected to ground -> G3/B3
// LED anode on pin 5 - indicates 100 patches
// Or forget about toggling between them and set patchMax to 49 for MS-60B
// or 99 for G3/B3, in which case loop should probably contain something like
// delay(1000), as the processing is interrupt driven

#include <Usb.h>
#include <usbhub.h>
#include <usbh_midi.h>

const int btnUp = 2;
const int btnDn = 3;
const int patchNumSw = 4;
const int patchNumInd = 5;

int patchNum = 0;
int patchMax = 49;

int valNumSw;

static unsigned long lastBtnUp = 0;
static unsigned long lastBtnDn = 0;
unsigned long interruptTime;

USB Usb;
USBH_MIDI Midi(&Usb);

void setup()
{
Serial.begin(115200); // Temporary till I get 7-segment display

if (Usb.Init() == -1)
{
displayNum(88);
while(1); // Halt
}

pinMode(btnUp, INPUT_PULLUP);
pinMode(btnDn, INPUT_PULLUP);

pinMode(patchNumSw, INPUT_PULLUP);

pinMode(patchNumInd, OUTPUT);

attachInterrupt(0, interruptBtnUp, LOW);
attachInterrupt(1, interruptBtnDn, LOW);

sendMIDI( patchNum );

displayNum( patchNum );
}


void loop()
{

// Check the state of the patch number switch

int valNumSw = digitalRead(patchNumSw);

if (valNumSw = HIGH) {
patchMax = 49;
digitalWrite(patchNumInd, LOW);
}
else {
patchMax = 99;
digitalWrite(patchNumInd, HIGH);
}

delay(1000); // Main loop is going to whiz round otherwise

}


// Interrupt handlers for patch up and patch down
// If interrupts come faster than 100ms, assume it's a bounce and ignore

void interruptBtnUp()
{
interruptTime = millis();
if (interruptTime - lastBtnUp > 100)
{
if (patchNum < patchMax)
{
patchNum++;
}
else
{
patchNum = 0;
}
sendMIDI( patchNum );
displayNum( patchNum );
}
lastBtnUp = interruptTime;
}

void interruptBtnDn()
{
interruptTime = millis();
if (interruptTime - lastBtnDn > 100)
{
if (patchNum > 0)
{
patchNum--;
}
else
{
patchNum = patchMax;
}
sendMIDI( patchNum );
displayNum( patchNum );
}
lastBtnDn = interruptTime;
}


// Send "Program Change" MIDI message

void sendMIDI(byte number)
{
Usb.Task();
if( Usb.getUsbTaskState() == USB_STATE_RUNNING )
{
byte Message[2]; // Construct the midi message (2 bytes)
Message[0]=0xC0; // 0xC0 is for Program Change (Change to MIDI channel 0)
Message[1]=number; // Number is the program/patch (Only 0 to 99 is valid for ZOOM G3)
Midi.SendData(Message); // Send the message
delay(10);
}
}


// Display the current patch number

void displayNum(int number)
{
Serial.print("Patch "); // Temporary expedient
Serial.println(number, DEC);

// What I really want is more pins. Although I could just about do this with a 4551
// and pins 5-9 and one other (0 or 1). Take cathode of digit 1 to pin 0 and cathode
// of digit 2 to pin 9. Also, at top, have
// const int cathode1 = 0;
// const int cathode2 = 9;
// Then
//
// digitalWrite(cathode1, HIGH);
// digitalWrite(cathode2, HIGH);
//
// digit1 = patchNum / 10;
// digit2 = patchNum % 10;
//
// for (int i = 0; i < 4; i++) {
// pin = i + 5;
// if (digit1 & 1 = 1)
// {
// digitalWrite(pin, HIGH)
// }
// else
// {
// digitalWrite(pin, LOW)
// }
// digit1 = digit1 >> 1;
// }
//
// digitalWrite(cathode1, LOW);
// delay(100);
// digitalWrite(cathode1, HIGH);
//
// for (int i = 0; i < 4; i++) {
// pin = i + 5;
// if (digit2 & 1 = 1)
// {
// digitalWrite(pin, HIGH)
// }
// else
// {
// digitalWrite(pin, LOW)
// }
// digit2 = digit2 >> 1;
// }
//
// digitalWrite(cathode2, LOW);
// delay(100);
// digitalWrite(cathode2, HIGH);

}
[/quote]

No laughing at my code please.

Link to comment
Share on other sites

[quote name='tauzero' timestamp='1430863719' post='2765475']
No laughing at my code please.
[/quote]

I've not laughed at anyone's code since I saw someone implement a boolean using strings with "YES" and "NO" in, so I think you're quite safe!

Thanks for posting that. It looks like you've used the same github sources as I have, and the important bits of the code look like mine, so I've obviously got some other problem. I need to go back and put some debugging output in to try and get a better idea of what's going on.

Out of interest, which USB Host shield did you use - was it the Sparkfun one, the genuine Arduino one, or some other?

Link to comment
Share on other sites

[quote name='Gottastopbuyinggear' timestamp='1430897678' post='2765589']
Out of interest, which USB Host shield did you use - was it the Sparkfun one, the genuine Arduino one, or some other?
[/quote]

An Ebay special from deepest China. Just search ebay for "arduino usb host" and you'll find them for about £6 inc. I'm also going to experiment with a Chinese Arduino Due, which has the USB OTG host built in.

  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...