BCbox's VCA "Click be Gone" Mod

Discuss mods, hacks, tweaks, etc.

Moderators: altitude, adafruit_support_bill, adafruit, phono, hamburgers

Please be positive and constructive with your questions and comments.
User avatar
antto
 
Posts: 1636
Joined: Thu Apr 15, 2010 3:21 pm

Re: BCbox's VCA "Click be Gone" Mod

Post by antto »

i'm not sure.. interesting question
this has to do with the firmware note_on() and note_off() functions
normally, there is enough time for the note to go off before the next one comes in (6 clock ticks ON, 6 clock ticks OFF)
there is however a case.. when writing notes in edit mode (this is both in the stock firmware, SokkOS and n0nx0x, at least i think so)
when holding NEXT - a note plays, but before you release it - you can press another note (to change it)
and this is what happens in the firmware:
note_off(); // immediately shut down the currently playing note
delay_ms(1); // wait 1 ms?
note_on(); // play the new note that was just pressed down...

this delay is for the analog part

but there is even more, one more thing in the note on/off functions themselves
i still haven't figured exactly how it works.. i think it has to do with some flipflops or whatever..
from synth.c

Code: Select all

/* Note On:
 * This function takes a 6 bit 'note' (0x0 thru 0x3F), one bit of slide
 * and one bit of accent and performs the proper low level gating. Changing
 * this function can affect how the synth sounds.
 * Note that accent is active low.
 */
void note_on(uint8_t note, uint8_t slide, uint8_t accent)
{
    uint8_t i = 0;
    cbi(NOTELATCH_PORT, NOTELATCH_PIN);

    // Do not allow the note to go higher than the highest note (0x3F)
    if (note > 0x3F)
        note = 0x3F;

    // Basically turn slide and accent flags into bit flags for the note port
    if (slide != 0)
        slide = 0x40;

    if (accent == 0)
        accent = 0x80;
    else
        accent = 0;

    // output the note, set the latch, and strike the gate
    if (note != REST)
    {
        NOTE_PORT = note | slide | accent;
        // 30ns setup time?
        sbi(NOTELATCH_PORT, NOTELATCH_PIN);
        // 10 uS
        while (i<40)
        {
            i++;
        }
        sbi(GATE_PORT, GATE_PIN);
    }
    else
    {
        // gate is not restruck during rest, and note is not latched, but one can
        // slide to/from a rest and rests can have accent (tip to memology)
        NOTE_PORT = slide | accent;
    }

    // Debugging: print out notes as they are played
    /*
      putstring("Note on: 0x");
      putnum_uh(note); uart_putchar(' ');
      if (accent == 0) {
      putstring(" w/accent ");
      }
      if (slide) {
       putstring(" w/slide ");
       }
       putstring("\n\r");
    */

}

/* Note off:
 * This is essentially used to reset the gate/latch pins and also
 * deals with the pecularities of sliding (gate is not reset on slide).
 */
void note_off(uint8_t slide)
{
    /*
    putstring("Note off\n\r");
    */

    if (slide)
    {
        sbi(NOTE_PORT, 6);
    }
    else
    {
        cbi(GATE_PORT, GATE_PIN);
    }

    cbi(NOTELATCH_PORT, NOTELATCH_PIN);
}

guest
 
Posts: 3155
Joined: Fri Feb 17, 2006 5:35 am

Re: BCbox's VCA "Click be Gone" Mod

Post by guest »

im not sure whether they are supposed to overlap
but it wont make any difference
as soon as the reset pulse goes high
the envelope is enabled
and stays enabled for the next 6s or so
so it will sound the same regardless of when the gate comes

User avatar
altitude
 
Posts: 995
Joined: Wed May 11, 2005 5:17 pm

Re: BCbox's VCA "Click be Gone" Mod

Post by altitude »

