This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

nRF Connect Programmer cannot find JLink on Manjaro Linux

I'm running Manjaro Linux and have ran through the installation instructions for the nRF Connect Desktop. I have separately downloaded the Segger JLink software as instructed. I am on a platform where this is a tgz not a deb or apt file, and so I've unpacked it into a folder and set my PATH to this folder.

It appears that although I can manually run JLinkExe to connect to the device, that the nRF Connect Programmer cannot find JLink to enumerate the connected devices.

Here is the only error I'm getting:-

2022-04-13T05:52:41.234Z DEBUG Application data folder: /home/adam/.config/nrfconnect/pc-nrfconnect-programmer
2022-04-13T05:52:41.550Z DEBUG iface: enp4s0
2022-04-13T05:52:41.550Z DEBUG IP4: 192.168.99.206
2022-04-13T05:52:41.550Z DEBUG IP6: fe80::b225:aaff:fe27:30a8
2022-04-13T05:52:41.550Z DEBUG MAC: b0:25:aa:27:30:a8
2022-04-13T05:52:41.551Z DEBUG Client Id: 030a87f4f4aaf74a2e02903438ee191ffe06b98d
2022-04-13T05:52:41.552Z DEBUG Google Analytics for category pc-nrfconnect-programmer has initialized
2022-04-13T05:52:41.617Z ERROR Failed to get the library versions: JLINKARM_DLL_COULD_NOT_BE_OPENED (Origin: "Failed to get module versions.")
2022-04-13T05:52:41.667Z DEBUG App pc-nrfconnect-programmer v2.3.3 official
2022-04-13T05:52:41.667Z DEBUG App path: /home/adam/.nrfconnect-apps/node_modules/pc-nrfconnect-programmer
2022-04-13T05:52:41.667Z DEBUG nRFConnect 3.11.0, required by the app is (^3.10.0)
2022-04-13T05:52:41.667Z DEBUG nRFConnect path: /tmp/.mount_nrfconauCVtj/resources/app.asar
2022-04-13T05:52:41.667Z DEBUG HomeDir: /home/adam
2022-04-13T05:52:41.667Z DEBUG TmpDir: /tmp

I know the board and USB cable work fine as the programmer on MacOS sees it, and the JLinkExe on this Linux machine sees it - it's just the programmer that does not. I presume it's a path issue but the segger install instructions don't mention which folders to place the downloaded files in, and the Nordic docs don't mention anything about specifying a custom PATH.

Any help greatly appreciated. This will prevent me working on a customer PoC if I cannot fix it soon.

  • Hello Adam,

    I presume it's a path issue but the segger install instructions don't mention which folders to place the downloaded files in, and the Nordic docs don't mention anything about specifying a custom PATH.

    Referring to the nRF Command Line Tools file structure. Hence, the Segger JLink files have to be placed as shown below:

    [user@archuser ~]$ ls /opt/SEGGER/JLink/
    99-jlink.rules    JLinkGDBServer          JLinkRTTLoggerExe      libjlinkarm_x86.so.7
    Devices           JLinkGDBServerCLExe     JLinkRTTViewerExe      libjlinkarm_x86.so.7.58.2
    Doc               JLinkGDBServerExe       JLinkSTM32             libQtCore.so
    ETC               JLinkGUIServerExe       JLinkSTM32Exe          libQtCore.so.4
    Firmwares         JLinkLicenseManager     JLinkSWOViewer         libQtCore.so.4.8
    GDBServer         JLinkLicenseManagerExe  JLinkSWOViewerCLExe    libQtCore.so.4.8.7
    JFlashExe         JLinkRegistration       JLinkSWOViewerExe      libQtGui.so
    JFlashLiteExe     JLinkRegistrationExe    JMemExe                libQtGui.so.4
    JFlashSPI_CL      JLinkRemoteServer       JRunExe                libQtGui.so.4.8
    JFlashSPICLExe    JLinkRemoteServerCLExe  JTAGLoadExe            libQtGui.so.4.8.7
    JFlashSPIExe      JLinkRemoteServerExe    libjlinkarm.so         README.txt
    JLinkConfigExe    JLinkRTTClient          libjlinkarm.so.7       Samples
    JLinkDevices.xml  JLinkRTTClientExe       libjlinkarm.so.7.58.2  x86
    JLinkExe          JLinkRTTLogger          libjlinkarm_x86.so

    Regards,

    Markus

Related