4x DAC's neatest solution (in stock)

I've got a project that i want to read from an analog signal, and feed 4x (different) signals into control boxes that expect 0-5v analog inputs. They sample at 1ms and 12bit, so I would like to stay close to these (10bit is ok).

I'm currently using an Arduino nano every and have made a start with a pair of MCP4725 DAC's to give me 2 analog outs, but I now want to step up to 4x analog outs.

Ideally i'd use a MCP4728 but it seems nowhere has them in stock.

I dont think I can use PWM filtered due to the speed/accuracy of the signal i need
I dont think i can use 4x MCP4725 due to limited I2C addresses (only 2 options)

The only solution I can think of is a I2C multiplexer with 4x MCP4725, but I feel like there must be a better solution with fewer parts.

Can anyone suggest one please??

There is no speed or accuracy issue with PWM. Normal PWM has 8 bit resolution but you could use 16 bit PWM.

Yes you can.
Add an output pin from the Arduino to each one of the address select lines of your MCP4725s, keep them all low until you want to use one, then put that pin high and use the address you get with the address select high, when finished put it low again. That way you can add as many MCP4725s as you want.

1 Like

Thanks for the reply

For me the issue with PWM is with the filtering, to get a ripple small enough to be within the acceptable resolution, it will slow down the response between input and output, hence looking to use the DAC.

Great idea on the changing address in the code - this is a nice workaround i can use for now, thanks.

Hopefully the 4ch DAC's come in stock at some point, alternatively are you aware of any controllers that have 4-ch on board DAC's? The most i could find was 2-ch but only on boards that operate at 3.3v which isn't ideal.

No controllers that I know of have more than two.

These are alternative D/A chips you could try
The AD5383 has 32 D/As in it
The AD5696 has 4 D/As in it.
The AD5317R has 4 D/As in it.
The VL5620 has 4 D/As in it.

No it will not, provided you make the PWM clock run faster, this means that the filter will add no delay to the signal change. Because the filter will not start to roll off until it is well clear of the speed of change you want to let through.

Is this for audio applications or something else?

Depending on how many you need these are in stock MCP47CVB24-E/ML Microchip Technology | Mouser

I'm trying to find a solution first without having to design/make my own boards - maybe that'll come later - but thanks for the suggestions on chips.

I was basing my concerns about the PWM filtering on the default PWM frequency of ~1kHz, thanks for pointing out that this can be increased. You're right that at 30kHz+ a filtered PWM is likely to be acceptable. I've found some (not simple looking) references to changing this frequency on a nano every - i'll add that to the list of future things to try.

Its not audio but the boxes control motors and I dont want my signal modifier to add any perceptible delay or cause any unpredictable effects - hence my preference for DAC for more chance of robustness if that makes sense.

I'll try the address modification with 4x DAC boards first, keeping an eye out for stock of the quad DAC. Then look into PWM and other more involved but neater solutions later.

Thanks for your help.

There will be no perceptible delay even with low speed PWM clocks, but there might just be a measurable delay.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.