Install it on the Pi
Make the wallet start by itself, test the screen and buttons, then switch off Wi-Fi.
- 15 min
- On your computer
- On the Pi
The install script sets the Pi up to start the wallet by itself whenever it gets power, turns on the screen and the buttons, and makes the USB port act as a wallet. You run it twice: once with Wi-Fi still on, to check that everything works, and once more to switch the radios off.
First install, Wi-Fi still on
cd ~/wallet
sudo ./diy/install.sh --ram-only --keep-radios
sudo reboot--ram-only keeps the wallet in memory only, as you chose on Your build. It is gone every time the Pi loses power.
Your SSH window closes when the Pi restarts. After about a minute, the screen lights up and shows Select Language.
Check the screen and buttons
| Control | What it does |
|---|---|
| Joystick up and down | Move through a list |
| Joystick right, joystick press, or KEY1 | Confirm, next |
| Joystick left, or KEY3 | Back, cancel |
Move up and down through the languages to check the joystick, but don’t set anything up yet. That comes in step 7, with the app.
If the picture is upside down, log in again:
ssh you@diywallet.localThen turn it around:
echo DIY_OLED_ROTATE=180 | sudo tee /etc/diywallet.conf
sudo systemctl restart diywalletIf the screen stays dark, see what the wallet reports:
systemctl status diywalletThe most common cause is the screen board not pushed all the way onto the pins.
If the screen says Wallet stopped and Random number generator failed, or the install script stopped with No hardware random number generator found, the wallet couldn’t read the chip’s random number generator, or its output failed a check. It stopped on purpose, rather than create a recovery phrase without it. Check that the board is a Raspberry Pi Zero 2 W and that the card has the Raspberry Pi OS Lite from step 3, then restart the Pi. If it happens again, don’t use this board for a wallet.
Check the random number generator
Your recovery phrase will come from the generator in the Pi’s chip, so test it before you create a wallet. Log in to the Pi again, then run the test. It takes about 30 seconds:
ssh you@diywallet.localsudo /opt/diywallet/hwrng-check --testThe first lines name your generator and its driver, bcm2835-rng, and confirm its settings. The last line should be RESULT: OK. A few failed blocks are normal; the program says how many are acceptable. If it says RESULT: FAILED, don’t use this board for a wallet.
Final install, radios off
Once the screen and buttons work:
cd ~/wallet
sudo ./diy/install.sh --ram-only
sudo rebootThis time the Pi starts with Wi-Fi and Bluetooth disabled, so Linux never switches those chips on. From now on it can’t reach any network, and you can’t log in to it over the network either. To change something later, see Customize.
Checkpoint
The Pi starts by itself when you plug it in and shows Select Language on its screen. Your computer can no longer find diywallet.local.