On this post we are going to be building a Bitcoin node and we will be using Citadel as the stack provider, here is more about Citadel from their Github:
“Citadel is modern, mostly open source and soon to be fully FLOSS Bitcoin Node implementation originally based on Umbrel, but we have moved most of our codebase away from Umbrel. Our node provides the latest apps, together with our own, up-to-date user interface and backend.
Citadel provides a way to run a Bitcoin node or a personal server (or both) on a Raspberry Pi. We also make contributions to various open source projects used on Citadel to make sure we’re giving back to the community we build on.”
What we need:
- Citadel OS
- Raspberry pi Imager
- Raspberry pi 4 and power supply
- pi case
- SSD 1 TB+ capacity and USB cable to connect to pi
- SD card 16 GB+ capacity
- Ethernet cable
The first thing we need is to download the latest available Citadel OS file and create the SD card with it.
- Head over to Citadel setup page scroll down until you find the “Download Citadel OS” and click it this will open a window and ask you where to save the file.
After clicking on “Download Citadel OS” a new window will open asking you to select the location where you would like to have the file saved to, at this time select your location and remember it as we will need the file in the following steps.
After the image has been downloaded it needs to be burned into the SD card using an app like Raspberry Pi Imager or Balena Etcher in this case we will be using Raspberry Pi Imager when it comes to operating system installations for the Pi this is my go to.
2. Open Imager and click on CHOOSE OS button
3. On the operating system popup scroll to the bottom and select USE CUSTOM.
4. A new window will popup on this window you need to navigate to the location where you downloaded the file and select it.
5. Once selected you will return to the imager window and will need to select the sd card that you would like to install Citadel onto. Please ensure you select the correct storage as any data on it will be deleted.
6. Once the storage has been selected and confirmed select WRITE and let Imager write the image to the SD and verify the install, after this is completed you can eject the SD card and you are ready to go software wise.
In this section we will cover the required hardware needed and how to put it together, this section assumes that you have acquire the hardware prior to following this guide and it is ready to go.
- Insert your newly created SD card into the SD card slot on the pi.
2. Connect your SSD usb cable to one of the available USB3 ports on your pi. In my case I am using an SSD without a case with a USB to SATA cable, if you are using the SSD inserted with a case your cable maybe a USB to USB so it will look different as the pictures below but the idea is the same.
3. Connect the other end of the cable to the SSD.
4. Connect your ethernet cable to the ethernet port on the pi.
After you are all connected your setup should look something like the picture below.
- SD card with Citadel OS fully inserted.
- USB cable connected to pi and SSD.
- Ethernet cable connected
Now we need to move the setup that we just put together to the location where it will rest for operation hopefully for years to come connect to the network and power up to get things going.
After Power up
After plugging up power to the pi Citadel OS starts to boot up and the pi comes on line, at this time you can use your router, firewall or programs like Angry IP Scanner to find out the IP address to your pi in order to access Citadel OS UI, once you have the address enter that on a browser and if all steps above were done you should be greeted by Citadel.
After a few minutes on the initial screen the “LOADING” button should become an “START” button and will allow you to continue in order to start setting up your new node. At this time click “START”
Clicking “START” will initiate the setup process first step is to select a name. Use any name you want here and click “NEXT” to continue.
On the following screen we will be setting up our password keep in mind this needs to be a secure password that you will remember and will be using to access your Citadel Node, after entering the password click “NEXT” an a new screen will show up to confirm the password you just entered.
After successfully setting up your username and password you will be presented with the secret words (or seed word) page, this page provides several choices 1. NEXT, 2. NOTE DOWN LATER, 3. RECOVER, we will cover the meaning of all these options below and which one should we use at this time.
- NEXT will start to generate our 24 secret words, in my opinion this is the option we should be choosing at this time.
- NOTE DOWN LATER will skip the generations of the 24 secret words since this can be done later from the settings tab once the Citadel Node is up and running.
- RECOVER if you ever (or should I say when) have an issue that requires you to setup your node from the beginning again (this could be due to hardware failure, data corruption, loosing access due to forgetting your password etc) this option allows you to enter the 24 secret words that we previously wrote down and recovers the funds that you had in you nodes wallet.
After selecting NEXT Citadel Node will start to generate and display your 24 words, you should take the time to write this words on paper at this time in a clear manner since this will be your back up as mentioned above if you ever need to recover your wallet this is your only way in, if you keep funds on this wallet you should save these 24 secret words in metal to gain more resistance to water, fire and other things that could destroy the paper on which you initially wrote down your words.
After reaching the end and saving all of your 24 secret words you will be presented with your node’s onion address with this address you can access your node from anywhere using a tor browser and you can also connect your other Bitcoin wallets to use your node to verify your transactions and balances. You should keep this address private.
You have reached the end of the line and your setup is now completed, you will be displayed a quick disclaimer to agree to as seen on the image below once you agree and click “NEXT” you will be taken to the congratulation screen and will be able to access your dashboard.
Now that we have completed setup lets check out our dashboard, as you access your dashboard you will notice that there is an update ready at this time it was to version 0.0.3, you will also see that the Bitcoin section of the dashboard shows synchronizing at this time your node is doing the Initial Block Download or (IBD) which is basically moving to your SSD the entire Bitcoin blockchain since the first transaction, this will take a while as currently the blockchain is around 390GB. You can use your Citadel Node while this is happening.
The first thing we need to do now is to accomplish the update that is available to v0.0.3, to do this click the install now on the notification on top of the dashboard page and the update will start as you can see in the image below, please do not refresh the page or turn off the node while the update is in progress
This is all for this post, the idea is to continue to document my interactions with Citadel node and post them here as I go please keep your eyes open for new posts, as of now the plan is to follow up with the installation of LnMe to get our Lightning address and possibly setup an LNUrl.