pynrfprog v19.0 modem update

Hi,

As part of our end of line test for our product we are updating the modem to a more recent version. We are using the pynrfprog library for this.

Previously we were running v17.3 of the pynrfprog and noticed an issue where repetive programming sessions would cause the following error.

NrfApplication.py", line 165, in flash_application
api.write(segment.address, segment.data, True)
File "C:\Users\Spike\AppData\Local\Programs\Python\Python311\Lib\site-packages\pynrfjprog\LowLevel.py", line 879, in write
raise APIError(result, error_data=self.get_errors())
pynrfjprog.APIError.APIError: An error was reported by NRFJPROG DLL: -93 NOT_AVAILABLE_BECAUSE_TRUST_ZONE.

This would occur every other time (So it works correctly the first time, then would fail the next, then would work again etc.)

After updating to v19.0 it seemed to have fixed this issue but in the new software the modem updates no longer seem to work. We are using the following code: 

api = HighLevel.API()
api.open()
snr = api.get_connected_probes()
for s in snr:
    probe = HighLevel.IPCDFUProbe(api, s, HighLevel.CoProcessor.CP_MODEM)
    probe.program(".\provisioning-python-script\mfw_nrf9160_1.3.3.zip")
    probe.verify(".\provisioning-python-script\mfw_nrf9160_1.3.3.zip")
    probe.close()
    print("Done")
api.close()

This results in the following error:

probe.program(".\provisioning-python-script\mfw_nrf9160_1.3.3.zip")
File "C:\Users\Spike\AppData\Local\Programs\Python\Python311\Lib\site-packages\pynrfjprog\HighLevel.py", line 388, in program
raise APIError(result, error_data=self.get_errors(), log=self._logger.error)
pynrfjprog.APIError.APIError: An error was reported by NRFJPROG DLL: -220 TIME_OUT.
[Probes.51025440] [SeggerBackend] JLinkARM.dll reported "-261", "Could not find supported CPU.".
extra: [Probes.51025440] [SeggerBackend] JLinkARM.dll reported "-261", "Could not find supported CPU.".
extra: [Probes.51025440] [SeggerBackend] JLinkARM.dll reported "-261", "Could not find supported CPU.".
extra: [Probes.51025440] [SeggerBackend] JLinkARM.dll reported "-261", "Could not find supported CPU.".
extra: [Probes.51025440] [SeggerBackend] JLinkARM.dll reported "-261", "Could not find supported CPU.".
extra: [Probes.51025440] [DebugProbe] Failed while programming device.
extra: [HighLevel] Failed programming the device.
extra: [Probes.51025440] [nRF91] Timeout, operation used more than 10 sec
extra: [Probes.51025440] [nRF91] Failed in wait for ack
extra: [Probes.51025440] [nRF91] Failed while waiting for program operation to finish.
extra: [Probes.51025440] [nRF91] Failed to upload file
extra: [Probes.51025440] [nRF91] Failed while programming package .\provisioning-python-script\mfw_nrf9160_1.3.3.zip.

The exact same script works fine on version 17.3.

Is there anything changed in the latest version which could cause this problem?

Kind regards,

Sebastiaan

Related