> ## Documentation Index
> Fetch the complete documentation index at: https://docs.parallaxprotocol.org/llms.txt
> Use this file to discover all available pages before exploring further.

# Hardware wallets in Parallax Wallet

> Use a Ledger or a Trezor with Parallax Wallet: its keys stay on the device, which confirms every send on its own screen.

[Parallax Wallet](../client/desktop), the desktop app, works with **Ledger**
and **Trezor** hardware wallets. The device keeps the keys: the app only
knows the accounts' addresses, and every transaction or message from them
is checked and confirmed on the device's own screen before it's signed.
Even a compromised computer can't send from them without you.

***

## What you need

* **A Ledger** (Nano S Plus, Nano X, Stax, Flex or Nano Gen5) with the
  **Ethereum** app installed from Ledger Live, or **a Trezor** (Model One,
  Model T, Safe 3 or Safe 5), set up and with its firmware up to date.
* **Parallax Wallet** with its node, connected to the computer by USB.
* Close **Ledger Live** or **Trezor Suite** while you use the device with
  Parallax Wallet: only one app can talk to it at a time.

<Note>
  There's no Parallax app to install on the device. Parallax accounts use the
  same paths as Ethereum's (coin type 60) and are signed by the device's
  Ethereum app for Parallax's own chain ID, 2110, so a signature for one
  network can never be replayed on the other. The device may not know
  Parallax by name: it can show the amount as ETH and the network as chain
  2110\. It's LAX on Parallax, as the app shows.
</Note>

### On Linux: USB access

Linux gives a USB device to the user at the computer only once a rule
allows it, which Ledger's and Trezor's own apps install and an AppImage
can't. If the app says it **can't open your device**, choose **Set up USB
access** where it says so: it installs the rules for Ledger and Trezor
devices, asking for an administrator's password. Then unplug the device and
plug it in again. macOS and Windows need nothing.

***

## Add your accounts

<Steps>
  <Step title="Connect the device">
    Plug in your Ledger or Trezor and unlock it. On a Ledger, open the
    **Ethereum** app.
  </Step>

  <Step title="Start the import">
    Open **Settings → Accounts → Import accounts → Connect a hardware
    wallet**. The app shows how the device stands until it's ready:

    * **Ledger:** unlock it, then open the Ethereum app, as it asks.
    * **Trezor Model T, Safe 3, Safe 5:** enter the PIN, and your passphrase
      if you use one, on the device's screen.
    * **Trezor Model One:** the device shows its digits shuffled on a grid;
      press the same places on the blank grid in the app. If it asks for a
      passphrase, type it in the app (leave it empty for the wallet without
      one).

    Once it's ready, choose **Continue**.
  </Step>

  <Step title="Pick the accounts">
    The app reads the device's accounts, with what each holds on Parallax,
    and selects those that have been used. Choose the ones to add, then
    **Add accounts**. More load on demand, and you can look along other
    paths (see below).
  </Step>
</Steps>

The accounts are added to the wallet, each named **Account N** as other
accounts are, and you can rename them. Nothing secret is kept: the app
stores each account's address and where it is on the device.

### Derivation paths

Wallets put a device's accounts along different paths. The app can look
along the three in use:

| Path | Where | Used by |
| - | - | - |
| **Ledger Live** | `m/44'/60'/n'/0/0` | Ledger Live, and MetaMask with a Ledger. The app looks here first on a Ledger. |
| **Standard** | `m/44'/60'/0'/0/n` | Trezor Suite, MetaMask and most wallets. The app looks here first on a Trezor. |
| **Legacy** | `m/44'/60'/0'/n` | Ledger's old Chrome app, and MyEtherWallet's older versions |

Account 0 is the same address on Ledger Live's path and the standard one,
so it's offered once. If you've used your device's accounts on Ethereum
with Ledger Live or MetaMask, the same addresses are yours on Parallax.

***

## Hardware wallets in Settings

**Settings → Accounts** gathers your accounts under **Hardware wallets**,
one group per wallet your devices hold:

* **Named as you like.** Each starts as **Hardware Wallet 1**, **Hardware
  Wallet 2** and so on, with a **Ledger** or **Trezor** badge. Point at its
  heading and choose the pencil to rename it.
* **Told apart by the wallet, not the device.** A wallet is its recovery
  phrase: two devices restored from the same phrase hold the same wallet,
  and either signs for its accounts. On a Trezor, each passphrase opens a
  wallet of its own, so each has its own group.
* **Find accounts** adds more of a wallet's accounts. It reads them from a
  connected device that holds that wallet, and says so if the one plugged
  in holds another.
* **By path.** Where a wallet's accounts are on more than one path, they're
  listed under **Ledger Live**, **Standard** and **Legacy**, numbered along
  each.

The account switcher lists them under its **Hardware** tab.

<Note>
  Accounts added with an earlier version of the app are first listed under
  the kind of device alone ("Ledger"). The next time you connect and unlock
  that device, the app sorts them into their wallet's group.
</Note>

***

## Send and sign

Sending from a hardware wallet account is the same as from any other, with
no password: the device confirms instead.

1. Fill in **Send** and review it, as usual. While the device isn't ready,
   the review says what it needs (connect it, unlock it, open the Ethereum
   app).
2. Choose **Sign on Ledger** (or **Trezor**). The device shows the
   transaction.
3. **Check it on the device**: the recipient's address, the amount and the
   fee must match the review. Then approve it there. To cancel, reject it
   on the device.

The same goes for **speeding up or cancelling** a waiting transaction, and
for **signing a message** under **Messages**: the device shows the message
to check before you approve it.

### Check your address on the device

On **Receive**, a hardware wallet account has **Verify on Ledger** (or
**Trezor**). The device shows the account's address: compare it with the
one in the app before you share it. What a computer shows can be tampered
with; what the device shows can't.

### AI assistants

An [AI assistant](../ai/parallax-wallet) can ask to send from a hardware
wallet account. You review the request in the app, then confirm it on the
device: no password is involved. If the device isn't ready, the request
waits for you to connect it and approve it again.

***

## Remove an account

Removing a hardware wallet account from the app needs no password: its key
stays on the device, and you can add it again any time with **Find
accounts**. A wallet's group goes with its last account.

***

## Keep it safe

* **Your device's recovery phrase is the backup.** The app keeps no copy of
  any hardware wallet key. Lose the device and you restore its accounts from
  its recovery phrase, on a new device or any wallet.
* **Confirm only what you meant.** Check every transaction on the device's
  screen, not only on the computer's.
* **Keep the firmware and the Ethereum app up to date**, from Ledger Live or
  Trezor Suite.

***

## Troubleshooting

| Problem | What to do |
| - | - |
| The app doesn't see the device | Use a data cable (not a charge-only one), unlock the device, and close Ledger Live or Trezor Suite. On Linux, set up USB access (above). |
| "Open the Ethereum app" | On the Ledger, open the Ethereum app. If it isn't there, install it from Ledger Live's My Ledger. |
| "Can't open your device" | Another app has it: close Ledger Live, Trezor Suite or a browser wallet using it, then unplug it and plug it in again. On Linux, choose **Set up USB access**. |
| "The device connected doesn't hold this account" | It's another wallet: another device, or on a Trezor, another passphrase. Connect the one that holds it. |
| "It was turned down on the device" | You rejected it on the device. Start again to send it. |
| "Wrong PIN" on a Trezor One | Enter it again on the grid: the device shuffles its digits after each try. |
| The device is busy | It's waiting for you to confirm or reject something on its screen. Answer it there first. |
| "Allow blind signing" | Only for contract data, which the app doesn't send. Update the Ethereum app on the Ledger. |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.