Description
System information
OS & Version: Linux and macOS
Commit hash : c8be0f9
Expected behaviour
I expect the following code to print out wallets when my Trezor is attached (and working with Trezor Suite):
hub, err := usbwallet.NewTrezorHubWithWebUSB()
if err != nil {
panic(err)
}
for _, wallet := range hub.Wallets() {
fmt.Println(wallet)
}
Actual behaviour
No USB wallets found
.
Steps to reproduce the behaviour
I have spent a bunch of time trying to understand what's happening. As far as I can tell, on both macOS and Linux, when I connect my Trezor (I have tried both a Trezor Model One with the latest firmware and a Trezor Model T with the latest firmware), github.com/karalabe/hid does find a USB entry for the Trezor, but it is for Interface 1, not Interface 0. No matter what I do, on Linux and macOS, only the FIDO/U2F interface shows up. However, the Trezor Suite still works, of course.
So it might be a change to recent Trezor firmware builds? It doesn't appear to be OS specific (Linux and Mac both have this problem). It doesn't appear to be Trezor specific (two different models of Trezor have this problem). So I think we need to rework how Trezors talk to the usbwallet library? Perhaps they need to be initialized or something?