Potentiometer Range

Hello everybody!
I finally found some time to play around with my Daisy Patch SM :raising_hands:

What I don’t understand is that my pots get values from 0.5 to 0 when using the GetFloat() function (was expecting 1 to 0). Also, when using fmap I get values from 5 .. 0 (was expecting 10 to 0)

wetCV = hw.adc.GetFloat(CV_3);
wetCV = fmap(wetCV, 0.f, 10.f, Mapping::LINEAR);

Does anyone have an explanation to that?
Thanks in advance!

Are you using Patch.Init()?

Yes, I’m using patch.init().
Was looking into patch.init() examples and found that “GetAdcValue” and “fmap” were used, which works as expected.
Guess it’s due to 5V reference voltage at the potentiometers instead of 3V3?

Yes, and the inverting op amp.

Yes, for the patch.init(), use:

float wetCV = hw.GetAdcValue(CV_3);

Haven’t tried the other, interesting.

Looking at the schematic, there is no inverting opamp on the patch.init().
The pots are configured as voltage divider between 5V and GND going directly into one of the CV inputs on the submodule.

Guess it’s caused by the different reference voltage (3V3 vs 5V).

The inverting op amp is on the Submodule.

Oh.. good to know! Thanks!