I found the following problem with Programmer v2.0.1, using either a Nordic DK or a Segger J-Trace as the programming device (on Mac OS 11.6, and with nRF Connect 3.9.1):
With "Auto read memory" checked:
- Load hex file
- Erase & write
- Device resets after programming, but after reading the device appears to paused like it hit a breakpoint
- The target device (nRF52833) is still in a strange state even after closing the programming device, or exiting the Programmer altogether
- Only manually resetting or power cycling the target device will bring it back to life
The same thing happens if I simply open the programming device (Nordic DK or J-Trace) with the "Auto read memory" checked.
With "Auto read memory" unchecked and the Nordic DK used as a programmer:
- Programming works, the target chip is reset and it runs normally
- Strangely, the target memory appears to be read automatically after programming, even though "Auto read memory" is unchecked. The target memory map is updated. (Is this showing based on what was just programmed rather than from a manual read? This is new functionality, if so.)
- However, manual reads by pushing the Read button cause the processor to lock up in the same way as when "Auto read memory" is checked. Like above, the only way to recover is to cycle power, manually reset on the target board, or to reprogram with "Auto read memory" unchecked and make sure not to press the Read button.
This may be a separate issue, but the Reset button seems to always be disabled, so that isn't an option.
It appears there is something wrong with the reads initiated by the Read button, or by "Auto read memory".