nRF Connect Programmer unknown_family, No devices with requested serial number(s) or trait(s) found

Intro
We are using the nRF9160 with sensors we manufacture. The code developed is based on the serial SLM sample, toolchain v1.6.0. I am trying to keep the code/project files the same.
nRF Connect v5.0.2
Programmer v4.4.2
Tool Chain v1.6.0
Windows 10 Pro workstation.
Visual Code IDE.

Problem Source:
I opened nRF desktop on my development station and when prompted to "upgrade" I made the mistake of clicking YES. The upgrade was from v5.0.2 to the latest. New Segger software was installed and since then I cannot program any of our nRF9160 products. The nRF Programmer reads the device and shows "unknown_family". On occasion it will read Device version NRF9160_xxAA_REV2. Trying to program, erase or reset the device, will cause the error message below.

Error Message
With the new version I got "Error: Failed with exit code 1. No devices with requested serial number(s) or trait(s) found.".

Second PC
The update changed the firmware in the J-Link. I tried using the J-Link on a production PC and got the same error.

Attempted Fixes over 2 days:
1. I uninstalled all Segger and nRF software
2. Installed nRF Connect version v5.0.2.
3. rebooted.
4. replaced the firmware in the segger J-Link, using JLinkConfig.exe. The J-Link now works on a second station, but not on my PC.
5. repeated step 1, 3 above, removed all nRF drivers using pnputil.exe -f -d oemX.inf
6. Repeat step 5, using different Segger software versions.

 

Output from Programmer (when it read the device family)

