I have a slight (Bloomin annoying) issue with the MUXing on the CheapStep Pro Project. In general it works as expected.
So to give you an idea what is supposed to happen…
The mux gets set to Address 0, gets enabled, and then steps through to address 8 before being disabled. (the next of the 4 muxes then does the same and it cycles through… All fine(ish)
Each Mux output sends ~5V to an LED, pair of POTS and that gives the two CV voltages…
The problem is that there is a glitch, it seems primarily on step 2,7 causing noise on step 5… You can see the LED for step 5 flicker faintly briefly.
I have tried all sorts of things in code to delay, change, rejig the way the mux is addressing… But to no avail.
I have googled around and can’t fins much on it…
In practice, the CV for the Frequency makes no noticable difference, but the one for the VCA creates a crackle…
Has anyone got any ideas… Anthing I can add in to attenuate these blips???
Any help much appreciated as it’s holding me up now
Are you sure address bits are set correctly before enabling the chip? I mean you should disable it while setting a new address. Did you also tried using pull-up or pull-down resistors on the address pins?
Ok, forget the disabling, it also disables the outputs. The chip uses “break-before-make” so it takes a few nano seconds before it switches the channel. So I guess it’s a timing issue. Add some delays. Or you are too slow while changing the address.
Still trying to make some sense of what’s going on. As I say I don’t think it’s an addressing/enabling issue.
The PCB’s are my old test boards which may be a little hacked and had dodgy ribon cables by the looks… I will build up one of the later ones and see if the issue goes away.
How are you setting the address pins? Output pins on the Arduino can be set directly in a register. This is much faster and you can even set certain pins at the same time to avoid timing issues.
Please share the code and the full schem, all i see right now is that it looks like you have hooked it up incorrectly. If you dont wish to share everything, can you confirm PIN 3? It looks like its just plugged to +5v in the schem.
Ah, I was thinking in reverse. I only ever use these guys to multiplex inputs. How many of these are you using? To confirm, are you muxing or are you demuxing?
can you include pin definitions? I would like to know more about what the pins that are referenced in your mux functions map to on the MUX. I see 4 pins, but only 3 of those can be address select pins. A,B,C, and D are not very descriptive.