There are multiple ways to build and run your own node. For the sake of making this simple for most people, I’ll walk you through how to do this with a Raspberry Pi 4. You may already have most of this stuff readily available but if not, you can get all of this for under $300 at major retailers including Best Buy or Amazon. If you have to order anything, remember to use Lolli at Best Buy and Fold for Amazon so you can earn some Bitcoin back on any parts or kits you may buy. You can also try The Bitcoin Company with code GWJ2M9. If you are not familiar with these services, they provide bitcoin back (instead of cash back) when you shop online or buy gift cards to major retailers. They have over 900 partner stores to shop at and full disclosure those are referral links that give us both some free Bitcoin when you use it.
Raspberry Pi 4 (ideally 4GB of RAM but you can do 8)
MicroSD card (minimum 8GB)
USB-C cable for power
Ethernet cable for an internet connection
Hard Drive (Ideally an SSD with at least 500 GBs or the current blockchain size with extra space for growth in the future)
Raspberry Pi 4 case
A few things to note before buying anything:
- You probably have most of this already laying around the house in one form or another.
- I would recommend buying the 4 GB RAM Pi4. You can save some money and use the 2 GB version but it will limit the services you can use with the MyNode software. Conversely, you can future proof and buy the 8 GB version but since the software isn’t 64 bit compatible it will only take advantage of 4 of the 8 GB so you aren’t getting the full performance boost and wasting money.
- When I synched the blockchain and downloaded the Electrum server, it reached 573 GB before it was compressed down to 480 GB despite the Bitcoin blockchain being about 320 GB. Depending upon how you want to use it, you may want to use a 1 TB driver rather than a 512 GB model.
- Finally, if you use an old hard drive, it will erase everything on the drive so make sure you remove any important files you have on it.
Once you have bought everything you need, head over to Umbrel and download the software which is free for you to use.
Once the ISO file has downloaded you’ll need a way to install it. Download Etcher or any other preferred software to write the software image to the microSD card. Plug your MicroSD card into the computer, open Etcher, select the Umbrel file, and flash it to the MicroSD card. This will take 5 or 10 minutes to flash then validate the software as seen above. So while that is validating, you can build your node.
If you bought a kit like I did, apply the heat sinks. These are three small silver pieces of metal designed to disperse heat to better cool the device. There is some tape on the back, remove it, and stick it to the three pieces parts on the Raspberry Pi as seen above.
Pop open the case if you bought one. Most are two or three pieces but it is generally self explanatory to put it together because it lines up with the ports. My kit came with a fan which locks into the top. If you bought a fan, plug the two wires into the long row of prongs as seen in the 4th picture to give it power. The red goes into pin four and the black wire goes into pin six. If you look above and rotate the image 90 degrees mentally, you can count it as 1, 2, 3, red wire, 5, black wire. Also make sure it is facing the correct direction to blow hot air out.
Finally if you bought an external hard drive, you can skip this step. However if have an internal hard drive you can open up the case, slide it in, and close it up.
By now the Umbrel software should be ready. Eject the MicroSD card and slide it into the bottom of your Raspberry Pi. Once it is in, plug the device into the back of your router with the ethernet cable, plug the power cable into the USB-C port on the side, and plug in your hard drive into the USB-A ports on the side. If you are using a USB 3.0 cable (it is blue) then plug it into the matching blue ports for faster speeds. Once you turn it on, if it cannot find the drive, switch it over to the USB 2.0 ports (those are black) and that should fix the problem.
Once your device is set up, open your browser on your computer, tablet, or phone and type in http://umbrel.local and that will look for the device on your wifi network. It may take a few minutes but if you cannot find the device, download Angry IP Scanner on your desktop or Net Scan for Android. This will show you all of the IP addresses on your network. Once the scan is done, enter the IP addresses you see into your browser until you find your Umbrel.
Once you go to http://umbrel.local, you should see the above page where Umbrel is starting.
Enter any name you would like. This is stored locally so it can be your real name or an alias, it doesn’t matter as it is not public information.
Go ahead and set a password. It does not provide any indication as to what you actually need to enter but there is some kind of “minimum strength” required for the password. I had originally set it to something low for demonstration purposes as there is a change password option in the settings but my temporary password was unacceptable. It’ll light up a brighter shade of green once acceptable without giving any indications to requirements.
Next you’ll see a Tor address below. I cropped it out because if someone has that address, they will be go to your startup page seen above at http://umbrel.local but they will not need to be on your local wifi network. There is a password screen they will need to bypass, and hopefully 2FA, but should someone get through both of those, they can steal your bitcoin, see your addresses on other wallets connected to the node, and gain access to other services. If you have not already downloaded Tor, you can do so here. You don’t have to copy this down but it is a nice to have so you can access your node remotely if you need to. You can save this in a cloud location.
Write down your seed phrase. These are the back up to your wallet. If anyone gets a copy of these, they can steal your bitcoin. Do not back it up to the cloud. Do not save it digitally. Write it down on paper. For more information on how to store these, checkout another article I wrote on how to store a seed for a hardware wallet or multisig. The same premise applies and it will get you thinking about your next steps.
You have officially set up your own Bitcoin node! Now all you need to do is let it sync to the tip of the chain which takes anywhere from a day to a week depending upon your internet speeds. In the meantime, you can download a few apps and tweak some settings.
Apps to download
On the left hand side, click on the app store. There are all kinds of applications you can start to use but here are the ones you should definitely take advantage of immediately:
- Mempool.space — Mempool.space is a great website in general that can help you save on fees, enhance your privacy, and more. For a full introduction, you can read the article I wrote about it here.
- BTC RPC Explorer — BTC Explorer is your very own block explorer. Rather than looking up transactions on a public block explorer that can link your IP address to the transaction hash, this like mempool.space, queries your own node to ensure the transaction went through.
- Thunderhub — There are numerous lightning wallets you can use but find that Thunderhub has the most comprehensive set of features for node management beyond the standard ability to send and receive.
Apps to consider
- Samourai Server — This is the backend to the popular Samourai Wallet that will allow you to coinjoin your transactions with Whirlpool.
- Vaultwarden — You may have a password manager already like Lastpass or 1Password but Vaultwarden is the self hosted version of Bitwarden. This mitigates the backdoor risk of having all of your passwords with a trusted third party. Rather than having that data on their servers, it is stored locally on your own node.
- NextCloud — This is an open source and self hosted version of Google Drive, iCloud, or Dropbox. Rather than relying on another company to store your files, you can store them yourself. Note that the size of your SSD required will probably change if you use this depending upon how many photos and files you would like to store.
Settings to change
On the left hand side, click on the settings icon.
- Turn on 2FA. I recommend Yubico, Aegis, or Google Authenticator. If you use Authy, be sure to turn off the setting where additional devices can be added so a hacker cannot get into your account.
- Ensure Tor is running for Bitcoin, Lightning, and Remote access.
- Change the temperature to your preferred unit of account.
- Backup your seed phrase if you skipped it above!
- Copy and save that remote access Tor address and save it somewhere so you can access your node on your phone or laptop while away from home.