Ground - 0v - level voltage offset on Daisy Patch DAC

Hello,
I am working on some projects with the Daisy Patch. currently I am using the CV out 1 and 2 to control some v/oct VCOs in my rack. I’m having an issue where writing 0 to the daisy DAC, outputs actually about 20-30mV. When I hold the seed in reset, it output’s a good 0v. All of the other outputs (audio and gate) are also working fine and output 0v when 0 is written to them. It’s becoming an issue for me, because the first note of the scale I’m outputting is now about 1/2 semi-tone out of tune. Has anyone else had an experience like this or know of an issue? Is there some sort of calibration I missed?

At that time the DAC peripheral is not initialized, that’s why you don’t get any offset. Otherwise it’s always present.

Nope no calibration and the offset is likely unavoidable. So you can deal with that in analog domain by mixing with a tiny amount of negative voltage or by retuning your VCO to compensate this. Also, it’s probably possible to convert codec used on Seed 1.1 to be DC coupled and then you would be able to output bipolar voltage with higher precision than what DAC offers.

1 Like

What makes say unavoidable? I hear so many people say that when you just have to turn off the on chip buffer.
Its in the data sheet

Do you have example code to disable the buffer?

My experience is with using STM32CubeMX disable the buffer via the GUI.

It looks like Daisy has DAC initialization code. I can’t verify that works, but it should work.

    DacHandle::Config dac_cfg;
    dac_cfg.buff_state = DacHandle::BufferState::DISABLED;
    hw.dac.Init(dac_cfg);

From this example