Write verify fails on custom nRF52810 board

I've put the recommended circuit for the nRF52810 QCAA chip together on breadboard (schematic is below) and am using a J-Link Edu Mini to program.

I created a custom board template in nRF Connect with nrf52810 QFAA (no QCAA option) and used it to build both Hello World and Blinky examples. When I try to flash either example I receive a "ERROR: Write verify failed." message which expands to:

[error]: [ nRF52] - Data does not match in address range [0x00000000-0x00007a30] (Flash)

[error]: [ nRF52] - Expected byte value 0xfe but read 0x00 at address 0x000029f0.

[error]: [ nRF52] - Flash verification failed.

[error]: [ nRF52] - Failed while verifying file c:\ncs\Applications\hello_world\build_1\zephyr\zephyr.hex.

with the log command.

I've also used an nRF52 devkit build (with the NRF52810 version selected) and received a similar message with different values:

[error]: [ nRF52] - Data does not match in address range [0x00000000-0x00008b40] (Flash)

[error]: [ nRF52] - Expected byte value 0xf0 but read 0x00 at address 0x000011e1.

[error]: [ nRF52] - Flash verification failed.

[error]: [ nRF52] - Failed while verifying file c:\ncs\Applications\hello_world\build\zephyr\zephyr.hex.

I was able to flash this build to the actual dev board hardware fine.

I've attached the log file from this devkit build.

Any help would be appreciated Slight smile

Thanks

1200.log.log

Parents Reply Children
  • Hi,

    It looks like you are missing one of the DCDC inductor in your design:

    Please add CONFIG_BOARD_ENABLE_DCDC=n to your prj.conf to use the internal LDO instead, and see if it helps. Both inductors are needed for noise suppression. 

  • I've added that line to my prj.conf file but still receive the same type of error.

  • Hi 

    Does it help if you run a recover operation first? 

    You can do this from the command line like this:

    nrfjprog --recover

    Also, can you share a picture of your PCB as well? 

    Have you probed any pins on the nRF52810 to see if the chip is powered up properly? 

    The VDD pins should follow the supply voltage, and you can also check the DEC1 and DEC2 pins to see if the chip is powered up. The DEC1 voltage should be around 0.9V, and the DEC2 voltage should be around 1.3V. 

    Best regards
    Torbjørn

  • Hi,

    I tried adding the command you suggested and got the same result.

    The board is messy unfortunately but here's an image:

    The VDD pins all show roughly 3.3V, DEC1 shows 1.1V and DEC2 shows 1.3V.

    I've double checked the capacitor on DEC1 and it is definitely 100nF so I'm not sure why it is at 1.1V.

    Thanks

  • Hi 

    Running the chip from a socket like this, with all the external components hooked up on a breadboard, is more or less guaranteed to fail unfortunately. 

    The long connections between the pads on the chip and the components will add a lot of capacitance to the signals, which will affect the operation of the device. 

    Is your end goal to make your own PCB?
    If so I would recommend getting an nRF52DK for development. 

    The nRF52DK uses the nRF52832 rather than the nRF52810, but we don't have a dedicated DK for the nRF52810. When developing your code it is possible to limit the project to the resources of the nRF52810, even if the nRF52832 is used for development. 

    If your end goal is just to run something from a breadboard I would look for an nRF52810 module that has the right pitch and placement of GPIO's so that it can be connected to the breadboard easily. For a full list of 3rd party modules using the nRF52810 please have a look here

    Best regards
    Torbjørn

Related