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

No lifesign from nRF51822

Hi,

We just recently received our (custom) board with the nrf51822. To program and debug the nRF I use the pca10028 and the debug out header. I wrote a very basic program based on the blinky example to check if I can communicate with the chip at all. I can successfully program the nRF via the nrfGo Studio. I can also ready back the hex file with success. However, the LED do not toggle and the chip seems to be "dead" after programming. I double and triple-checked the pin assignment and that the LEDs are mounted correctly etc (I also cannot see a change on the pin with an oscilloscope).

Does anyone have any idea what could be wrong? The program-code works fine on the pca10028. For the custom board I just change some defines because of the different pins we use for the LEDs. Do I have to do something special for factory devices? I tried with and without the softdevice, with no difference.

Any suggestions?

includes... int main(void) { nrf_gpio_cfg_output(LED_1); nrf_gpio_pin_set(LED_1); }

  • Have you checked that the RESET/SWDIO pin is high? Maybe you shoud post the code. Are you using conditional compiler flags to switch between PCA10028 and your own board?

  • Hi! thanks for your answer. SWDIO is high after power on. I do not have any other components on that line, it is directly connected to the IC.

    I have posted the code. The formatting didn't work well, though.

    Yes, I use another define instead of -DBOARD_PCA10028 is use my own and include another header file in boards.h. This works because when I add an #error statement in my header file the compilation fails.

  • Ok, I solved it! The problem was, that we had another (memory) version of the 822 (-aa) than the 422 (-ac). Hence I had to change the linker script from

    LINKER_SCRIPT=../../../../../../components/toolchain/gcc/gcc_nrf51_blank_xxac.ld

    to

    LINKER_SCRIPT=../../../../../../components/toolchain/gcc/gcc_nrf51_blank_xxaa.ld

    Thanks anyway!

Related