tx_rx_non_blocking sample fails to build

Hi,

I'm trying to build the "tx_rx_non_blocking" sample (ncs2.70, nRF52840dk) but get the following error message  -


C:/devtools/nordic/ncs/v2.7.0/modules/hal/nordic/nrfx/drivers/include/nrfx_twis.h:71:33: error: 'NRFX_TWIS1_INST_IDX' undeclared here (not in a function); did you mean 'NRFX_TWIS_INSTANCE'?

The 'sister' sample app tx_rx_blocking builds like a charm...

What am I missing here?

Thanks

  • Try adding the below to your prj.conf

    # Enable the I2C peripheral driver
    CONFIG_I2C=y
    CONFIG_I2C_NRFX=y
    
    
    CONFIG_NRFX_TWIS=y
    CONFIG_NRFX_TWIS1=y
    
    
    CONFIG_I2C_NRFX_TWIS=y
    CONFIG_I2C_SLAVE=y

  • Problem solved.

    Apparently, the problem is in the file \boards\nrf52840dk_nrf52840.dtsi

    It has a wrong inclusion path hence when initially creating a build configuration something gets broken and creates the problem above.

    The way to fix:

    1. Copy the sample

    2. Add a build configuration (in my case it was nrf52840dk, -Og (debug optimization)). Click 'Build Configuration'

         Note that the initial build fails


    3. modify line #1 of \boards\nrf52840dk_nrf52840.dtsi  to :

    // #include "../../../common/common-pinctrl.dtsi" // BAD
    #include "../common/common-pinctrl.dtsi" // GOOD


    4. Run pristine build. Voila, it works

Related