Fix connection issues

In some cases users may encounter connection issues when trying to connect their Ledger Nano S or Ledger Blue device. If this occurs, try the following solutions one by one:

  1. Close other applications (Ledger apps, crypto wallets, Geth, Parity, Mist, Bitcoin Core, etc).
  2. Turn OFF VPN and anti-virus.
  3. Change the USB cable if possible
  4. Try different USB ports.
  5. Restart your computer.
  6. Try another computer.

If the problem persists, please select your system below.

Windows
  • Update USB input device drivers
    1. Open Devices and Printers from Control Panel.
    2. Double-click Nano S and open the Hardware tab.
    3. Select USB Input Device and click Properties.
    4. Click Change Settings.
    5. Click the Driver tab.
    6. Click Update driver and select automatic driver selection.
    7. Repeat this for both USB Input Devices.

  • If it still does not work, please try on a Mac to verify that your Ledger Nano S is working properly.
Mac

If you're having connection issues on a Mac, you can try giving Ledger Live full disk access:

  1. Open System Preferences.
  2. Go to Security & Privacy.
  3. In the Privacy tab, add Ledger Live to the Full Disk Access list.
Linux

On Linux you need to create a set of udev rules to allow device access. Refer to the Chrome USB API documentation for details. Please follow the instructions below.

1. Setup

  • Check if the plugdev group exists by entering the command:
    cat /etc/group | grep plugdev
  • Follow the steps below if the previous command did not return a result
    1. Create the plugdev group:
      sudo groupadd plugdev
    2. Check if you are in the group plugdev with the command:
      groups
    3. If the output does not contain plugdev, you are not in the plugdev group. Enter the command:

      sudo gpasswd -a <user> plugdev

      Note: replace <user> by your username, e.g for user "mike", it would be: sudo gpasswd -a mike plugdev.

    4. Logout and login for the change to take effect. To verify you are now in the plugdev group, enter:

      groups
      and search for a plugdev occurrence. If it's not there, you've missed a step and should restart from step 1.

2. Add the udev rules

  1. Enter the following command to automatically add the rules and reload udev:
    wget -q -O - https://raw.githubusercontent.com/LedgerHQ/udev-rules/master/add_udev_rules.sh | sudo bash
  2. Retry connecting your Ledger Nano S with Ledger Live.

    If it's still not working, continue to step 3: troubleshooting.

3. Troubleshooting

Try each of the following three options. 

  • Option 1
    Edit the file /etc/udev/rules.d/20-hw1.rules file by adding the OWNER="<user>" parameter to each line, where <user> is your Linux user name.
    Then reload the rules as follows:
    udevadm trigger
    udevadm control --reload-rules
    Retry the connection with Ledger Live. If it does not work, try the next option.
  • Option 2
    Edit the /etc/udev/rules.d/20-hw1.rules file and add the following lines:
    KERNEL=="hidraw*", SUBSYSTEM=="hidraw", MODE="0660", GROUP="plugdev", ATTRS{idVendor}=="2c97"
    KERNEL=="hidraw*", SUBSYSTEM=="hidraw", MODE="0660", GROUP="plugdev", ATTRS{idVendor}=="2581"
    Then reload the rules:
    udevadm trigger
    udevadm control --reload-rules
    Retry connecting with Ledger Live. If it does not work yet, try the last option.
  • Option 3
    If you are on Arch Linux, you can try the following rules:
    /etc/udev/rules.d/20-hw1.rules
    SUBSYSTEMS=="usb", ATTRS{idVendor}=="2581", ATTRS{idProduct}=="1b7c", MODE="0660", TAG+="uaccess", TAG+="udev-acl"
    SUBSYSTEMS=="usb", ATTRS{idVendor}=="2581", ATTRS{idProduct}=="2b7c", MODE="0660", TAG+="uaccess", TAG+="udev-acl"
    SUBSYSTEMS=="usb", ATTRS{idVendor}=="2581", ATTRS{idProduct}=="3b7c", MODE="0660", TAG+="uaccess", TAG+="udev-acl"
    SUBSYSTEMS=="usb", ATTRS{idVendor}=="2581", ATTRS{idProduct}=="4b7c", MODE="0660", TAG+="uaccess", TAG+="udev-acl"
    SUBSYSTEMS=="usb", ATTRS{idVendor}=="2581", ATTRS{idProduct}=="1807", MODE="0660", TAG+="uaccess", TAG+="udev-acl"
    SUBSYSTEMS=="usb", ATTRS{idVendor}=="2581", ATTRS{idProduct}=="1808", MODE="0660", TAG+="uaccess", TAG+="udev-acl"
    SUBSYSTEMS=="usb", ATTRS{idVendor}=="2c97", ATTRS{idProduct}=="0000", MODE="0660", TAG+="uaccess", TAG+="udev-acl"
    SUBSYSTEMS=="usb", ATTRS{idVendor}=="2c97", ATTRS{idProduct}=="0001", MODE="0660", TAG+="uaccess", TAG+="udev-acl”
    SUBSYSTEMS=="usb", ATTRS{idVendor}=="2c97", ATTRS{idProduct}=="0004", MODE="0660", TAG+="uaccess", TAG+="udev-acl"
  • Then reload the rules again and retry the connection with Ledger Live:
    udevadm trigger
    udevadm control --reload-rules

    Still not working after following all the steps correctly? Please contact Ledger Support.
Was this article helpful?
444 out of 1891 found this helpful