This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

DK boards (nrf52832DK and nrf52840DK) fail to load JLINK driver

I tried to install the latest nRF Connect (3.1.0) on my Windows 7 dev machine and it did something to wipe out my USB setup (froze up during install of JLINK). So I had to use the latest System Restore Point to get my USB keyboard, mouse, etc to work.

But now my Nordic DK boards won't load.  When I plug them in the USB, I see a "Port" show up, but the "JLINK" part of the driver doesn't show up in the "Universal Serial Bus controllers" section any more.

On this same computer, I can use my standalone J-Link debugger (the expensive kind), and I can even use it to debug my DK boards (in a limited fashion, since I was using the built-in debugger for comms too, and that's all messed up now).

These same DK boards are visible and work on a different Widows 10 laptop and Macbook (i.e. I can 'nrfjprog -f NRF52 --reset', --halt, --run and all those work).  So the DK boards seem ok.  I tried forcing a reload of the DK jlink firmware and that doesn't make it work on the win7 box.

Absent other good ideas to try (which are welcome), is there a way to force the complete removal of JLINK drivers from the USB subsystem of this windows 7 machine and reinstall from scratch?  I've tried uninstalling JLINK itself from the programs and features" control panel (even going so far as choosing a few different versions of jlink to try) and it still doesn't work.

Edit: on the same Win7 machine, in a Mint Linux VM, the nrfjprog + jlink tools work like they are supposed to.  It's only trying to use them on the Win7 host that doesn't seem to work

Parents
  • Hi,

    Have you tried also to (uninstall and) install nRF Command Line Tools? In addition to the SEGGER J-Link Software and documentation pack, it contains tools such as the nrfjprog executable and the nrfjprog DLL.

    Regards,
    Terje

  • New information: I have several nRF DK '32 boards and two '40 boards.

    The two '32 boards that I had successfully connected to the win7 host prior to bricking it with the nrfconnect install STILL SEEM TO WORK.  that is, those two still enumerate and show up as ids that nrfjprog sees and issues commands to.

    The other '32 boards and the '40 boards (that were not connected previously to this machine) do not work.  Yet they all work in the linux VM or on a different windows 10 and mac machine.

    Is this relevant?

    When I plug in the working '32 board, the device driver properties show in the "Universal Bus Serial controllers" section as "J-Link driver" with the Hardware Ids as:
    USB\VID_1366&PID_1015&REV_0100&MI_02
    USB\VID_1366&PID_1015&MI_02

    This is the same on the windows 10 machine as well

    When I plug in a non-working '32 board, I get only a COM16 (badged as no driver) in "Other devices" whose Hardware Ids show as:

    USB\VID_1366&PID_1015&REV_0100

    USB\VID_1366&PID_1015

    When I plug this same board into the windows 10 machine, the IDs show up as before
     "Universal Bus Serial controllers" section as "J-Link driver" with the Hardware Ids as:
    USB\VID_1366&PID_1015&REV_0100&MI_02
    USB\VID_1366&PID_1015&MI_02

    I've also tried using the jlink configurator to reprogram the firmware from the windows 10 machine and reset the user data, nothing seems to help.

  • Hi,

    On the non-working boards, can you try, from Device Manager, to right click to get right-click menu, then "Update Driver Software..."? (Or, in the case of no driver, probably something like "Install Driver" or similar.)

    Regarding the nature of the issue, what happens when the board is connected to the computer and you try the command "nrfjprog --recover"? (I.e. what is the error message printed by nrfjprog, and is there anything else happening? "ERROR: There is no debugger connected to the PC"?)

    What is the output from "nrfjprog --version"?

    Regards,
    Terje

  • Yes, on the non-working boards I've tried the "update driver sw" and pointed it to the USBDriver folder in the JLink installation.  Doesn't seem to recognize it as a compatible driver.

    when the board is connected and issue the recover command I get the ERROR: There is no debugger ... message like you posted.

    nrfjprog version: 10.3.0
    JLinkARM.dll version: 6.50a

    I have also tried with JLinkARM.dll version 6.44e and it does the same thing. That's the version that NRFConnect tried to install.

  • Hi,

    As some boards work and others do not, this is extremely unlikely to have anything to do with the particular J-Link. Also the fact that boards work on other computers, just not this one computer where something seems to be wrong with the drivers...

    Can you check in "J-Link Configurator" what Emulator Firmware is found on both the working and non-working boards? (On a different computer, that is.) Should be a date and time, e.g. "2019 Jan 7 14:07".

    I have found that when installing a newer version of the J-Link drivers, Windows 7 needs to install drivers again when I connect boards that are previously used with the same computer. Did you get any indication of such activity, and/or any message such driver installation failed?

    Regards,
    Terje

  • When I used the J-Link configurator on a working machine I verified that my boards have the latest firmware (jan 7 2019).

    I was finally able to get it to work, but I am not sure which of these steps was the solution:

    1. I did another system restore to a previous date about a week earlier than the one I did before
    2. Plugged in one of the nRF52 boards.  Failed driver.
    3. Copied the inf file into the Windows\inf folder (a potential solution from a thread on segger: 

      https://forum.segger.com/index.php/Thread/3918-SOLVED-J-Link-driver-issue/

    4. Re-enumerated.  Failure.
    5. Right-clicked on the failed load in the device manager and tried to update the driver.  I pointed it to the JLink 6.34b\USBDriver folder and it seemed to recognize that it is a valid driver (which is new—before this system restore, pointing it at 6.44e didn’t work, but this earlier system restore left me with more JLink drivers to choose from, so I picked the next older one that I had before 6.44: 6.34b).  But updating it didn’t cause it to load correctly
    6. Right-clicked on the failed load in the device manager and Uninstalled the driver (while keeping the device plugged in and turned on).  I also told Windows to “remove the files” after it uninstalled. It uninstalled, then immediately self-installed the 6.34 version of the driver
    7. It worked for a few minutes…I was able to enumerate and see all the components of the driver for all of the boards, and I was able to use Nordic’s command line tools to connect through the segger-ob processor to halt, run, and reset the board
    8. Then the driver hung the machine on an enumeration, again…kinda like what seemed to happen the first time.
    9. I waited a long time, and had to power off the machine
    10. Had to wait over night to let the RAID boot drive do its sanity check
    11. This morning, so far, the driver still loads.  I have two nRF52840 boards and one nRF52832 board attached at the same time, and the command line tools seem to be working.

    I'll let you know if this situation seems stable, or if the problem returns.

  • Hi,

    I am happy to hear that it seems to be working now!

    If you experience new difficulties with getting the boards to work, there is a list of checks for common problems in the thread My nRF52/nRF51 DK kit doesn't work. If none of that works it is probably a deeper fault, comparable to what you got after system recovery.

    Regards,
    Terje

Reply Children
No Data
Related