Bitcoin's client on a Raspberry PI
Saturday, 6 July 2013
Direct download available
A direct HTTP download of the image is available at http://www.lakoco.net/RPI_BTC_V0.1.zip
Wednesday, 3 July 2013
RPiBTC is now available

RPiBTC Project
Description
The aim of this project is to run the full Bitcoin
client in a low cost Raspberry Pi model B. The Raspberry Pi is inexpensive,
doesn't require much power to run, and best of all, it's tiny
Here below is a snapshot taken from a VNC viewer
connected to the RPiBT :
The main issue that showed up in this project was the
blockchain synchronisation of the Bitcoin client with the Bitcoin network. The
synchronisation task requires a lot of read/write access, that the slow SD card
can’t easily performs quickly.
To overcome the synchronisation issue, the full
blockchain has been copied to the SD card. After the copy, the Raspberry Pi is
able to catch up the blockchain synchronisation quickly.
As this was painful to do, I decided to share the
RPiBTC image. Before making it public, I’ve added also some interesting
features:
- Remote
desktop (VNC Viewer or Remote Desktop Connection)
- uPNP
support for the Bitcoin client.
- Iptables
for the protection
WARNING
Up to now, I don’t find my RPiBTC setup secure enough
to hold my wallet. So I recommend you to the same.
WARNING
Installation
RPiBTC is based on Raspbian “wheezy”: 2013-05-25-wheezy-raspbian.zip
Download the image of the latest RPiBTC. The image can
be found in the torrent.
http://www.lakoco.net/RPI_BTC_V0.1.zip.torrent
Copy the image into a SD card. Currently, at least a 16
GB SD Card is required. For future proof it is better to use a 32 GB SD card.
The blockchain’s size is increasing continuously.
Install the SD card in the Raspberry Pi and power up
the Raspberry Pi connected to the internet!
After 5~10 minutes, the blockchain will be loaded, and
Bitcoin daemon will start to respond. The full synchronisation depends on the
delay between RPiBTC last block and Bitcoin current block.
Setup
The bitcoind client will start at boot time as user
rpibtc.
You can login to the RPiBTC by a direct keyboard/mouse/screen
connected to the RPiBTC or by a remote connection to if you now the IP address.
At first, login as a pi user with password raspberry.
Then run the command sudo raspi-config and configure the Raspberry Pi
to your flavour. (Keyboard mapping, time zone…)
Default login and password:
User rpibtc, password rpibtc!
User pi, password raspberry
I recommend you to change the password with the
command passwd
The RPC login of the bitcoind client is RPiBTC and
password is RPiBTC!
I warmly recommend changing it:
- Login
with rpibtc user, and nano ~/.bitcoin/bitcoin.conf
- Edit
rpcuser and rpcpassword values.
- Login
with pi user, and nano ~/.bitcoin/bitcoin.conf
- Edit
rpcuser and rpcpassword with same values as for rpibtc.
The VNCViewer passwd for the pi user is raspberry
I recommend you to change the VNC password vncpasswd
Network setup:
By default the IP address of the RPiBTC is given by DHCP
server if there is one in the network. If you want to change the IP setting,
visit the page http://www.raspberryshake.com/raspberry-pistatic-ip-address/
The Bitcoin client needs to be setup:
- Log
in as RPiBTC
- Edit the Bitcoin.conf nano ~/.bitcoin/bitcoin.conf
The RPiBTC comes with some in building application:
VNCviewer and RDC: VNCviewer and RDC are remote
desktop connection applications. The applications are installed, but might need
some configuration. To configure them please visit http://www.ryukent.com/2013/04/setup-the-raspberry-pi-for-remote-access-with-rdp-or-vnc-and-a-static-ip/
Iptables:
Iptables is a firewall. The application is installed, but might need some
configuration. To configure it please visit http://virtualitblog.blogspot.be/2013/05/installing-iptables-on-raspberry-pi.html
What next ?
In the future, I might add some more support to RPiBTC
Install P2Pool client ?
Install Miners ?
Install RPC client to bitcoind?
Other ? Let me know what you want
How to use RPiBTC:
In the command line with bitcoind getinfo
To stop Bitcoin daemon: sudo /etc/init.d/bitcoin stop
To start Bitcoin daemon: sudo /etc/init.d/bitcoin start The start-up takes up to 10 min to load the database chains
It is possible to use the bitcoin-qt
application. To do this:
- Start
a VNC server for RPiBTC user (Not started at boot in default)
- Log
in with VNCviewer as RPiBTC.
- Inside
a shell, Shutdown the daemon if running.
- Inside
a shell, Start bitcoin-qt
It is also possible to connect to the
Bitcoin daemon by RPC, with JSON.
Questions and suggestions:
If comment, question or suggestion comes to mind, send
me an email to nono242 [at] advalvas [dot] be
Donate:
If you like this work and want me to work more on it
to improve it, don’t hesitate to make a small donation to: 1CAdRfey4Zp5TXLA5UHGmoa2akM1WwED4H
Subscribe to:
Posts (Atom)