This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Multiple definition of `SWI0_EGU0_IRQHandler'

Hi all, I have an Eclipse project in which I want to transfer packets of data bidirectionally between ESB and UART. The makefile includes both nrf_esb.c and app_timer.c (needed by nrf_serial.c), with SDK 13.0.0, and I am getting this linker error:

_build/nrf_esb.o: In function `SWI0_EGU0_IRQHandler':
C:/Nordic/nRF5_SDK_13.0.0/components/proprietary_rf/esb/nrf_esb.c:973: multiple definition of `SWI0_EGU0_IRQHandler'
_build/app_timer.o:C:/Nordic/nRF5_SDK_13.0.0/components/libraries/timer/app_timer.c:921: first defined here

Any suggestions where this could be going wrong please?

  • FormerMember
    0 FormerMember

    To combine app_timer with an ESB project, app_timer can be set to use SWI number '1' (instead of '0') in sdk_config.h. Unfortunately, the app_timer module is not added in sdk_config.h in the ESB example. To add the app_timer module, copy the app_timer part from sdk_config.h in a BLE example.

    For reference, I have uploaded a version of esb_tx with the app_timer module added: esb_tx_with_app_timer_module_121309.zip (SDK 13.0.0)

    Another option is to make app_timer use the interrupt handler for a hardware peripheral that is not being used.

  • Thanks, Kristin. I changed the sdk_config.h to '1', cleaned the project and it recompiles with no errors.

Related