Midi controller with input range and mux 74hc4067ic

Dirk41

New member
Hi Team, how are you?
(First post, but not completely new here, long time reader of this great forum)

I am in the proces of building a midi-controller for my mpc (to get things finaly more to my hands then the standard factory gear)
and all seems to work fine.
But just one question remains if its possible with the mux74hc4067,

Can i give 16 potmeters an output range through the mux? like : myPot.outputRange(20, 120); (times 16)

i found two examples on github, and this is possible on the Potmeter exampel, but not addressed in the Mux-example.
Ive reached out to the author with this same question, but unfortunatly still no replay.

Links to the examples :

It would be helpful if its possible, so i can use limited inputs on the teensy and route all the pots via the mux.
the range is needed in my case to attach this to an extra gain option, i just want it to go from -3db, 0db, and +3db to avoid huge volume accidents during a live performance.

Thanks in advance for tips and or help, as this project is still in startup fase, ive been using these github examples as is.
Yours,
Dirk
 
any tips or help if this is possible to determine per potentiometer its midi value output (or limit this, sort of saying) trough a mux?
Struggeling on where to place or make the per pot definitions in the examples. my efforts lead to errors

Many thnx,
Dirk
 
If I understand the source code correctly (but I'm not a pro), you can use the function mypot.outputRange(uint8_t min, uint8_t max); anytime you changed the mux to a different port. The function sets the parameters outLo and outHi to a specified value which are then used by the MIDIpot::send() function.

Paul
 
I don't know these libraries. From my understanding from a quick look the mapping of one pot is done on one analog input. Probably the library needs some adaptation to use it with a mux input where the same analog input pin is used for different potentiometers by switchting through these step by step.
Technically the mapping you need is not a problem and definitely possible. I cannot say if it would be easier to make these libraries work together or start a new sketch. (for me it would be to program all by myself...)

Edit: Not sure if it sufficient what Paul is suggesting. It would be necessary to switch the outgoing cc number for each pot. At the moment this is defined in the beginning of the code.
 
Thnx team,
It’s a bit of a struggle to get this straightened out. As the need for definitions per potentiometer, I will try some more in breaking it up in the first part of the code, and somewhere placing the mypot.outputRange(uint8_t min, uint8_t max);

As we are talking about roughly 6 potentiometers that need the limiting, the 4.0 is sufficient to address these to different analog inputs and the use of a mux (say on A0) so there is a working solution at this moment by simply mixing up the 2 examples. And workable for now.

But still I didn’t lost my interest in the mux only option.
Thnx for your tips
Dirk
 
Back
Top