Hi,
For my application I was using ESB without softdevice and just recently I wanted to add dfu so I had to add softdevice as well.
After adding softdevice I found out that my piece of code that is starting lfclk and hfclk is now failing.
void clocks_start( void ) { nrfx_clock_enable(); nrfx_clock_hfclk_start(); while (!nrfx_clock_hfclk_is_running()) ; nrfx_clock_lfclk_start(); while (!nrfx_clock_lfclk_is_running()) ; }
First symptom is that hfclk_is_running function never returns true. After commenting out that while() loop when application reach lfclk_start it simply stops execution - I think it gets stuck somewhere in softdevice.
I already tried to use softdevice api for requesting clocks and added softdevice enabling, but then I got some other weird errors - probably softdevice was clashing with ESB, but didn't invetigate it much further. Then I read somewhere that if application does not use softdevice - like in my case - I can just ignore it. But then the question is why this clock function is failing?
Hoping for a quick answer !
Michał