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

Custom Board Not Running Code

I have a program that runs great on the dev kit, however after uploading the code to a custom board based on the nRF52810, it does not seem to run.

I upload the code by connecting SWIO, SWCLK, Vdd, GND, VTG->Vdd, and GND_Detect->GND, and running:

nrfjprog -f nrf52 --program SOFTDEVICE_HEXDIR --chiperase --verify --log

nrfjprog -f nrf52 --program CUSTOMPROGRAM_HEXDIR --restart --verify --log

These commands complete without error, and the dev kit keeps running the old code, so I'm reasonable certain that uploading is working properly.

However, my test program (which just toggles some pins) seems to not run, and all pins seem to remain in high impedance state.

Initially, I had thought that it was because I'm using the nReset pin, however after manually removing that connection and leaving nReset floating, I get the same behavior.

This thread mentions a similar issue, which was resolved by changing the 32Mhz crystal. I am currently using this 8pF crystal with 12pF caps on each line, which I think is correct.

I also tried using the high frequency clock as the low frequency clock source, as is mentioned in this thread, which didn't seem to affect anything

Parents
  • Please see attached a schematic of my design.

    I will also add that I after flashing the softdevice, I get an error when flashing my custom hex "Data does not match in address range  [0x00001000-0x00003ec0]". It does work if I add --chiperase though.

    And for the 810 migration, I wasn't able to manually edit ROM_END, RAM_END, so I just copied SES Linker "Section Placement Macros" from the pca10040e blinky example, as I think that accomplishes the same thing.

     Schematic_machine_v3_2021-12-22.pdf

Reply
  • Please see attached a schematic of my design.

    I will also add that I after flashing the softdevice, I get an error when flashing my custom hex "Data does not match in address range  [0x00001000-0x00003ec0]". It does work if I add --chiperase though.

    And for the 810 migration, I wasn't able to manually edit ROM_END, RAM_END, so I just copied SES Linker "Section Placement Macros" from the pca10040e blinky example, as I think that accomplishes the same thing.

     Schematic_machine_v3_2021-12-22.pdf

Children
No Data
Related