How To Create a Monero Wallet with Ledger Nano S on Windows 10

deathd0tcom
7 min readJul 25, 2018

--

First & foremost, this guide is making the assumption that you have already initialized the Ledger by setting a PIN & copying down your recovery phrase. Once your Ledger is set up, you need to use the Ledger Manager Chrome App to install the Monero Ledger app on your Ledger Nano S.

You can use the link above to download the Ledger Manager Chrome app. When you launch the Ledger Manager, you will see a window that looks like this:

Now, as you may have guessed, you need to plug your Ledger Nano S into your computer via the USB cable that comes with it. After plugging the Ledger in & entering your PIN, it will load and present you with the numerous different Ledger apps you can install. Scroll down until you see the Monero app & click the Green Arrow to download it, as pictured below:

After you’ve downloaded the Ledger Monero app, you’re one download away from getting set up! Next, you’ll need to download the Monero CLI, which you can find here:

When you get to the downloads page on getmonero.org, you may find that you’re unsure whether you should be downloading the 32-bit or 64-bit version.

When you get to the downloads page on getmonero.org, you may find that you’re not sure whether you should be downloading the 32-bit or 64-bit version. Not to worry. If you have no idea or are just unsure, you can check here:

https://support.microsoft.com/en-us/help/15056/windows-7-32-64-bit-faq

Now that your downloads are in order, you are ready to set up your very own Monero Wallet on your Ledger Nano S!

First things first- you’ll need to right-click the recently downloaded CLI folder & click ‘Extract All.’

After you click ‘Extract All,’ you will get a window like this to choose where you want to save. I renamed the folder ‘monero_CLI_LEDGER’ for clarity & so finding it would be easy.

When it is finished extracting, the new folder will open, (assuming you left the ‘Show extracted files when complete’ box checked) & from there you will see these files:

At this point, you are ready to set up the wallet on the ledger. The only thing in your way is getting connected to the daemon, also known as monerod.exe.

monerod.exe

There are two options to consider when getting started. The first option is to use a remote node, which is not recommended because it reduces your privacy; when you broadcast transactions your IP address can be logged. However, this option will allow you to quickly utilize the Monero wallet on the Ledger Nano as you only have to enter one line of code & wait for the wallet to sync once. The second option is to run your node locally which is the recommended method, and is necessary if you ever wish to mine Monero.

To generate your Monero wallet, you’ll start by holding the shift key & right clicking the blank space in the unzipped folder & select ‘Open Powershell window here.’

