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

nrfx_spim not enabled through sdk_config.h with SPI_ENABLED , NRFX_SPIM_ENABLED as NRFX_SPIM3_ENABLED is missing

Hi, had to modify this file 

SDK nRF5_SDK_15.3.0_59ac345 in file apply_old_config.h

line 818 

(SPI_ENABLED && (NRFX_SPIM0_ENABLED || NRFX_SPIM1_ENABLED || NRFX_SPIM2_ENABLED))

Should be

(SPI_ENABLED && (NRFX_SPIM0_ENABLED || NRFX_SPIM1_ENABLED || NRFX_SPIM2_ENABLED || NRFX_SPIM3_ENABLED))

  • Please try and take some of these constructive criticisms on-board and show some sympathy rather than being defensive, as we both want Nordic's customers (i.e. product designers) to have an improved experience and to get products to market in a timely manner.

    1) I conveyed to you the understanding I had been given, by virtue of cutting-and-pasted direct quotes from your own support engineer. The problem is that customers are getting mixed messages about how to use the various drivers and libraries you provide.It is very confusing, and the documentation is now fragmented.

    2) There are no clear developer guides available, just a few example projects which don't contain any explanatory code comments or associated text documents to explain how they work in plain English. Customers are left to reverse-engineer the design-intent and meaning from the code, which is a slow, frustrating, and very expensive process. As a business owner I hate wasting money, especially mine!

    3) Obviously I know that SPIM3 is only supported in nrfx_spim, as I already told you that. The nrfx_spim gets disabled by default when starting from the "nordic blinky" example project. Only by hacking the sdk_config.h file can this be worked-around.

    4) "apply_old_config.h" disables access to the NRFX drivers and enables the SPI Libraries which implement a sub-set of the same functionality. To your customers, that looks a lot like you have two "competing sets" of drivers, even if you say they aren't competing.

    5) I would much rather use purely the new NRFX drivers, but this doesn't seem to be possible, as when customers include the SoftDevice, that also seems to automatically includes translation layers for legacy code I really don't want, such as the "apply_old_config.h" file, and the app_timer and its legacy includes, and probably cludges like nrfx_glue.h

Related