Here's a thought .... could you compromise in some way and configure the gain of your opamp dynamically depending on the output voltage, so you'd get 1mV steps below 5v, 2mV below 10v, 5mV below 20v or something like that?
Maybe it's something as simple as shorting resistors on the gain of your opamp to take them out of circuit?
That is not an uncommon way to handle it. Often you have to dig into the specifications to find if this was done.
nah, wouldn't be an issue for me. I mean, who needs 12.000V and couldn't get away with 12.010V (if that'd be the only settable voltage due to resolution)? I know, bad example - but for me, that wouldn't matter.
How'd I do that, with MOSFETs? Are they the way to go? Or is it another "it depends" like always in engineering?

"DAC 2 Click" from MikroElektronica uses the 16-bit LTC2601 which has 8 LSB INL, and the "ADC 8 Click" uses the ADS1115.
at worst case scenario it has 64 bits INL
^
|
This... that's a horrible number... The ADS1115 is pretty decent though, and I'm going to use that as it performed well on my breadboard tests with my Lab PSU circuit on a PCB already (bodged in).
so cross your fingers and hope you get a golden sample ... or order a few and test them individually (I once had to do that with op amps since the more expensive stuff would have costed about more than 10 of the cheaper ones
I got lucky and found a golden sample in them).

nah, not gonna do that. I'll be better off, just ordering a DAC which doesn't have those bad figures in the first place.
what op amp are you using for the gain stage? I suggest a rail to rail chopper amplifier since you need low input offset voltage for any level accuracy. maximum allowed offset would be the tolerance, divided by gain, so 1/6 mV in your case.
OPA2197, they seem to work pretty good, in general I get really good voltage setting results with my current setup (MCP4922 + OPA2197) with measured voltage being in general within 0.1% of the set value (measuring with my multimeter + the ADC, both measurements match).
and you have previously mentioned that you are not able to calibrate them out
which is a bit painful.
yeah, that's simply beyond my knowledge, I wouldn't even know where to start. and even if, I'd need somebody to explain it to my like to a braindead monkey before i'd get it... unfortunately I sometimes do learn really fast and sometimes things take ages.
That is not an uncommon way to handle it. Often you have to dig into the specifications to find if this was done.
I guess I kinda like the idea, however I'd be happy if I'd get away without having to implement that as it'd add more complexity to the circuit and I'm running out of GPIOs on my MCU already. Sure one could do the switching with schmitt triggers and stuff but yeah.. complexity and board space
