This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

SPI not transferring when sck pin not used

Hi there!

I'm in the process of migrating a project from a nRF52832 to nRF52840 due to insufficient memory and of course some problems arise during the process. Most of the problems are configuration related, but I believe this one to be a bug.

When the sck_pin is set to NRF_DRV_SPI_PIN_NOT_USED, the transfer isn't completed. In fact, the pin is made high and becomes low after 1.6ms; then all nrf_drv_spi_transfer calls return NRF_ERROR_BUSY. This is the case in both, the project and the spi example in the most recent version of the SDK. What I find interesting, is that setting the sck_pin to NRF_DRV_SPI_PIN_NOT_USED works with the nRF52832 DK, but not with the nRF52840 DK.

The problem is temporarily solved by just initializing the sck_pin with a random (unused) pin. Anyway, I thought I'd raise this question to save a couple days of debugging for people who are also coping with this problem and to get to know why this is happening.

Thanks in advance,

Jochem

Parents Reply Children
No Data
Related