Whichever input channel I select, I always get a value close to zero. Here is my test code using VDD as the input source:
static void saadc_init()
{
uint32_t err = nrfx_saadc_init(NULL, saadc_handler);
APP_ERROR_CHECK(err);
nrf_saadc_channel_config_t sns_in = NRFX_SAADC_DEFAULT_CHANNEL_CONFIG_SE(NRF_SAADC_INPUT_VDD);
err = nrfx_saadc_channel_init(0, &sns_in);
APP_ERROR_CHECK(err);
NRF_LOG_INFO("SAADC Initialized");
nrf_saadc_value_t result;
nrfx_saadc_sample_convert(0, &result);
}
In this case, RTT reports that the value is '2'. This is the case for any input channel I select.