guest wrote:im not sure whether they are supposed to overlap
but it wont make any difference
as soon as the reset pulse goes high
the envelope is enabled
and stays enabled for the next 6s or so
so it will sound the same regardless of when the gate comes
That's what I was not sure about.. If it reset when it went high or after the pulse..

User avatar
aminoacid
 
Posts: 352
Joined: Tue Jun 20, 2006 5:27 am

Re: BCbox's VCA "Click be Gone" Mod

Post by aminoacid »

wouldnt tolerance of every machines 12V rail have something to say?

some are 11.75 some are 12.25...


also r123 is quit big 1.5M and gives quit much tolarance swing.


only thoughts...

great thread!

User avatar
x-11
 
Posts: 14
Joined: Mon Jan 05, 2009 9:39 pm

Re: BCbox's VCA "Click be Gone" Mod

Post by x-11 »

hi ,
maybe lucky but redused the "random" harsh clicks with a toothbrush
to get rid off solderflux(orsomething:)in vca area
interupted d28 seems to smoothen it more cd4066 ?
clicks always in but not "randomly" amplified
hitchhiking voltage :P

maybe this is usefull:

"There are two things that cause pops with CMOS switches that are relatively unavoidable, and some things that can be sidestepped.

1) Control signal feedthrough; the very fact that you're putting a fast-rising edge into the chip lets that edge get coupled through the tiny capacitances inside to the audio path. Some chips (the 4016) have one of the two biphase drivers available and you can slow that one down with an RC. The 4066 and other swtiches have all internal buffers and inverters on the control signal and you can't slow this down. Newer designed chips are better.

In most of these chips, if you have the DC level of the signal sitting at half the DC power supply level to the chip, the control signal feedthrough from the Pchannel and Nchannel sides semi-cancel. So always DC bias the inputs and outputs of the switch chip to half it's logic voltage. That means NOT DC coupling the input signals. Usually it's OK to use 1uF caps and 100K resistors to the bias voltage on each in/out.

2) Fractional signal waves. When you flip the control signal, the switch changes in about 100nS. This is instantaneous compared to audio, so if the signal happens to be near the peak of a wave, the wave is sliced in half time-wise. That sudden change from an instantaneous level to none is audible as a click under most circumstances. This is unavoidable with hard-switching. Even mechanical switches do this. Only a variable gain block fading the signal up and down avoids this.

3)Switching DC levels; this is entirely avoidable, as in 1). "

info @
http://www.diystompboxes.com/smfforum/i ... ic=18179.0

maybe unbuffered 4066 or a 4016 helps dunno
hope im not spamming :D
peace

User avatar
decoder23
 
Posts: 97
Joined: Wed Dec 15, 2010 10:17 am

Re: BCbox's VCA "Click be Gone" Mod

Post by decoder23 »

Altitude wrote:Thanks to Brian for this.

The VCA click that is apparent in many x0xen is the result of a DC offset on the 6110 pin 2. Looking at the schems on the BCbox site, there is a 50KB trimmer and a 10m resistor in series to adjust for this. Convieniently enough, there are unused pads for the BA662 right next to the BA6110.

Image

All you need to do is to bend the outside pins of the trimmer to fit the adjacent pads (GND and +12) and the middle pin needs to be bent up and soldered to the 10M resistor lead. The other lead of the resistor simply goes into pin 2 of the BA662 pads. Once in, all you need to do is to adjust the pot till the click goes away! There is a sweet spot so it helps to turn the OSC off (or decrease the cutoff to silence if you have that mod).

Image
Image
Image

i tried this mod today. i didnt get rid of the clicks, but now i also have some noise behaving like the clicks :lol:

3phase
 
Posts: 203
Joined: Wed Apr 22, 2009 2:06 pm

Re: BCbox's VCA "Click be Gone" Mod

Post by 3phase »

antto wrote:Luap: some notes click more than others: this is very simple - because the oscillator is freeruning and when some notes start - the waveform is somewhere near zero (doesn't matter if it's on the positive or negative side) while others - not (so they click more)
the thing is all notes click, just you can't hear the clicking that much on notes that start at a point in the waveform near zero

