Hello,
To create an automated flash tool, we want to split flashing steps between erase and program steps.
When performing a recover before flash, program verify fails.
Fullscreen
1
2
nrfjprog --recover -f NRF53 --coprocessor CP_NETWORK
nrfjprog --program build/zephyr/GENERATED_CP_NETWORK_merged_domains.hex --verify -f NRF53 --coprocessor CP_NETWORK
When using single-line, it work fine.
Fullscreen
1
nrfjprog --program build/zephyr/GENERATED_CP_NETWORK_merged_domains.hex --recover --verify -f NRF53 --coprocessor CP_NETWORK
I use latest version of nrfjprog (10.23.2). Below is a two steps description of the problem
1) recover both CP_APPLICATION and CP_NETWORK
Fullscreen
1
2
3
4
5
6
7
8
nrfjprog --recover -f NRF53 --coprocessor CP_APPLICATION
Recovering device. This operation might take 30s.
Erasing user code and UICR flash areas.
Writing image to disable ap protect.
nrfjprog --recover -f NRF53 --coprocessor CP_NETWORK
Recovering device. This operation might take 30s.
Erasing user code and UICR flash areas.
Writing image to disable ap protect.
2) program with --verify the CP_NETWORK (without --recover)
Programmation failed on verify:
[error] [ nRF53] - Failed while performing 'Verify' operation on target address 0x01000000.
Fullscreen
1
2
3
4
5
6
7
8
9
10
11
12
13
nrfjprog --program build/zephyr/GENERATED_CP_NETWORK_merged_domains.hex --verify -f NRF53 --coprocessor CP_NETWORK
[ #################### ] 1.244s | Program file - Done programming
[error] [ Client] - Encountered error -160: Command verify_file executed for 274 milliseconds with result -160
[error] [ nRF53] - Failed while performing 'Verify' operation on target address 0x01000000.
-160: Data does not match in address range [0x01000000 - 0x01005B79] (Network Flash)
Expected byte value 0xA0 but read 0x00 at address 0x01000000.
[error] [ nRF53] - Failed while verifying device. -160: Data does not match in address range [0x01000000 - 0x01005B79] (Network Flash)
Expected byte value 0xA0 but read 0x00 at address 0x01000000.
[error] [ Worker] - Data does not match in address range [0x01000000 - 0x01005B79] (Network Flash)
Expected byte value 0xA0 but read 0x00 at address 0x01000000.
ERROR: Write verify failed.
NOTE: For additional output, try running again with logging enabled (--log).
NOTE: Any generated log error messages will be displayed.
Thanks for your feedback