Ledger-live-desktop: [Ubuntu appImage] Device detected but connection failed. Please try again or contact us if the problem persists. (cannot open device with path /dev/hidraw4)

Created on 21 Apr 2020  ยท  3Comments  ยท  Source: LedgerHQ/ledger-live-desktop

Ledger Live Version and Operating System

  • Tested on Ledger Live 2.2.4
  • Platform and version: Ubuntu 19.10 (eoan)

Expected behavior

Synchronizing Ledger Live with my Ledger Nano S.

Actual behavior

Device detected but connection failed. Please try again or contact us if the problem persists.
image


==> I think it's a bug because I can synchronize my Ledger with Windows 10 without any problem <==

Steps to reproduce the behavior


I launch Ledger live (the .appImage), I connect my ledger nano s, I enter the pin, then I have the error
"Device detected but connection failed. Please try again or contact us if the problem persists."

I tried to clic "Repair" and I tried to remove my personnal config in ~/.config/Ledger\ Live but I'm still unable to synchronize..

I will let the full log below, there is a message : "cannot open device with path /dev/hidraw4" (sometime it's on /dev/hidraw6) so I assume this is a usb problem with Ubuntu, If you guys got an Idea about my problem ?


Here is the complete log I got :

{
   "type":"db",
   "level":"debug",
   "message":"๐Ÿ“  read app:user",
   "pname":"main",
   "timestamp":"2020-04-21T09:21:05.999Z"
},
{   "type":"cmd.ERROR",
   "data":{
      "name":"CantOpenDevice",
      "message":"cannot open device with path /dev/hidraw4",
      "stack":"Error\n    at new CustomError (/tmp/.mount_ledgercJMXHs/resources/app.asar/node_modules/@ledgerhq/errors/dist/index.cjs.js:18:22)\n    at /tmp/.mount_ledgercJMXHs/resources/app.asar/node_modules/@ledgerhq/live-common/lib/hw/deviceAccess.js:107:11"

},
   "level":"warn",
   "message":"โœ– CMD connectManager error",
   "pname":"internal",
   "timestamp":"2020-04-21T09:20:59.477Z"
},
{   "error":{
      "name":"CantOpenDevice",
      "message":"cannot open device with path /dev/hidraw4",
      "stack":"Error\n    at new CustomError (/tmp/.mount_ledgercJMXHs/resources/app.asar/node_modules/@ledgerhq/errors/dist/index.cjs.js:18:22)\n    at /tmp/.mount_ledgercJMXHs/resources/app.asar/node_modules/@ledgerhq/live-common/lib/hw/deviceAccess.js:107:11"

},
   "level":"warn",
   "message":"Command error:",
   "pname":"internal",
   "timestamp":"2020-04-21T09:20:59.476Z"
},
{
   "type":"hid-verbose",
   "message":"new HID transport",
   "level":"debug",
   "pname":"internal",
   "timestamp":"2020-04-21T09:20:59.468Z"
},
{
   "type":"promise-retry",
   "message":" failed. 1 retry remain. Error: cannot open device with path /dev/hidraw4",
   "level":"debug",
   "pname":"internal",
   "timestamp":"2020-04-21T09:20:58.443Z"
},
{
   "type":"hid-verbose",
   "message":"new HID transport",
   "level":"debug",
   "pname":"internal",
   "timestamp":"2020-04-21T09:20:58.442Z"
},
{
   "type":"promise-retry",
   "message":" failed. 2 retry remain. Error: cannot open device with path /dev/hidraw4",
   "level":"debug",
   "pname":"internal",
   "timestamp":"2020-04-21T09:20:57.760Z"
},
{
   "type":"hid-verbose",
   "message":"new HID transport",
   "level":"debug",
   "pname":"internal",
   "timestamp":"2020-04-21T09:20:57.760Z"
},
{
   "type":"promise-retry",
   "message":" failed. 3 retry remain. Error: cannot open device with path /dev/hidraw4",
   "level":"debug",
   "pname":"internal",
   "timestamp":"2020-04-21T09:20:57.308Z"
},
{
   "type":"hid-verbose",
   "message":"new HID transport",
   "level":"debug",
   "pname":"internal",
   "timestamp":"2020-04-21T09:20:57.308Z"
},
{
   "type":"promise-retry",
   "message":" failed. 4 retry remain. Error: cannot open device with path /dev/hidraw4",
   "level":"debug",
   "pname":"internal",
   "timestamp":"2020-04-21T09:20:57.003Z"
},
{
   "type":"hid-verbose",
   "message":"new HID transport",
   "level":"debug",
   "pname":"internal",
   "timestamp":"2020-04-21T09:20:57.001Z"
},
{   "type":"cmd.START",
   "data":{


},
   "level":"info",
   "message":"CMD connectManager.send()",
   "pname":"internal",
   "timestamp":"2020-04-21T09:20:56.996Z"
},
{   "type":"cmd.NEXT",
   "data":{      "type":"add",
      "descriptor":"",
      "deviceModel":{
         "id":"nanoS",
         "productName":"Ledger Nano S",
         "productIdMM":16,
         "legacyUsbProductId":1,
         "usbOnly":true,
         "memorySize":327680,
         "blockSize":4096

},
      "device":{
         "name":"Nano_S"

}

},
   "level":"info",
   "message":"โ— CMD listenDevices",
   "pname":"internal",
   "timestamp":"2020-04-21T09:20:55.903Z"
},
{
   "type":"usb-detection",
   "message":"add: productId=4113 locationId=0 deviceAddress=0",
   "level":"debug",
   "pname":"internal",
   "timestamp":"2020-04-21T09:20:54.901Z"
},
{
   "type":"db",
   "level":"debug",
   "message":"๐Ÿ“  write app:accounts",
   "pname":"main",
   "timestamp":"2020-04-21T09:20:21.671Z"
},
{
   "type":"db",
   "level":"debug",
   "message":"๐Ÿ“  read app:accounts",
   "pname":"main",
   "timestamp":"2020-04-21T09:20:20.594Z"
},
{
   "type":"db/crypto",
   "message":"decryptData. full data length = 33",
   "level":"debug",
   "pname":"main",
   "timestamp":"2020-04-21T09:20:20.030Z"
},
{
   "type":"db",
   "level":"debug",
   "message":"๐Ÿ“  read app:accounts",
   "pname":"main",
   "timestamp":"2020-04-21T09:20:20.028Z"
},
{
   "type":"db",
   "level":"debug",
   "message":"๐Ÿ“  read app:accounts",
   "pname":"main",
   "timestamp":"2020-04-21T09:20:20.026Z"
},
{
   "type":"libcore/access",
   "message":"flush end",
   "level":"debug",
   "pname":"internal",
   "timestamp":"2020-04-21T09:20:14.551Z"
},
{
   "type":"libcore/access",
   "message":"flush",
   "level":"debug",
   "pname":"internal",
   "timestamp":"2020-04-21T09:20:14.549Z"
},
{
   "type":"cmd.COMPLETE",
   "level":"info",
   "message":"โœ” CMD libcoreGetVersion finished in 26ms",
   "pname":"internal",
   "timestamp":"2020-04-21T09:20:13.549Z"
},
{   "type":"cmd.NEXT",
   "data":{
      "stringVersion":"3.3.0",
      "intVersion":197376

},
   "level":"info",
   "message":"โ— CMD libcoreGetVersion",
   "pname":"internal",
   "timestamp":"2020-04-21T09:20:13.547Z"
},
{
   "type":"cmd.START",
   "level":"info",
   "message":"CMD listenDevices.send()",
   "pname":"internal",
   "timestamp":"2020-04-21T09:20:13.530Z"
},
{
   "type":"libcore",
   "message":"using array of bytes = false",
   "level":"debug",
   "pname":"internal",
   "timestamp":"2020-04-21T09:20:13.526Z"
},
{
   "type":"libcore/access",
   "message":"load core impl",
   "level":"debug",
   "pname":"internal",
   "timestamp":"2020-04-21T09:20:13.524Z"
},
{
   "type":"cmd.START",
   "level":"info",
   "message":"CMD libcoreGetVersion.send()",
   "pname":"internal",
   "timestamp":"2020-04-21T09:20:13.524Z"
},
{
   "type":"init",
   "message":"hydrate currencies ",
   "level":"debug",
   "pname":"internal",
   "timestamp":"2020-04-21T09:20:13.523Z"
},
{
   "type":"internal",
   "message":"Internal process is up!",
   "level":"debug",
   "pname":"internal",
   "timestamp":"2020-04-21T09:20:13.520Z"
},
{
   "type":"db",
   "level":"debug",
   "message":"๐Ÿ“  write app:settings",
   "pname":"main",
   "timestamp":"2020-04-21T09:20:11.858Z"
},
{
   "type":"db",
   "level":"debug",
   "message":"๐Ÿ“  write windowParams:MainWindow.positions",
   "pname":"main",
   "timestamp":"2020-04-21T09:20:11.692Z"
},
{
   "level":"info",
   "message":"spawned internal process 946",
   "pname":"main",
   "timestamp":"2020-04-21T09:20:11.309Z"
},
{
   "level":"info",
   "message":"cleaning processes on demand",
   "pname":"main",
   "timestamp":"2020-04-21T09:20:11.298Z"
},
{
   "type":"db",
   "level":"debug",
   "message":"๐Ÿ“  read app:accounts",
   "pname":"main",
   "timestamp":"2020-04-21T09:20:10.950Z"
},
{
   "type":"db",
   "level":"debug",
   "message":"๐Ÿ“  read app:user",
   "pname":"main",
   "timestamp":"2020-04-21T09:20:10.947Z"
},
{
   "type":"db",
   "level":"debug",
   "message":"๐Ÿ“  read app:countervalues",
   "pname":"main",
   "timestamp":"2020-04-21T09:20:10.859Z"
},
{
   "type":"db",
   "level":"debug",
   "message":"๐Ÿ“  read app:user",
   "pname":"main",
   "timestamp":"2020-04-21T09:20:10.858Z"
},
{
   "type":"db",
   "level":"debug",
   "message":"๐Ÿ“  read app:settings",
   "pname":"main",
   "timestamp":"2020-04-21T09:20:10.822Z"
},
{
   "type":"system-info",
   "level":"info",
   "message":"System locale: fr-FR",
   "pname":"main",
   "timestamp":"2020-04-21T09:20:08.730Z"
},
{
   "type":"system-info",
   "level":"info",
   "message":"OS: Ubuntu Linux 19.10 (codename: eoan)",
   "pname":"main",
   "timestamp":"2020-04-21T09:20:08.730Z"
},
{
   "type":"system-info",
   "level":"info",
   "message":"Ledger Live version: 2.2.4",
   "pname":"main",
   "timestamp":"2020-04-21T09:20:08.730Z"
},
{
   "type":"db",
   "level":"debug",
   "message":"๐Ÿ“  read app:settings",
   "pname":"main",
   "timestamp":"2020-04-21T09:20:08.667Z"
},
{   "type":"db",
   "level":"debug",
   "message":"๐Ÿ“  read windowParams:MainWindow",
   "pname":"main",
   "timestamp":"2020-04-21T09:20:08.655Z"

Most helpful comment

I've managed to solve my problem. There was a problem with permissions :

Before

$ ll /dev/hidraw4
crw------- 1 root root 242, 4 avril 22 14:53 /dev/hidraw4

So, when I launched my Ledger app as a simple user I didn't have enought rights to open and manage this device.

I tried to launch Ledger Live app with sudo/root but there is a security protection :

$ sudo ./ledger-live-desktop-2.2.4-linux-x86_64.AppImage
[29334:0422/144804.342370:FATAL:electron_main_delegate.cc(211)] Running as root without --no-sandbox is not supported. See https://crbug.com/638180.

The solution

$ sudo chmod 666 /dev/hidraw4

And this "workaround" solves my problem. I don't know where this problem come from Ubuntu, Hidraw, or Ledger Live App...?

All 3 comments

I've managed to solve my problem. There was a problem with permissions :

Before

$ ll /dev/hidraw4
crw------- 1 root root 242, 4 avril 22 14:53 /dev/hidraw4

So, when I launched my Ledger app as a simple user I didn't have enought rights to open and manage this device.

I tried to launch Ledger Live app with sudo/root but there is a security protection :

$ sudo ./ledger-live-desktop-2.2.4-linux-x86_64.AppImage
[29334:0422/144804.342370:FATAL:electron_main_delegate.cc(211)] Running as root without --no-sandbox is not supported. See https://crbug.com/638180.

The solution

$ sudo chmod 666 /dev/hidraw4

And this "workaround" solves my problem. I don't know where this problem come from Ubuntu, Hidraw, or Ledger Live App...?

Solution above didn't work for me. But this support site from Ledger offers a fix: https://support.ledger.com/hc/en-us/articles/115005165269-Fix-connection-issues

$ wget -q -O - https://raw.githubusercontent.com/LedgerHQ/udev-rules/master/add_udev_rules.sh | sudo bash

Keep in mind if you fix the ledger issue by changing the permissions on /dev/hidraw* and you try to update the firmware, the update will not work until you give permissions to the new hidraw* device, otherwise the update will be stuck on the "updating" screen.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

Urgo picture Urgo  ยท  3Comments

staticfrost picture staticfrost  ยท  4Comments

pollastri-pierre picture pollastri-pierre  ยท  5Comments

MaTthyU picture MaTthyU  ยท  4Comments

BurnyBoi picture BurnyBoi  ยท  4Comments