why do they click? it's the VCA Gate signal
now, i'm not an electrician, but i know how this Gate signal looks on a TB-303 that doesn't click
it's strange because on the 303 it looks like the Gate signal is filtered by a LP-filter (or is that just the slew of an op-amp - i don't know exactly, but the result looks like it's filtered by a LP)
on the x0xb0x - it's like the opposite, the Gate signal doesn't raise up "first-fast then-slow" but "first-slow then-fast" and stops at once which is very bad

in your audio example - check your very last note to see what is the shape of the Gate-attack.. the curve looks like (x*x) while it should be more like (1-((1-x)^2))

one thing i'd try to do if i was good with electronics (and i'm not) would be to find where this damn Gate signal is and put a LP filter on it
the exact frequency of this filter - i can't say right now.. it has to be as high as possible as long as it doesn't sound clicking

thats an interesting observation.. one theory about the sound differences between xox and 303 claims stary capacitys between the circuit board traces on the real 303 responsible..

a stray capacity towards ground would act as a low pass filter.. that this can sound relevant on controlvoltages is a new aspect here..

i ve other problems than clicking with my xox wright now.. but for people that have problems..why not trying to have a small capity towards ground at the vca control input? maybe it betters the click a bit..

if stary capacitys are a factor they cant be very high... ok..can build up over various points on such a complex and dense board like on a 303..but i would estimate that it cant be more than 1nF in the max...

probaly rather something around 100 pF... but ... i only measured capacitys in audio cables..thats a different thing.. there you have something between 20 and 40 pf per meter cable.. one would think the a circuit board would have less..but than again .. the isolation on a board like in a real 303 with dust and dirt can be much worse than inside a cable.. what would compensate for the shorter way.. so we have a high ohm resistor in parallel to a small capacity..and this not necessarily just towards ground..

User avatar
x-11
 
Posts: 14
Joined: Mon Jan 05, 2009 9:39 pm

Re: BCbox's VCA "Click be Gone" Mod

Post by x-11 »

hi there
motivated for trying out some ideas i builded another x0x(dont want to take the old one apart to much hassle :mrgreen: )
used brians click be gone mod to narrow down the "click" to a thin spike.
then tried Altitude's 0,15 cap(r133+r131 junction)+ extra reversed diode (d35) mod and had the constand click also minored in an lfo like reappearing click, accidently hitted q3's pin (with the cap + pole) wich leads to the ba622 pad1.
that was even better no click and no need of the reverse diode.
so ground to 0,1 cap to q3 ??:P

so now i soldered a 0,1 electrolyte cap with between pad 1 of the ba622 path(+pole cap) and pad 3 of the ba 6110 path(- pole cap)
and click is gone.
dont know exactly whats happening but it filters the spike and almost no change in envelope .
hope it helps peace <3

guest
 
Posts: 3155
Joined: Fri Feb 17, 2006 5:35 am

Re: BCbox's VCA "Click be Gone" Mod

Post by guest »

that should have the effect of slowing up the attack time
although in a different way than the other attack mod
it will have a larger effect at the beginning of the attack
and less at the end
which i think is desirable in this case
good find

User avatar
x-11
 
Posts: 14
Joined: Mon Jan 05, 2009 9:39 pm

Re: BCbox's VCA "Click be Gone" Mod

Post by x-11 »

thnx guest but i geuss it only slows the attack for the vca a bit (which is nice)
still the env/ click is sharp like antto says .
i tried the 1000 uf to ground like antto tried (lp filter?) on r146 but at the side of the pic controller.
not the r144 side
that helps a for the env/click but makes the env behave also much different (but definitely a good sollution for extreem env clicks when cutoff resonance are down (nice mod :)) best result was 25v 1000uf.
the discharge diode altitude mentioned helps to get close to normal sound but reappearing lfo like env clicks,
so thats the same as in the vca circuit .
seeing that both env and vca gates come from there could it be that the controlleroutput is creating the click ?
like also mentioned earlier.
im thinking about maybe different values for r 146 and r 144?(to noob to know which values)
or lowering c54? sound like its not clicking but clipping a transitor or something;p
i also created the missing r147 22 ohm but not much of a difference aswell.
:D

