Electrum: Electrum 3.0 crashes when signing transactions with Ledger

Created on 10 Nov 2017  路  12Comments  路  Source: spesmilo/electrum

For the first time, I used my ledger nano s to send BTC using electrum but after pressing confirm on the device, Electrum freezes and doesn't respond. I tried on both MacOs and Win7, with the same exact behaviour, both running v3.0.1. I encountered no problems when using the ledger wallet.

bug 馃悶 hw-ledger

Most helpful comment

I can reproduce this on Windows 10, using the official 3.0.2 binaries;
but not on Debian 9, where it works correctly.

The Confirm transaction on your Ledger device... window pops up, the Ledger Nano S gets notified and asks me to confirm, but Electrum does not react to whatever buttons on the Ledger I push, and just hangs.

ledger_electrum3_windows

Same for message signing.

All 12 comments

I'm using win10. And the same happens to me but when I decline a transaction.

it might stuck here clear_dialog, only on windows, it works fine on ubuntu.

Same behavior Win10-64, Electrum 3.0.2, Ledger Nano S, attempting to send from Ledger. Get prompted to sign on Ledger and then Electrum hangs, "not responding". If forcefully closed and then re-opened, the transaction does not show up in history.

I can reproduce this on Windows 10, using the official 3.0.2 binaries;
but not on Debian 9, where it works correctly.

The Confirm transaction on your Ledger device... window pops up, the Ledger Nano S gets notified and asks me to confirm, but Electrum does not react to whatever buttons on the Ledger I push, and just hangs.

ledger_electrum3_windows

Same for message signing.

As a workaround, if you close the popup window before pushing the buttons on the Ledger, it will work.

That workaround doesn't work for me with 3.0.2. My Ledger never acknowledges any activity from the wallet. If I close the popup, nothing happens. If it try again, I then get a read error msg. This Ledger works with Ledger wallet apps. Edit to add: I tried it with 3.0.1 and it did work.

I've also encountered this. Steps taken:

  • Create new wallet, choose standard -> with hardware
  • Change derivation path to m/49'/0'/0' for segwit
  • It connects and shows the history/balance/receive address etc correctly
  • Send transaction and confirm on the device
  • read error popup

@barryvdh
This should be fixed in 3.0.3. If you're on an older version, please update.

If you're already on 3.0.3, this might be a different bug...

  • Please describe "read error popup".
  • What OS are you using?

I'm using Windows 10, downloaded just a few hours ago.

It didn't say much more except read error and I think an empty array ([]) on the next line, not 100% sure. Will test with next transaction, but cost me a couple of euros every time I try (and it works).

FYI, it also didn't recognize the Segwit address, had to manually change the derivation path which is kind of scary still.

It didn't say much more except read error and I think an empty array ([]) on the next line

Ok, then that is a separate bug. Please open a new issue for it if it happens again, and reference this issue there. I will also try to reproduce.
If you have some time, you can also setup a testnet wallet, and try to reproduce there, to avoid paying btc fees.

FYI, it also didn't recognize the Segwit address, had to manually change the derivation path which is kind of scary still.

What do you mean by that?
When you create the wallet, you can choose a bip32 derivation path, and Electrum will only create addresses for that subtree. Some paths have special meaning, such as due to bip49, which is used to decide what type of scripts to create. The derivation path dialog is currently simply prefilled according to bip44, there is no magic guessing.

I just mean that it might be more helpful if it was explained what it does, or that you can choose a format in a dropdown (eg. classic -> bip44, segwit -> bip49 etc)

Was this page helpful?
0 / 5 - 0 ratings