SparkFun Analog/Digital MUX Breakout - CD74HC4067 has issue with audio board

tkvalentine

New member
Just throwing this out here before posting code, pictures, wiring diagrams etc.

I am building a synthesizer using:
-Teensy 4.1
-audio board version D2
-(2) SparkFun Analog/Digital MUX Breakout - CD74HC4067 daisy chained (i.e. using same common pin and channel select pins)
-(2) LEDs
-(4) momentary push buttons

Previously I built a smaller version of a synth using only the Teensy 4.1 and audio board with 12 potentiometers pinned directly to the Teensy. This worked great, no problems. I then decided I wanted more sound choice and control so redesigned the synth using 32 pots. Now I need 2 MUXs to handle all the pots.

Started by setting up and testing the double MUX daisy chain setup using the enable pin to select which MUX I wanted to read and using the advised delay between channel select and common pin read. This worked great, no issues.

I then added the MUX code to the synth audio code and wired in the MUXs ensuring not to use any of the audio board pins. The MUXs use common ground, common 3.3v, common signal pin and common channel select pins. All 32 MUX inputs are driven by 10K linear pots.

So now I check the output of the pots/MUXs and get very odd behaviour. 50% of the MUX inputs are reading correct values but show up on two channels usually 4 channels apart. For example, channel 0 reads 980 and channel 4 reads 980. 40% of the MUX inputs are not reading at all and 10% of the MUX inputs are reading the correct single channel with wildly varying values.

Obviously there is something different between my test with no audio board and the version with the audio board.

Has anybody experienced this with a similar setup? Is the audio board somehow the interfering factor?

I appreciate any insight and help that might help me resolve this head scratcher.
 
@tkvalentine:

If you want, you can take a look at where I described the first version of my TeensyMIDIPolySynth (TMPS) in <this> post. The description includes the fact that I used 74HC4067 MUXes to take inputs from 48 pots, 42 push-buttons, & to drive 42 LEDs (the LEDs were eventually converted over to be driven by 74HC595 shift registers instead). That original post includes a link to the source code for my TMPS, which you can use to compare with how I made use of the MUXes.

Otherwise, pictures/diagrams of how you have everything wired, as well as your source (make sure to use the CODE tags </> button to post your code), would allow more detailed troubleshooting and/or recommendations.

Mark J Culross
KD5RXT

P.S. The version described in this post has long since been replaced by the latest version, which makes use of an RA8875 touchscreen display, & controls for everything are implemented as menu-driven push-buttons & sliders, presented on the touchscreen & adjustable in real-time. I have yet to post the details of that update. MJC
 
Back
Top