10:19:52.603 Initialising the bundled nrfutil device
10:19:54.672 Using the bundled core version for nrfutil device: 8.1.0
10:19:55.277 Using nrfutil-device version: 2.6.4
10:19:55.277 Using nrf-device-lib version: 0.17.35
10:19:55.277 Using nrfjprog DLL version: 10.24.2
10:19:55.277 Using JLink version: JLink_V7.94e
10:19:55.278 Installed JLink version does not match the expected version (JLink_V7.94i)
10:20:19.996 Getting serial port options from the persistent store for 000602004511.pc-nrfconnect-programmer
10:20:23.474 Selecting device with the serial number 000602004511
10:20:25.607 Selected device with the serial number 000602004511
10:20:25.608 Using nrfutil device to communicate with target via JLink
10:20:25.608 JLink OB firmware version J-Link V12 compiled Feb 20 2025 16:24:27
10:20:25.608 Device family
10:20:25.608 Device version NRF9160_xxAA_REV2
10:20:25.608 Board version
10:20:27.505 Reading readback protection status for Application core
10:20:27.506 Reading readback protection status for Application core 0%
10:20:27.511 Reading readback protection status for Application core 100%
10:20:27.513 Application core protection status 'NRFDL_PROTECTION_STATUS_NONE'
10:20:27.513 Reading readback protection status for Application core completed
10:20:29.841 Loading core information for Application core
10:20:29.842 Loading core information for Application core 0%
10:20:29.858 Loading core information for Application core 100%
10:20:29.859 Loading core information for Application core completed
10:20:32.084 Reading readback protection status for Application core
10:20:32.085 Reading readback protection status for Application core 0%
10:20:32.088 Reading readback protection status for Application core 100%
10:20:32.088 Application core protection status 'NRFDL_PROTECTION_STATUS_NONE'
10:20:32.089 Reading readback protection status for Application core completed
10:20:32.420 Device is loaded and ready for further operation
10:20:38.446 Update files regions according to Application core
10:20:38.446 Parse memory regions for file
10:20:38.449 Checking ZIP file: H:\nrf\_modem_firmware_9160\mfw_nrf9160_1.3.5.zip
10:20:38.467 File was last modified at 10/26/2023, 10:31:30 PM
10:20:52.547 Update files regions according to Application core
10:20:52.548 Parse memory regions for file
10:21:14.641 Modem DFU starts to write...
10:21:14.641 Writing H:\nrf\_modem_firmware_9160\mfw_nrf9160_1.3.5.zip to device 000602004511
10:21:23.489 Modem DFU failed with error: Error: Failed with exit code 1. No devices with requested serial number(s) or trait(s) found.

  • Hello,

    Just to make sure, what version of nRF Connect for Desktop and Programmer are you currently using (that you updated to)?

    Can you confirm that you are seeing this issue on nRF Connect for Desktop v5.2.0 and Programmer v4.6.2?

    I tried programming using an external debugger on an nRF52840, but if you can confirm that the issue persists on these versions, then programming the nRF91's modem behaves differently than programming an nRF52 series device. 

    Best regards,

    Edvin

  • For debugging purposes, can you try to update the firmware using nrfutil directly?

    nrfutil device program --firmware <modem_fw>.zip --serial-number 602004511

  • Sorry for the delay getting back. The project is very time sensitive. I purchased a new Segger J-Link and everything works on my development PC. The old J-link works on a different on a station. I don't have time to try to figure out why.

  • The problem came back with the new Segger J-Link.

    I noticed my antivirus claimed nrfutil.exe had trojan and removed the file. I am guessing these were false positives. So I do not have nrfutil.exe

    I used nrfjprog.exe  --program H:\nrf\mfw_nrf9160_1.3.5.zip --verify --reset

    This works sometimes.

    nrfjprog.exe --program H:\nrf\mfw_nrf9160_1.3.5.zip --verify --reset
    [ #################### ] 0.000s | Finding image components - Finished
    [ #################### ] 0.120s | Upload segments - segment 2 of 2
    [ #################### ] 27.965s | Uploading modem image - segment 2 of 2
    [ #################### ] 0.000s | Finding image components - Finished
    [ #################### ] 0.549s | Verify modem image - Modem ready for verification
    [ #################### ] 0.294s | Verify segment 327680-2326527 - Successfully verified
    [ #################### ] 0.361s | Verifying modem - Verifying memory range 3 of 3
    [ #################### ] 0.329s | Verify segment 2605056-2621439 - Successfully verified
    Applying system reset.
    Run.

    Sometimes it doesn't. 

    [ #################### ] 0.000s | Finding image components - Finished
    [error] [SeggerBackend] - JLinkARM.dll WriteU32 returned error -1.w.
    [error] [SeggerBackend] - JLinkARM.dll WriteU32 returned error -1.
    [error] [SeggerBackend] - JLinkARM.dll WriteU32 returned error -1.
    [error] [SeggerBackend] - JLinkARM.dll WriteU32 returned error -1.
    [error] [SeggerBackend] - JLinkARM.dll WriteU32 returned error -1.
    [error] [ nRF91] - Memory access failed with SECUREFAULT at 1342189832.
    [error] [ nRF91] - The write access failed due to memory protection.
    [error] [ nRF91] - Failed to initialize modem
    [error] [ nRF91] - Failed while programming package H:\nrf\mfw_nrf9160_1.3.5.zip.
    ERROR: Access to the selected address is blocked by the SPU.
    NOTE: For additional output, try running again with logging enabled (--log).
    NOTE: Any generated log error messages will be displayed.

    This is frustrating because I don't know why some boards do not program.

    I can read the registers but not program.:

    nrfjprog.exe --readregs
    R0: 0x00000000
    R1: 0x00000000
    R2: 0x00000000
    R3: 0x00000000
    R4: 0x00000000
    R5: 0x00000000
    R6: 0x00000000
    R7: 0x00000000
    R8: 0xFFFFFFFB
    R9: 0xFFFFFFFD
    R10: 0xFFFFFFFF
    R11: 0xFFEFFFFF
    R12: 0xFFFFEFFF
    SP: 0xFFFFFFD8
    LR: 0xFFFFFFF9
    PC: 0xEFFFFFFE
    xPSR: 0xF9000003
    MSP: 0xFFFFFFD8
    PSP: 0x00000000
    RAZ: 0x00000000
    CFBP: 0x00000000
    APSR: 0xF8000000
    EPSR: 0x01000000
    IPSR: 0x00000003
    MSP_NS: 0x00000000
    PSP_NS: 0xFFFFFFFC
    MSP_S: 0xFFFFFFD8
    PSP_S: 0x00000000
    MSPLIM_S: 0x00000000
    PSPLIM_S: 0x00000000
    MSPLIM_NS: 0x00000000
    PSPLIM_NS: 0x00000000
    CFBP_S: 0x00000000
    CFBP_NS: 0x00000000
    MSPLIM: 0x00000000
    PSPLIM: 0x00000000

  • Whenever you see this:

    wblight said:
    [error] [ nRF91] - The write access failed due to memory protection.

    It is likely due to APPROTECT. Try to run nrfjprog --recover first. Alternatively, use:

    nrfjprog.exe --program H:\nrf\mfw_nrf9160_1.3.5.zip --verify --reset --recover

    That said, I recommend that you investigate getting nrfutil to run properly, as this is the default tool used in NCS from now on. If it is a company firewall, perhaps you can ask if they can allow nrfutil to run.

    Best regards,

    Edvin

Related