Hi,
I am attempting to sample multiple channels using the nrfx drivers. Using external timer with PPI over internal timer seemed to provide no benefit so I went for internal timer since the configuration was simpler and more straightforward. Works well for a single channel but adding a second one is unsupported, according to the return value of the function in the HAL.
if ((p_config->internal_timer_cc) && ((active_ch_count > 1) || (!event_handler)))
{
return NRFX_ERROR_NOT_SUPPORTED;
}Latest SDK seems to be on nrfx 3.10.0, so source code link to relevant line here.
I have scoured the documentation for the nRF54L15 for any mention of such a restriction but found nothing. A couple of DevZone questions have asked this 5 years ago and 6 years ago and the limitation seems to be documented for older chips. I tried simply ignoring the check for channel count and I get readings for both channels as expected, so the limitation doesn't seem to apply.
Are there any potential problems with working around the restriction in nrfx?
If it's a bug, could it be fixed upstream? I am happy to contribute if so, although it doesn't seem like a quick, file local fix at a glance.
Lastly (out of curiosity), are there any benefits to using external timer with PPI over internal timer on this SoC?
SDK 3.1.1
nRF54L15DK
Regards,
Charlie