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

nRF SDK14 - NRF_DFU_HW_VERSION broken define

The following does not allow me to define NRF_DFU_HW_VERSION in my makefile, I get redefine errors due to this broken if else in def_req_handling.c:

#if defined (NRF51) && !defined(NRF_DFU_HW_VERSION)
    #define NRF_DFU_HW_VERSION (51)
#elif defined(NRF52_SERIES)
    #define NRF_DFU_HW_VERSION (52)
#else
    #error No target set for HW version.
#endif

One solution is to wrap in an ultimate #ifndef:

#ifndef NRF_DFU_HW_VERSION
	#if defined (NRF51) && !defined(NRF_DFU_HW_VERSION)
	    #define NRF_DFU_HW_VERSION (51)
	#elif defined(NRF52_SERIES)
	    #define NRF_DFU_HW_VERSION (52)
	#else
	    #error No target set for HW version.
	#endif
#endif
Related