Please login or register.

Raspberry Pi2 Hydrogen Helix

edit 29/01/2016 23:15 - cut the edits and added them as a reply

RPi2 Monero Node

Kit List


Powered USB Hub Manhattan 7-port USB 2.0 - Powers the SSD

Verbatim s256gb SSD

Yes sadly the SSD makes all the difference with your RPi2

I’ve fried numerous SD cards and USB keys……

Download the ubuntu image for RPi2

Follow these instructions for getting UBUNTU on to your SSD or USB, remember you're installing ubuntu not wheezy!

At this point I get the RPi2 to a point that I can disconnect the monitor, keyboard etc

I also MAC reserved the RPi2's IP Address via DHCP (On your router or DHCP server, so it has a consistent IP Address)

So a few tasks are required first

If you're running from a USB / SSD external drive, Now is the time to edit /etc/FSTAB to reflect the new root drive

Or sudo apt-get upgrades will complain it cannot find /dev/mmcblk0p2

fstab changes

proc            /proc           proc    defaults          0       0
 /dev/sda2       /               ext4    defaults,noatime  0       1
 /dev/mmcblk0p1  /boot           vfat    defaults          0       2
 #/dev/mmcblk0p2  /               ext4    defaults,noatime  0       1
 # a swapfile is not a swap partition, so no using swapon|off from here on, use  dphys-swapfile swap[on|off]  for that

I reboot at this point

sudo reboot
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install openssl-server
sudo apt-get install screen

(for multiple sessions) Screen is great, you can disconnect from the session and know it's still running fine Ctrl+Alt+d*

sudo halt -p

This powers it off so you can disconnect monitor, keyboard etc and SSH in from where you would normally

power up and ssh on to your RPi2 (or you can remain sitting infront of it??)

ssh [email protected]


[email protected]:~$ passwd
Changing password for ubuntu.
(current) UNIX password:
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully

Change time zone to your timezone

sudo dpkg-reconfigure tzdata
sudo apt-get install dphys-swapfile 

Installs the swap file, I left it as a default install)

Thats the prep of the RasPi2 with ubuntu complete

sudo reboot

ssh back in to set up environment These packages are for the ability to build from source

sudo apt-get install git vim build-essential doxygen miniupnpc cmake 

These packages are to install the dependencies for bitmonero

sudo apt-get install libboost1.55-all-dev libevent-dev libunbound-dev liblmdb-dev libdb++-dev libdb-dev 

Copy all the required source files to your RPi2

git clone bitmonero

switch into that dir

cd bitmonero/ 

You're now ready to compile

make -j2 release-arm7

If you're feeling brave use -j4 to use all of your RPi2's cores

It took just under 2 hours to compile for me (SSD don’t forget)

sudo reboot

you’re ready to launch now

cd bitmonero/build/release/bin

This defaults to BerkeleyDB


The launch syntax I am now using is

./bitmonerod --rpc-bind-ip --rpc-bind-port 5012

I start my wallet with this syntax

./simplewallet --daemon-address 192.168.0.XX:5012 --wallet-file ./wallet.bin

I like to backup the blockchain once, when it's fully synced, to save time if I have a disaster. Being a Mac user.... This is the terminal command I use

rsync -avz --timeout=50 [email protected]:~/.bitmonero/ /Volumes/G-DRIVE/wedgy2kBackups/Cryptos/UbuPiBup

I've started syncing the blockchain with no additional commands (my Internet connection is 40Mbps)

Block Sync Start 26/01/2016 22:52

Had to restart this as BerkeleyDB and it took aprx 26 Hours

Please point out any errors omissions etc. Or ask some questions?

Hopefully this will be of use to some one.

A big thanks to saddam, smooth,NoodleDoodle and fluffypony

Replies: 5
swalecko edited 1 year ago Replies: 1 | Weight: 0 | Link [ - ]

Hi,I followed to above instructions and while i started the ./bitmonerod i got this error:

2016-Feb-07 20:41:45.532283 Initializing cryptonote protocol... 2016-Feb-07 20:41:45.532971 Cryptonote protocol initialized OK 2016-Feb-07 20:41:45.535034 Initializing p2p server... 2016-Feb-07 20:42:05.551882 Set limit-up to 2048 kB/s 2016-Feb-07 20:42:05.553151 Set limit-down to 8192 kB/s 2016-Feb-07 20:42:05.553937 Set limit-up to 2048 kB/s 2016-Feb-07 20:42:05.555040 Set limit-down to 8192 kB/s 2016-Feb-07 20:42:05.556906 Binding on 2016-Feb-07 20:42:05.558232 Net service bound to 2016-Feb-07 20:42:05.558638 Attempting to add IGD port mapping. 2016-Feb-07 20:42:09.564405 No IGD was found. 2016-Feb-07 20:42:09.565660 P2p server initialized OK 2016-Feb-07 20:42:09.567562 Initializing core rpc server... 2016-Feb-07 20:42:09.569087 Binding on 2016-Feb-07 20:42:09.570794 Core rpc server initialized OK on port: 18081 2016-Feb-07 20:42:09.571787 Initializing core... 2016-Feb-07 20:42:09.574406 Loading blockchain from folder /root/.bitmonero/BerkeleyDB ... 2016-Feb-07 20:42:09.575853 Error trying to lock /root/.bitmonero/BerkeleyDB/.daemon_lock: No such file or directory 2016-Feb-07 20:42:09.577028 ERROR /monero/bitmonero/src/cryptonote_core/cryptonote_core.cpp:318 Failed to lock "/root/.bitmonero/BerkeleyDB" 2016-Feb-07 20:42:09.578215 Deinitializing rpc server... 2016-Feb-07 20:42:09.580012 Deinitializing p2p... 2016-Feb-07 20:42:09.583282 Deinitializing core... 2016-Feb-07 20:42:09.585067 Closing IO Service. 2016-Feb-07 20:42:09.586052 Failed to deinitialize core... 2016-Feb-07 20:42:09.586999 Deinitializing cryptonote_protocol...

I compiled it as root user. I tried several times but i get always the same error. Do someone know how i can solve it?

Thanks a lot

Reply to: swalecko
wedgy2k edited 1 year ago Weight: 0 | Link [ - ]

I'm definatly not a *nix guru. I'm sadly a noob, who loves RPi and XMR - Anyway the cloning and compliling (make -j2 release-arm7) is not perfromed as root. For me I used the std ubuntu login. You can delete the bitmonero and then from git clone pick up the instructions again.

osensei posted 1 year ago Replies: 1 | Weight: 0 | Link [ - ]

On some tests I've done I've found that although lmdb now works on RPi2, BerkeleyDB performs better.

Reply to: osensei
wedgy2k posted 1 year ago Weight: 0 | Link [ - ]

As you can see I can't get it to update the lmdb - reads it fine. I'll try and use the blockchain_converter etc to import it as BerkeleyDB - will be quicker than re-downloading. I would like to get the lmdb working though just for understanding.

wedgy2k posted 1 year ago Weight: 0 | Link [ - ]

These are the edits I made when failing to get lmdb to work - but I'm not done yet!

Edit 27/01/2016 14:50

Annoyingly this died during syncing at

2016-Jan-27 07:23:20.062747 [P2P8][ OUT]Sync data returned unknown top block: 202234 -> 930127 [727893 blocks (1010 days) behind] 
2016-Jan-27 07:23:33.332041 [P2P5][ INC]Sync data returned unknown top block: 202234 -> 606854 [404620 blocks (561 days) behind] 

So I'm wrestling with it currently

I'll edit and post updates....

Edit 27/01/2016 23:50

Copied over the fully synced lmdb directory from my Mac via SFTP, ensured file permissions were same as originals and now working ok - (Work around - ongoing)

Edit 28/01/2016 00:30

That actually hasn't worked, its like the RPi2 cannot write to the data.mdb file even set to 777 :-(

Edit 29/01/2016 23:00

As I need this up and running I've synced it as a BerkeleyDB and it works fine - took aprx 26hours to sync.

When I have more time and less need, I'll wrestle with the lmdb - but it was like as an LMDB it could not write to the drive after a certain file size (202234 Blocks) despite being on a 256GB SSD drive.

I'll probably try a few different RPi2 images once I have a completed lmdb and BerkeleyDB Blockchain to play with.