(Image sourced from: https://winaero.com/blog/windows-10-build-14986-replaces-command-prompt-with-powershell-everywhere/)

If you open a powershell window, it will look like this:

This is where you enter commands to operate your Monero wallet via the Ledger Nano S.
If you are using anything prior to Windows 10, it will also give the option to ‘Open command window here.’ (Image sourced from: https://www.top-password.com/blog/wp-content/uploads/2017/06/open-command-window-here-windows-10.png)

Conversely, you can also click in the File explorer bar & type ‘cmd’ & press enter to open the command window where you will be setting up the wallet.

Click on the File explorer bar near the blue bar, type ‘cmd’ & hit enter.

If you clicked ‘open command window here’ or typed ‘cmd’ into the File explorer bar, you will get a window that looks like this:

Whether you use Powershell or Command Window they both work the same, so whichever method you prefer to open a window (inside the monero_CLI_LEDGER folder), the commands are the same moving forward.

I like typing ‘cmd’ in the File explorer bar, so this guide will be using the Command window, but again, they both use the same commands.

To initialize the Monero wallet on your Ledger Nano S, you must unlock your Ledger by entering the PIN. Then, you must open up the Monero app on your Ledger device to ensure the commands you are about to enter work.

You will see <Monero: 4xxxxxxxx> begin scrolling on the Ledger’s screen when the Monero app is open.

Now you are ready to enter the commands!

.\monero-wallet-cli.exe --generate-from-device YOUR_WALLET_NAME_HERE --subaddress-lookahead 3:200

The 1st command you’ll enter to create your wallet on Ledger:

.\monero-wallet-cli.exe --generate-from-device YOUR_WALLET_NAME_HERE --subaddress-lookahead 3:200

Replace YOUR_WALLET_NAME_HERE with whatever you’d like to name the wallet. I named mine ‘moneroledger’ when setting up my XMR wallet on my Ledger Nano S.

Next, the CLI will ask you to create a password for your wallet. After creating a password, you will have to confirm the password to sign onto the wallet. After you enter the password, your Ledger will prompt you to confirm that you want to ‘Export View Key.’

Click the right button on your Ledger to unlock your Ledger Monero Wallet!

Now you’ve officially generated your Monero wallet on your Ledger Nano S!

When creating a new wallet, it will ask you (Y/N) if it is okay to restore the blockchain, which you will need to do to ensure your wallet is fully synced up-to-date.

When the CLI asks you (Y/Yes/N/No) if it’s okay to start restoring the blockchain, you want to type ‘Y’ & press enter. You will likely get an error because you are not connected to the daemon, but we’re about to change that!

As stated earlier, the preferred method is to sync the daemon yourself & run your own local node by typing ‘cmd’ into the ‘monero_CLI_LEDGER’ (or whatever you named this folder) File explorer bar. This will open the Command window. From here, all you need to type is this line & press enter:

.\monerod.exe

.\monerod.exe

This will run the daemon which will begin to sync. If you want to be especially careful, and to make sure that you won’t have to worry about having an issue and having to restart from scratch, you can instead type this & press enter:

.\monerod.exe --db-sync-mode safe

.\monerod.exe — db-sync-mode safe

This will ensure the blockchain syncs without getting corrupted. This method is slower, but it is the tried & true method to get your Daemon running. As it stands there are about ~1,560 days of Monero blocks that need to sync, so it may take a few days. (I will be adding how-to import blockchain.raw to speed up this process in the future, but for now, this method is sufficient & doesn’t require any technical skill, aside from maybe copy/paste.)

https://moneroworld.com/

If you don’t have a couple days to wait, there are two methods for getting connected to a remote node. First, you can visit the website above & copy/paste one of the links listed. For this example, I’m using a link that was listed on the above website.

There are two ways to connect to a remote node. The first is by typing:

set_daemon geo.node.moneroworld.com:18089

& pressing Enter right in the CLI after you’ve opened your wallet. This will start the blockchain sync.

You can also set the remote node by appending an extra line when you first open your wallet. Instead of just typing “.\monero-wallet-cli.exe,” type the following & press enter:

.\monero-wallet-cli.exe --daemon-host geo.node.moneroworld.com:18089

set_daemon --daemon-host geo.node.moneroworld.com:18089

Then you can finish signing into your wallet, and after you confirm you want to export view key on your Ledger, your wallet will start to refresh and will scan the Monero blockchain for any transactions involving your address.

IMPORTANT:
-After it finishes refreshing, and the wallet is fully synced, be sure to type the command ‘save’ and press enter. This way each time you open your wallet you won’t have to refresh the entire blockchain.

To close the wallet, enter the command ‘exit’ to close the Command window. Congratulations! You now have securely set up a Monero wallet through your Ledger Nano S!

When you are running a local daemon, you should have TWO Command windows open. One should be running:
.\monero-wallet-cli.exe

When you’re running your own daemon, this is what it will look like after you sign into your wallet before the blockchain refresh starts.

The other should be running:
.\monerod.exe

(Or you can sync your local daemon in safe mode by typing: “.\monerod.exe --db-sync-mode safe”)

This is what the window will look like when you’re syncing your local daemon. Please note that you can access your wallet in another Command window while the daemon is still syncing, but it will appear ‘out of sync,’ as pictured below.

This is what the .\monero-wallet-cli.exe looks like whilst you are still syncing your local daemon:

The wallet will appear out of sync, but you can still check the balance & get familiar with the CLI commands as your local daemon syncs with the Monero blockchain.

This is just to generate a Monero wallet on your Ledger Nano S on Windows. I will be updating this guide as time goes on to include more tips & tricks and also to add information for mining XMR with the CLI.

--

--

deathd0tcom

Finance, Economics, Bitcoin, Monero, Politics, & Technology. Give me Liberty, or give me Death[.com]