well tried lowering c54
tried diferent values 146 higher
tried c55 diferent values
only thing worth something is the 1000 uf cap with discharge led serie with 22-100 ohm but changes release/decay?
ahwell sleep work then try again :)
peace

User avatar
x-11
 
Posts: 14
Joined: Mon Jan 05, 2009 9:39 pm

Re: BCbox's VCA "Click be Gone" Mod

Post by x-11 »

hey there,
here a picture for the less attack less a tick mod:)
this is a friends x0x in wich we applied the mod from brian and reduced the popping to a thin spike,
then used a 823j filmcap to make it good sounding.
lower values sharper attack ,higher values wider attack.
my friend prefered this cap best.
peace:)
Attachments
LesS ATTicK.JPG
LesS ATTicK.JPG (123.16 KiB) Viewed 10617 times

User avatar
antto
 
Posts: 1636
Joined: Thu Apr 15, 2010 3:21 pm

Re: BCbox's VCA "Click be Gone" Mod

Post by antto »

well, i've said lots of bullsh*t in this thread, some years ago
like that 303s don't have this x^2 shaped click - that's not true, they do, i just hadn't payed enough attention to this detail

now, for the clicking problem
i have the ba6110 soldered directly in the IC15B slot, and i didn't want to touch that, nor desolder it
so i just soldered a socket in the IC15B slot

DC-Offset in the VCA
this simply means that the VCA is amplifying the audio signal with some DC offset (the waveform is not centered around zero) and this gets AM'ed with the volume envelope
so, the problem with this click isn't that it's audiable, but that it adds a low-freq punch on the beginnings and endings of notes
this is not a big issue, untill you run the thing thru a distortion effect, then, this low-freq punch is amplified together with the rest of the signal, and takes up the precious "space" where you normally want to have a distorted resonant waveform, not low-freq mud


more or less, i did the same thing Altitude suggest in the first post of this thread, with the only difference that i didn't have components with the proposed values, and used the closest i had
i also wanted to make it "removable" so i soldered it to yet its own little socket

Image

that's a 100K multi-turn trimpot, and a 1Meg resistor
it plugs in on the IC15A socket from pin2 to pin5

the outter legs of the trimpot should go to 12V and ground (pin4 and pin5), the middle leg goes to the resistor which then goes to pin2

Image

