spesmilo / electrum

Electrum Bitcoin Wallet
https://electrum.org
MIT License
7.45k stars 3.09k forks source link

Stuck with Electrum and Trezor one #5310

Open sandrokensan opened 5 years ago

sandrokensan commented 5 years ago

I have Electrum (the last version) in my linux box and it works very well. So I have buy Trezor one e set it: # pip3 install trezor[hidapi] the installation was ok, without any error message. The usb device was not detected so I add the 51 udev trezor rules in my /lib/udev. The usb devise is now detected correctly in Electrum.

I press the button next and a "waiting..." message is displayed for about 5-6 minutes, I kill -9 Electrum and restart the procedure. Now after the acknowledgement of Trezor device, Electrum display an error message: Failed to create a client for this device. Make sure it is in the correct state. I restart my pc and I obtain the same error message. So I stuck with Electrum and trezor.

sandrokensan commented 5 years ago

Electrum-3.3.4]$ ./run_electrum Traceback (most recent call last): File "/home/sandro/Electrum-3.3.4/electrum/base_wizard.py", line 283, in choose_hw_device include_failing_clients=True) File "/home/sandro/Electrum-3.3.4/electrum/plugin.py", line 510, in unpaired_device_infos raise Exception(message) Exception: Missing libraries for coldcard. Make sure you install it with python3 Traceback (most recent call last): File "/home/sandro/Electrum-3.3.4/electrum/base_wizard.py", line 283, in choose_hw_device include_failing_clients=True) File "/home/sandro/Electrum-3.3.4/electrum/plugin.py", line 510, in unpaired_device_infos raise Exception(message) Exception: Missing libraries for keepkey. Make sure you install it with python3 Traceback (most recent call last): File "/home/sandro/Electrum-3.3.4/electrum/base_wizard.py", line 283, in choose_hw_device include_failing_clients=True) File "/home/sandro/Electrum-3.3.4/electrum/plugin.py", line 510, in unpaired_device_infos raise Exception(message) Exception: Missing libraries for ledger. Make sure you install it with python3 Traceback (most recent call last): File "/home/sandro/Electrum-3.3.4/electrum/base_wizard.py", line 283, in choose_hw_device include_failing_clients=True) File "/home/sandro/Electrum-3.3.4/electrum/plugin.py", line 510, in unpaired_device_infos raise Exception(message) Exception: Missing libraries for safe_t. Make sure you install it with python3 Traceback (most recent call last): File "/home/sandro/Electrum-3.3.4/electrum/base_wizard.py", line 283, in choose_hw_device include_failing_clients=True) File "/home/sandro/Electrum-3.3.4/electrum/plugin.py", line 510, in unpaired_device_infos raise Exception(message) Exception: Missing libraries for coldcard. Make sure you install it with python3 Traceback (most recent call last): File "/home/sandro/Electrum-3.3.4/electrum/base_wizard.py", line 283, in choose_hw_device include_failing_clients=True) File "/home/sandro/Electrum-3.3.4/electrum/plugin.py", line 510, in unpaired_device_infos raise Exception(message) Exception: Missing libraries for keepkey. Make sure you install it with python3 Traceback (most recent call last): File "/home/sandro/Electrum-3.3.4/electrum/base_wizard.py", line 283, in choose_hw_device include_failing_clients=True) File "/home/sandro/Electrum-3.3.4/electrum/plugin.py", line 510, in unpaired_device_infos raise Exception(message) Exception: Missing libraries for ledger. Make sure you install it with python3 Traceback (most recent call last): File "/home/sandro/Electrum-3.3.4/electrum/base_wizard.py", line 283, in choose_hw_device include_failing_clients=True) File "/home/sandro/Electrum-3.3.4/electrum/plugin.py", line 510, in unpaired_device_infos raise Exception(message) Exception: Missing libraries for safe_t. Make sure you install it with python3 Traceback (most recent call last): File "/home/sandro/Electrum-3.3.4/electrum/base_wizard.py", line 322, in on_device self.plugin.setup_device(device_info, self, purpose) File "/home/sandro/Electrum-3.3.4/electrum/plugins/trezor/trezor.py", line 260, in setupdevice ('Make sure it is in the correct state.')) electrum.util.UserFacingException: Failed to create a client for this device. Make sure it is in the correct state.

Display the error message.

SomberNight commented 5 years ago

The usb devise is now detected correctly in Electrum. I press the button next and a "waiting..." message is displayed for about 5-6 minutes

Do you see a screen like below? Is that where you press the Next button?

elec_wizard_select_hw_wallet

What options do you have on this screen? Did you try all of them?

sandrokensan commented 5 years ago

Absolutely No. The device display the standard message that I seen in many Internet manual. This is the window: Screenshot_20190504_180804

(Trezor without name/Unknown)

SomberNight commented 5 years ago

Could you try upgrading the firmware on your Trezor? Do you know what version you have now?

sandrokensan commented 5 years ago

I have buy today the device from Amazon, so I suppose I have a recent firmware. By the way I have the box and the device. The device display the message "Visit trezor.io/start". This guide don't help me: https://wiki.trezor.io/index.php?title=User+manual%3AUpdating+the+Trezor+device+firmware&ModelType=1

Is there any bash script that can access the trezor device and that can get the version info? Can I hack the Electrum python code so I can print() in console the version of trezor firmware?

jhoenicke commented 5 years ago

A new Trezor is shipped without any firmware. You need to go to https://trezor.io/start and it will guide you through the firmware installation.

If you really prefer command line, you can download the latest firmware from https://github.com/trezor/webwallet-data/tree/master/firmware/1 and use trezorctl firmware-update -f trezor-*.bin to load the firmware.

And you get the firmware version and other info with trezorctl get-features

sandrokensan commented 5 years ago

Ty very much for the info. I don't know Trezor was empty. I have Mageia linux box and I have download from trezor.io the bridge.rpm. The sign of rpm was not correct so I override it and I have install the rpm. # urpmi trezor-bridge-2.0.26-1.x86_64.rpm all goes fine and a service (systemd) was created. I have installed the firmware by trezor.io and then I have choice Electrum.

Electrum acknowledge the Trezor hardware and propose me two way of access to Trezor: "bridge" and another choice. This second choice has issue and has a timeout: after insert the pin and ten seed word the device turn off and electrum show an error. I have try two times. The choice with the word "bridge" is ok and it doesn't have timeout.

But when I wipe my trezor and inserted the old seed the device turn off. So I repeated the procedure. I suppose the device has the old timeout regardless the wipe.