9 years ago.

Conflict between latest nRF51822 and mbed libraries (20 Apr 2015)?

I've been away for a few weeks but returned today to find that my nRF51-DK project didn't compile cleanly anymore. So I then updated the out-of-date libraries and it wouldn't compile at all, failing with an L6200E error, reporting "Symbol GPIOTE_IRQHandler multiply defined (by gpio_irq_api.o and app_gpiote.NRF51_DK.o)." The problem can be demonstrated by adding these two lines to the demonstration program BLE_UARTConsole, although I imagine it will show up in any example that uses mbed (rev 97) and nRF51822 (rev 111) libraries:

DigitalIn  button1(BUTTON1); 
InterruptIn button1Press(BUTTON1);

If the "InterruptIn" line is commented out, the program compiles cleanly again. So it looks like there's a conflict between the symbols generated by the mbed library (the source of InterruptIn?) and the nRF51822 library (specifically nRF51822/nordic_sdk/components/libraries/gpiote/app_gpiote.c).

Can anyone help with a way to fix this?

Question relating to:

Nordic stack and drivers for the mbed BLE API

Thanks for bringing this to our attention. This will be resolved very shortly.

posted by Rohit Grover 21 Apr 2015

1 Answer

9 years ago.

Hi,

this was reported recently , and will be fixed in the next mbed library revision , an issue here: https://github.com/mbedmicro/mbed/issues/1045

Accepted Answer