ADC value is always 0.99 (Solved)

I have a ready made Patch Init module and I’m trying to get the state of the first rotating knob. However, the value is always 0.99. I looked at several example codes and it should be quite simple, does someone have an idea why it doesn’t work for me?

#include "daisy_patch_sm.h"
#include "daisysp.h"

using namespace daisy;
using namespace patch_sm;
using namespace daisysp;

DaisyPatchSM hw;

void AudioCallback(AudioHandle::InputBuffer  in,
                   AudioHandle::OutputBuffer out,
                   size_t                    size)
{
    hw.ProcessAllControls();
    for(size_t i = 0; i < size; i++)
    {
        out[0][i] = in[0][i];
        out[1][i] = in[1][i];
    }
}

int main(void)
{
    hw.Init();
    hw.StartLog(false);
    hw.StartAudio(AudioCallback);

    while(1)
    {
        float knob_value = hw.GetAdcValue(CV_1);
        hw.PrintLine("My Float: " FLT_FMT3, FLT_VAR3(knob_value));
        System::Delay(500); // Wait between printing
    }
}

Ah, it has to be connected to an external power supply, the USB power itself is not enough. It works perfectly now.