to "configure" it, simply get the waveform switch stuck in the middle (so that the VCF doesn't get any signal) and play some pattern with many notes (or use Random mode)
boost the volume up so that you can hear everything, including the noise
now simply rotate the trimpot till the "poping" loses its punch (the multi-turn trimpot makes this very easy)


the actual VCA Envelope click
this is the real click you hear the most
it happens when notes retrigger, the volume envelope is charged-up with a x^2 shape (probably charging thru a diode or something) and the duration of this charge is very short, 25 to 33 samples @ 44100Hz (which is 0.56 to 0.74ms)
this behaviour is present at all times, but you will only hear it on some notes, those who begin when the VCF output is non-zero
and since this depends on the free-running oscillator - you will hear it randomly or cycling depending on that
this click is present on all 303s too


inspired by x-11, i started poking with capacitors around that area
i tried: 1nF 10nF 15nF 33nF and 0.1uF caps (those which look like plastic boxes)
in all cases the click was not smoothened enough but sligthly different (the 0.1uF cap did the most audiable change)
then i tried with electrolytic caps: 47uF 1uF 0.47uF and 0.33uF
47uF totally f*cks up the envelope, leaving tails at the end of notes and other undesirable side effects
1uF was okay, but i wanted to use the lowest possible which is yet big enough to smooth the click (and no tails)
0.33uF works, the click is smooth (i think even a lower value can still work but i didn't have such from my electrolytics)

for the record, in all tests i was connecting the negative leg of the cap to pin1
x-11 connects the other leg to pin3 on the IC15 B slot, i didn't want to poke that with the iron
i didn't mess with the datasheets, but poking randomly around, i found that this mod works also between pin1 and pin5 on the A slot
i prefered that, pin5 is already used for the DC-offset mod, so i added a small cable to it and to the cap, then the other leg of the cap plugs into pin1

Image

but since i had a bit unexpected behaviour with the two types of caps, which i can't explain - i'd advise anyone who's reading this to not hurry to solder in a cap based on what i said
instead, take whatever valued caps you have, and connect them temporarily to see
find the lowest value which removes the click

hope this helps

mario1089
 
Posts: 208
Joined: Wed Sep 19, 2012 8:11 am

Re: BCbox's VCA "Click be Gone" Mod

Post by mario1089 »

Interesting thread - I haven`t been annoyed too much by clicks, but that may be just me assuming they`re unavoidable:)
Possibly in the next production break I`ll tale a look if I want to change my one, too...

Anyway, this brings up a question: Has anyone ever thought about how to - optionally, by a switch - make the thing retrigger the osc on every noteOn? So that it`s not running free but give reliably the same attack shape for any note?

User avatar
altitude
 
Posts: 995
Joined: Wed May 11, 2005 5:17 pm

Re: BCbox's VCA "Click be Gone" Mod

Post by altitude »

mario1089 wrote:Interesting thread - I haven`t been annoyed too much by clicks, but that may be just me assuming they`re unavoidable:)
Possibly in the next production break I`ll tale a look if I want to change my one, too...

Anyway, this brings up a question: Has anyone ever thought about how to - optionally, by a switch - make the thing retrigger the osc on every noteOn? So that it`s not running free but give reliably the same attack shape for any note?
It's been discussed at one point and IIRC, there were instructions as well

User avatar
faybiens
 
Posts: 17
Joined: Thu Jul 09, 2015 5:00 pm

Re: BCbox's VCA "Click be Gone" Mod

Post by faybiens »

For your info, here is what I did to get rid of the clicks (I can do photo of the board)
https://soundcloud.com/jamsh-1/no-clicks-xox

For you to know I use to do lots of such calibration for other synth, like trigger/gate sound filtering, biasing of analog circuit, just to "finish" the work.

Ok, i have a BA662 model for which I did not need to do some biasing

I tried this capacitor on R133 not good! The env is affected especially the release.
A mod had to be done in one enveloppe generator, like that you can act on attack and release independently

I "play" on the env generator manage by Q36
I parallel a 22uF electrochemical capacitor to C72, this will just increase enough (I tried 10, 33...) the attack to not hear anymore the click due to non resetting osc. The side effect is that the release time of that envelopp will be increased, I just parallel a 10k resistor to the capacitor to decrease R142 and get back the initial release time.

Discovered that the accent generated a click by its own as well, I put a ceramic 200nF to upstream D27 and common point, it takes the click off the accent and does not affect at all its sound, and its envelop.

I placed a 100nF ceramic and I put the wave selector switch in middle position to get no sound (you can hear gate or trigger clicks, I think it is trigger as it does not click of note off), and experience till I get a silence (no more trigger clicks).
Best result without affecting env is between common and downstream D27

That is it, I get a pure 303 sound with no click and no enveloppe change at all, with 4 components, I did compared with recorded sound of non modified xox to confirm release time

Additionnal mods:
I did decrease R97 down by soldering a 200k in parallel just to get that little more resonance behaviour
And increased R123 to get a longer decay on notes, 2.5Mohms instead of 1M

PERFECT XOX!

Locked
Please be positive and constructive with your questions and comments.

Return to “x0xm0dz”