Setting up Ledger Live with your own Bitcoin full node provides optimal privacy and stronger guarantees on your balances. This advanced feature allows you to synchronize and send transactions without using Ledger’s explorers.
Full node support is currently available as an experimental feature. This means there are some bugs and limitations needing to be fixed before it will be released as a general feature. It is only recommended for advanced users. Please be aware that we currently don't offer any support for issues related to this experimental feature.
How does the Bitcoin full node connection work?
Ledger Live connects to Ledger’s Bitcoin explorers by default, which offers fast account synchronization without needing to set up and maintain a node. However, this ease of use comes at the expense of trusting Ledger’s node to provide accurate account balances and not to store user addresses.
Thanks to Ledger SatStack, advanced users can connect Ledger Live to their Bitcoin full node. Ledger SatStack is a small, open-source application that acts as a bridge between Ledger Live and the full node. With SatStack running, Ledger Live can instruct the node to scan for accounts, retrieve balances, and broadcast transactions.
A Bitcoin full node validates all transactions and blocks, and stores the entire Bitcoin transaction history. A full node therefore can tell a Bitcoin address balance at any moment in a fully autonomous way.
Before you start
- Update Ledger Live through the notification banner or download the latest version.
- Make note of your node's RPC credentials, IP address, and port number.
- Make sure you have the following computer resources to run a node:
- At least 2 GB RAM
- 350 GB disk space
- A broadband connection without data restrictions
- 6 hours of daily uptime
For more information on the prerequisites for running a full node, refer to the following documentation: Running a Full Node.
Connecting your Bitcoin full node to Ledger Live
To connect your Bitcoin full node to Ledger Live:
- In Ledger Live, go to Settings > Experimental features tab.
- Scroll down to find the Connect Bitcoin full node option and click on Connect.
- Click on Continue once your full node is set up and fully synchronized.
We recommend running a node with txindex=1 in the bitcoin.conf configuration file.
- According to your situation, enter the node parameters (<IP address>:<port>) in the Host field:
- If Bitcoin Core runs on the same computer as Ledger Live, use the default value 127.0.0.1:8332.
- If you’ve configured a static IP address for your node, replace the default IP address 127.0.0.1 with the IP address of your full node.
- If you're using a hosted node solution, enter the URL.
- Enter the RPC credentials for your node, configured in the bitcoin.conf file, which you can find in your node administration panel (e.g. mynode, etc.) or in the following directory:
OSX: $HOME/Library/Application Support/Bitcoin/
- Enable Transport Layer Security if needed.
- Click on Continue once the connection to your node is successful. Otherwise, review the parameters you provided and retry.
Configuring your accounts
Your full node needs to know which addresses on the blockchain belong to your accounts. Ledger Live will therefore configure your full node using your Ledger device, so it can then scan for your accounts. Ledger SatStack allows you to connect Ledger Live to your full node. Since Ledger SatStack must run when using Ledger Live, you should consider letting it launch automatically at system startup.
- Configure the number of accounts of each address type to scan for.
The default value is 10 accounts of each address type: Legacy, SegWit, and Native SegWit. You’ll only need to increase this number if you have more than 10 accounts of either type.
- Click on Continue.
Connect and unlock your device. Then open the Bitcoin app.
Please wait while Ledger Live is getting the accounts from your device.
Click on Continue once the account information is added to the node configuration file. This file is saved in the user data folder as lss.json.
Click on the Download SatStack button to get the latest version of SatStack for your operating system.
Open the SatStack executable after unpacking the downloaded file. You may have to confirm when opening SatStack if the application developer is not recognized.
Your full node should now be scanning for your accounts.
Wait for the progress loader to reach 100% or click on Continue and follow the progress in the Experimental Settings tab.
All Bitcoin accounts will be removed from your Portfolio. You can add them back with your full node once it has completed the account scan.
Adding your accounts
Once the full node is connected and has completed the account scan, you can add your accounts normally. For more information on how to add your accounts, refer to the following article: Add your accounts.
Accounts from multiple recovery phrases or a passphrase?
If you are using accounts from multiple recovery phrases, a passphrase, or if you have more than 10 accounts of one address type, your full node must scan the blockchain for all of the associated accounts. To do so, please go to the full node setup in the settings and make sure you configure your node with all your accounts. This process will be improved.
Understanding full node statuses
The following status messages can be displayed for your full node in Settings > Experimental features > Connect Bitcoin full node.
|Ready||The full node is fully synced. You can add Bitcoin accounts and the account balances are correct.|
|Loading||SatStack is verifying the total circulating supply.|
|Node sync in progress...||The full node is synchronizing new blocks. Recent transactions may not yet be visible, so Bitcoin account balances may be incorrect. If possible, run your node continuously to keep it in sync.|
|Account scan in progress...||The full node is busy scanning the blockchain for your account balances. You can add your accounts in Ledger Live once the account scan is completed.|
|Could not reach SatStack||There’s a problem preventing Ledger Live from connecting to SatStack. Please verify that SatStack is running in a command-line terminal on the same computer.|
|Could not reach node||The full node is either offline or the connection settings you entered are not correct. To edit the node connection settings, go to Experimental features > Connect Bitcoin full node.|
Known bugs and limitations
Since Bitcoin full node support is still an experimental feature, there are some bugs and known limitations needing to be fixed before it will be released as a general feature.
- Pending transactions do not display in the operations list shortly after sending them. They appear after the first confirmation by the network.
- Confirmed coins are displayed as pending.
- No error messages when adding an account that the node has not been configured with. The account will have no operations because the full node hasn’t scanned the blockchain for this account.
- The SatStack configuration file contains duplicate account entries.
- When SatStack is down, the Account sync status displays: Could not reach full node.
- Node connection timeout is too long at first step of setup.
- The setup flow can be closed by clicking outside of the modal.
- Some missing or incorrect wordings.
- Transactions received from addresses not belonging to the user have no from address. This is solved by adding txindex=1 to the bitcoin.conf node configuration file. Without txindex enabled, the full node does not track third-party addresses.
- MacOS: SatStack is currently not notarized, meaning users will have to open the application through the right-click menu or through System Preferences > Security & Privacy.
- Adding accounts from multiple recovery phrases or a passphrase requires repeating the setup flow. This will be improved.
- SatStack version is not yet enforced by Ledger Live. You will not be alerted that you need to update it, and need to look for updates manually.
- Transaction fee estimation needs to be improved.