With the 24 voltages, I'd like the user to be able to use patch cables to route output CV to input CV as they see fit. For range.. 0-5v or -5v to 5v would be nice, but I'd be okay with 0-3.3v since that's what the teensy is capable of. Frequency... I'd like it to be able to change faster than a human would be able to detect, does that help answer that?
OK, so you'd like to programmatically produce CV voltages at Eurorack levels. I have a Behringer Neutron, so perhaps I can point you a bit in the right direction.
0-3.3V CVs are not going to get you very far in Eurorack. If modulating a V/Oct parameter, you will logically only be able to control a range of 3.3 Octaves. The VCA in the Neutron needs +9V DC to fully open, the VCF frequency expects +-5V DC. With a 0-3.3V range, or even a 0-5V range, you will not be able to fully modulate all of the parameters of the Neutron (and most other Eurorack modules as well). So, to effectively interface with Eurorack gear, your project should be able to produce voltages in the range of -10V to +10V DC (see
this guide from Doepfer for more info). You will find information and examples of how to scale the output of a Teensy pin or DAC to Eurorack voltage levels all over this forum and the Internet.
On a side note... why would something made for audio output be un-optimal for CV output? They are both rapidly changing analog voltages.. and audio can be used to control CV.. so I'm afraid I don't quite understand the problem..
If I might expand a bit on the excellent explanation from Paul with some basics... Unlike audio signals, CV signals do not necessarily rapidly change, or even change at all. V/Oct CV signals typically control the frequency (pitch) of an oscillator, which will also output an analog voltage, possibly changing at a rate we can hear (>20Hz) if amplified and attached to a speaker. Because V/Oct CV signals control the oscillator frequency, they need to be stable and accurate DC voltages, otherwise the oscillator it is modulating will sound wobbly, and out of tune. That is why DC accuracy in V/Oct CV signals is so important, a few millivolts of error can actually result in a pitch difference that can be heard by the human ear.
That being said, there are a number of other uses for CV which do not require such a high level of DC accuracy. For example, when modulating a VCA, a few millivolts of error cause no audible volume difference, or as is often the case in Eurorack, modulating some knob with CV (LFOs are often used for this) almost never requires V/Oct level accuracy.
i'd still be very interested in any of these higher resolution audio codecs llike the ADAU1966, externally scaled up to 10vpp.
because other than the refresh rate that's been discussed here, something like the max11300 12bit resolution are really borderline for precise pitch tracking over a wide range following the 1V/oct standard. iirc, on the standard 10v/octaves range, 12bit leave you with around 3ct per bit? in an ideal world that is, so realistically probably 6-12 cent per bit. which is why a lot of "cheap" digital controlled CV generators are limited to 5 octaves...
I own a Polyend Poly 2 - a MIDI to CV converter module based on the MAX11300. They claim <5mV error throughout most of the 10 octave MIDI range on 8 of the "factory calibrated" outputs and <20mV error on the rest. In practice the module tracks as good as any other V/Oct CV sources I have. Having more than 12 bits of resolution available is only as useful as the DC accuracy of the DAC itself, plus whatever scaling circuitry follows it - The MAX11300 does not need any scaling circuitry, which removes that source of error from the equation.
i never though about the low frequency limitations, how would you guys (paul?) assume the 1966 or others that have been discussed perform in that regard? for LFOs you surely want to be able to go below 1Hz.
I can't speak to the ADAU1966 since I don't have one, but looking at the datasheet, it's speced similar to the CS42448 which I have tested quite a bit. To give you an idea of how these audio codecs perform with DC signals, have a look at my measurements:
Notice that the output error increases significantly as the DC voltage approaches full scale. Now for this test, I was passing a DC voltage to the ADC, through the Audio library, and back out of the DAC where it was measured, so it is possible that a synthesized DC signal would have less error. Nevertheless, the error you see in the table is before scaling the output signal to +-10V, and may also vary with temperature. While it might be possible to compensate for the error in software, it probably won't be easy.
To summarize I'd suggest separating potential CV signals into two categories:
1.) V/Oct, where DC accuracy affects something noticeable, like pitch.
2.) The rest. where DC accuracy affects something that is not noticeable.
When considering using an audio codec for CV signals, keep in mind that it will likely be most useful for the latter.