I have been running Bitcoin Full Node 23.0.0 over Tor to do my part to contribute to the cause. I am using Windows 11 on a freshly formatted PC with the Bitcoin Core data on an external USB 3.0 SSD. Everything has been working fine with little stress on a 2 year old PC.
Recently I decided to configure a newly formatted Nano S hardware wallet with Electrum Wallet 4.3.2, connecting it to my Node via Electrum Personal Server 0.2.4. I connected the Nano to Electrum wallet successfully, displaying a fresh set of wallet addresses. I then copied the Master Public Key to use in the Electrum Personal Server (EPS) config.ini file, as well as other settings I've researched for that and bitcoin.conf (Bitcoin Core).
I ran EPS, connected to Bitcoin Core, and it imported the Nano S wallet from Electrum, which became the first Bitcoin Core wallet installed on the Core. Next I validated the wallet addresses visible in Electrum Wallet matched those on the Bitcoin Core. However, upon attempting to reconnect the Electrum Wallet to the EPS, I have no longer have a connection between them. I should note that it was recommended to launch Electrum so that it only connects to localhost on EPS server port 50002. "C:\Program Files (x86)\Electrum\electrum-4.3.2.exe" --oneserver --server localhost:50002:s
Without that modification, Electrum sees external servers that it can connect to, but not EPS on localhost:50002. With the modification, no external servers are available, but it doesn't connect, with localhost:50002 specified but greyed out. Here are the Electrum logfiles, which include the connection errors. I will also include the EPS and Bitcoin Node configurations below that:
20220929T223930.804107Z | INFO | simple_config.SimpleConfig | electrum directory C:\Users\xxxxx\AppData\Roaming\Electrum
20220929T223930.804107Z | INFO | logging | Electrum version: 4.3.2 - https://electrum.org - https://github.com/spesmilo/electrum
20220929T223930.877107Z | INFO | logging | Python version: 3.9.11 (tags/v3.9.11:2de452f, Mar 16 2022, 14:21:37) [MSC v.1929 32 bit (Intel)]. On platform: Windows-10-10.0.22000-SP0
20220929T223930.877107Z | INFO | logging | Logging to file: C:\Users\xxxxx\AppData\Roaming\Electrum\logs\electrum_log_20220929T223930Z_9564.log
20220929T223930.877107Z | INFO | logging | Log filters: verbosity '', verbosity_shortcuts ''
<SNIP>
20220929T223930.892730Z | INFO | plugin.Plugins | registering hardware ledger: ('hardware', 'ledger', 'Ledger wallet')
<SNIP>
20220929T223930.908756Z | DEBUG | util.profiler | Plugins.__init__ 0.0316 sec
20220929T223930.908756Z | INFO | network | blockchains
20220929T223930.908756Z | INFO | exchange_rate.FxThread | using exchange CoinGecko
20220929T223930.908756Z | INFO | network | starting network
20220929T223930.908756Z | DEBUG | util.profiler | Daemon.__init__ 0.0000 sec
20220929T223930.908756Z | INFO | daemon.Daemon | launching GUI: qt
20220929T223930.908756Z | INFO | network | setting proxy None
20220929T223930.908756Z | INFO | network | connecting to localhost:50002:s as new interface
20220929T223930.908756Z | INFO | interface.[localhost:50002] | looks like localhost: not using proxy for this server
20220929T223930.908756Z | INFO | daemon.Daemon | starting taskgroup.
20220929T223930.908756Z | INFO | network | starting taskgroup (0x48fef58).
20220929T223930.955627Z | INFO | daemon.CommandsServer | now running and listening. socktype=tcp, addr=('127.0.0.1', 59520)
20220929T223931.018508Z | INFO | gui.qt.history_list | could not import electrum.plot. This feature needs matplotlib to be installed.
20220929T223931.034140Z | INFO | gui.qt.ElectrumGui | Qt GUI starting up... Qt=5.15.2, PyQt=5.15.6
20220929T223931.238055Z | DEBUG | util.profiler | ElectrumGui.__init__ 0.2039 sec
20220929T223931.238055Z | INFO | storage.WalletStorage | wallet path c:\users\xxxx\appdata\roaming\electrum\wallets\nanos
20220929T223932.037424Z | INFO | storage.WalletStorage | wallet path c:\users\xxxx\appdata\roaming\electrum\wallets\nanos
20220929T223934.334555Z | INFO | plugin.Plugins | loaded bitbox02
20220929T223934.352507Z | INFO | plugin.Plugins | loaded coldcard
20220929T223934.367467Z | INFO | plugin.Plugins | loaded digitalbitbox
20220929T223934.380432Z | WARNING | jade | No module named 'electrum.plugins.jade.jadepy.jade_ble'
20220929T223934.380432Z | WARNING | jade | BLE scanning/connectivity will not be available
<SNIP>
20220929T223934.488145Z | INFO | plugin.Plugins | loaded ledger
<SNIP>
20220929T223934.633285Z | INFO | plugin.DeviceMgr | scanning devices...
20220929T223935.046650Z | INFO | interface.[localhost:50002] | disconnecting due to: ErrorGettingSSLCertFromServer(ConnectError(ConnectionRefusedError(22, 'The remote computer refused the network connection', None, 1225, None)))
20220929T223935.046650Z | INFO | network | couldn't launch iface localhost:50002:s -- CancelledError()
20220929T223935.156640Z | INFO | network | connecting to localhost:50002:s as new interface
20220929T223935.156640Z | INFO | interface.[localhost:50002] | looks like localhost: not using proxy for this server
20220929T223936.811255Z | DEBUG | util.profiler | DeviceMgr.scan_devices 2.1780 sec
20220929T223936.874686Z | INFO | plugin.DeviceMgr | Registering <electrum.plugins.ledger.ledger.Ledger_Client object at 0x0DAAC0A0>
20220929T223938.745822Z | INFO | plugin.DeviceMgr | scanning devices...
20220929T223938.905209Z | DEBUG | util.profiler | DeviceMgr.scan_devices 0.1594 sec
20220929T223939.218804Z | INFO | interface.[localhost:50002] | disconnecting due to: ErrorGettingSSLCertFromServer(ConnectError(ConnectionRefusedError(22, 'The remote computer refused the network connection', None, 1225, None)))
20220929T223939.218804Z | INFO | network | couldn't launch iface localhost:50002:s -- CancelledError()
Electrum Personal Server config.ini file
[master-public-keys]
nanos = zpub6qUwA3bFULrnxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxtbuh63R1SFyffzZky
#from electrum wallet connected to nano s
[bitcoin-rpc]
host = 127.0.0.1
port = 8332
#standard Bitcoin Core port and localhost ip
datadir = E:\Bitcoin
#external USB 3.0 SSD
rpc_user = example
rpc_password = hash
wallet_filename =
# empty means default file
poll_interval_listening = 30
poll_interval_connected = 5
gap_limit = 25
[electrum-server]
host = 127.0.0.1
port = 50002
#standard Electrum Personal Server (EPS) port and localhost ip
ip_whitelist = *
#SSL certificate
certfile = certs/cert.crt
keyfile = certs/cert.key
disable_mempool_fee_histogram = false
mempool_update_interval = 60
broadcast_method = tor-or-own-node
tor_host = 127.0.0.1
tor_port = 9150
#standard Tor port and localhost ip
append_log = false
log_format = %(levelname)s:%(asctime)s: %(message)s
BITCOIN.CONFIG file:
server=1
daemon=1
listen=1
txindex=1
onlynet=onion
proxy=127.0.0.1:9150
bind=127.0.0.1
walletbroadcast=0
rpcuser=hierophant
rpcpassword=93418
rpcallowip=127.0.0.1
rpcbind=127.0.0.1
datadir=E:\\Bitcoin
Sorry for the long post, but I also checked if 127.0.0.1 was open to all internal apps, and even specified both Electrum Server and EPS apps as safe in Windows 11. If anyone can help get me through this, it will be amazing after two days pouring through Google, where Windows configuration content on a pure Windows implementation seems especially rare.
Thanks!
Janx