Setup: Windows 11, Trezor Suite desktop 26.10.2, Trezor Safe 3 (FW 2.13.0), Eternl web app v2.2.0.13 (Chrome and Firefox)
Symptoms
- Eternl → Connect hardware wallet → Trezor → Export: Eternl shows “Please confirm the export of the public key on your Trezor” and spins forever.
- No request appears in Trezor Suite and nothing shows on the device. No error message anywhere.
- Without Suite running, Eternl says “Trezor Suite is not available”.
- Suite itself works normally (accounts, firmware update, etc.).
Cause
Eternl connects to Suite via ws://127.0.0.1:21335/connect-ws and waits only 3 seconds for the popup-handshake reply.
Before Suite replies to the handshake, it identifies the calling process. On Windows it runs:
netstat -ano | findstr :<port>
powershell -Command "(Get-Item (Get-Process -Id <pid>).Path).VersionInfo | ConvertTo-Json"
powershell -Command loads the user’s PowerShell profile. Mine contained a conda init hook (Miniconda), so every PowerShell start took ~5 s. The handshake always timed out on Eternl’s side, and the request never reached Suite or the device.
(Plain ws vs. wss, Chrome’s local network permission, firmware, USB, and ports were all fine.)
Quick check
Run this in cmd:
powershell -Command "1"
If it takes more than ~2 s, you are probably affected.
Fix (any one of these)
-
Remove or uninstall whatever makes your profile slow (conda init, oh-my-posh, fnm/nvm, heavy modules). Check
$PROFILEandDocuments\WindowsPowerShell\profile.ps1. -
Or skip those hooks for non-interactive calls by wrapping them in your profile like this:
$nonInteractive = [Environment]::GetCommandLineArgs() -match '^-(c|command|encodedcommand|noninteractive)$' if (-not $nonInteractive) { # conda / fnm / oh-my-posh ... }
After that, powershell -Command "1" took ~0.5 s. The request popped up in Suite immediately, I confirmed it on the device, and Eternl imported the accounts.
Suggestion for the Suite team
Calling PowerShell with -NoProfile (and ideally -NonInteractive) in the Windows process lookup of the connect-ws server would avoid this entirely. A user’s shell profile shouldn’t be able to break third-party wallet connections. A log or UI hint when the handshake or process lookup is slow would also help, because right now it fails completely silently.