Donate VRC/VRM for the Wiki to VBzaNDExHyFpnNvYc5QH5e4ipBZqxxPnKJ . Thank you, Joe.

Raspberry Pi

From VeriCoin & Verium Wiki
Revision as of 13:59, 29 January 2018 by Joe rondx (Talk | contribs) (Verium Miner Image)

Jump to: navigation, search

The Raspberry Pi is a super cool device. Before you start using it for anything related to the VeriConomy you should learn some general information about its usage. Please consult

  1. www.raspberrypi.org
  2. YouTube Guides
  3. Google for Raspberry Pi and your language

and learn how to burn an OS image for the Pi, connect to it and edit text files. Linux knowledge is very helpful here.

Once you gathered some basic knowledge you can use the Pi to

  • mine Verium
  • run the Verium wallet
  • use it as monitoring webserver or wifi bridge
  • VeriCoin is currently not working on the Pi but this will be fixed soon...

Pre-installed Images

There are three OS-images available that have software pre-installed for different needs:

  1. Verium Mining (optimized)
  2. Verium CLI Wallet, Miner and Monitoring Webserver
  3. Verium GUI Wallet and Monitoring Webserver

Whatever image you want to run, you need to burn it onto an SD Card. My favourite tool to do so is

After your SD Card is burned insert it into your Pi and power it up.

Verium Miner Image

Raspberry Pi Verium Mining OS Image features:

  1. *220 H/m* using the latest fireworm miner, GCC7 and moderate Overclocking on latest raspbian stretch lite
  2. Autostart configuration, Status script and Temperature Logging
  3. Awesome welcome message with Verium ASCII Logo ;)

Download: Verium_Miner_Pi.img.gz

Miner pi.png

There is no Desktop in this OS, you will use command line only.

Either plug in a screen via HDMI or log in via the enabled SSH with standard

 user: pi
 password: raspberry

Mining will automatically start after boot up - consider it as a little donation and perhaps let it run a bit ;) . To configure the miner for yourself edit rc.local by (you'll find this command in the welcome screen)

 sudo nano /etc/rc.local

The mining command is at the very end, you only need to configure the second line in

/home/pi/verium/fireworm/cpuminer \
-o stratum+tcp://yourpool.com:3334 -O your_user.worker:password \
-1 3 -t 1 --api-bind 0.0.0.0:4048 --no-color >> /home/pi/verium/fireworm/mine.log &

according to your personal miner setup.

There is a simple status script in the home directory, call

 ./vrmcheck.sh

which prints out the configuration in rc.local, the last 10 lines of the miner log, CPU frequency and the current temperature.

The overclocking was configured in

 sudo nano /boot/config.txt

at the end.

Operating System

First step is the choice of an image for the RPi, the current "stretch" images do not work out of the box.

To get the compilation working on Raspbian Stretch see this RPi Stretch Fix.

Raspbian Jessie is unfortunately no longer working for the VRC/VRM wallets.

VeriCoin Wallet Installation

Currently the VeriCoin wallet is not running properly on the Pi. The next update that addresses the current memory issue will likely fix that. Stay tuned.

Verium Wallet Installation

Updated for Version 1.1

The whole thing as a script: [Download Shell script], thanks to [mining-pool.ovh]

 wget https://raw.githubusercontent.com/DJoeDt/verium/master/install_Verium_Wallet.sh
 chmod +x install_Verium_Wallet.sh
 ./install_Verium_Wallet.sh

It will do what is described in the step-wise Manual Verium Wallet Installation .

In case you see ERRORS like -No such file... - it actually helps to run the script again since probably the installation of the dependencies failed.

Wallet Configuration & Usage

The wallet should run now, but we need to go to its directory

 cd verium/wallet/src

and get info about this by:

 ./veriumd getinfo 

Now stop the wallet

 ./veriumd stop

It is configured in

 nano verium.conf

scroll to its very end, the lines to configure are rpcuser=YourSoloMiningName rpcpassword=YourSoloMiningPassword rpcallowip=YourAccessIP rpcallowip=localhost You have to configure the IPs of the machines that should be able to connect. If you mine solo you have to come up with a username and a password for your miners to access the wallet.

Now start the wallet again

 ./veriumd 

The most important thing right now is your wallets address gotten by

  ./veriumd getaddressesbyaccount ""

Finally backup by

 cp ~/.verium/wallet.dat somewhere/save/wallet.dat

To restore your wallet just do a fresh installation and replace the new wallet.dat with your saved one.

Store & Secure both VeriCoin & Verium in One Paper Wallet [Paper Wallet Link]

Learn how to use the Verium Daemon

 ./veriumd help

will print a wall of text with commands and

 ./veriumd help [command]

explains each further. further wallet commands

Verium Miner Installation

The Mining software can be installed on the Pi in the same way it works on the Odroid XU4 (a high end SBC) - similarly on other Linux systems.

The whole thing as a script for effectstocause miner (RPi & ARM version): [Download Shell script]

 wget https://github.com/DJoeDt/verium/raw/master/install_Verium_Miner_ARM.sh
 chmod +x install_Verium_Miner_ARM.sh
 ./install_Verium_Miner_ARM.sh

It will do what is described in the following stepwise manual way.

In a Terminal start with (you need internet access)

 sudo apt-get update && sudo apt-get upgrade -y && sudo apt-get dist-upgrade -f -y

During the download you could check out a [Mining Pool].

The Miner needs this

 sudo apt-get install git automake autoconf pkg-config libcurl4-openssl-dev libjansson-dev libssl-dev libgmp-dev

Special thanks go to birty again for his [guide].

Clone the verium Miner

 git clone https://github.com/effectsToCause/veriumMiner

Again time, so maybe check your wallet, the blocks and your wallets address.

For the RPi the Miner needs configuration. On a standard Linux machine just GOTO build.sh. Configure RPi here:

 nano veriumMiner/algo/scrypt.c

Find:

 ARM_NEON

and change the succeeding lines (First into second)

 #define SCRYPT_MAX_WAYS 3
 #define SCRYPT_MAX_WAYS 1
 #define HAVE_SCRYPT_3WAY 1
 //#define HAVE_SCRYPT_3WAY 1
 #define scrypt_best_throughput() 3
 #define scrypt_best_throughput() 1
 void scrypt_core_3way(uint32_t *X, uint32_t *V, int N);
 void scrypt_core     (uint32_t *X, uint32_t *V, int N);

By this the settings are changed from 3-way to 1-way which uses less RAM per thread (128MB instead of 384, RPi can run 4 threads and only has 1GB RAM).

Now the second configuration is done in here

 nano veriumMiner/build.sh

and add -mfpu=neon

 ./configure --with-crypto --with-curl CFLAGS="-O2 $extracflags -DUSE_ASM -pg"
 ./configure --with-crypto --with-curl CFLAGS="-O2 $extracflags -DUSE_ASM -mfpu=neon -pg”

This enables the use of the ARM CPU feature NEON.

Finally it is time to build the miner (Linux GOTO here)

 cd veriumMiner
 ./build.sh
 

Ready to mine! Mine! Mine! But oh no, the blockchain download is not yet complete...

To start right away a pool is very helpful at this time.

To directly test the miner you can start with the following command, but be aware: it will mine for me ;)

 ./cpuminer -o stratum+tcp://pool-eu.bloxstor.com:3003 -u VEXMki29ycW5vSt3MmdM5iwHqsHux91EMr.Guide -p GuidePwd

Of course you want to mine for yourself, but you may consider that testline as a donation for this guide. Let's get you up and running, you need to know your wallets address, in the command above the cryptical sting after '-u ' is my wallets address. If you run your wallet by the verium deamon (veriumd) you run

 ~/verium/src/veriumd getaddressesbyaccount ""

and your address is in the reply.

At first you might want to watch the miners output in an ssh window. The second step would be to use nohup or tmux to suppress the output and run the miner in background. Finally you can add the command to /etc/rc.local (no nohup needed there).

Once you got your address (I assume you have copied it) you are ready to choose a mining pool. The Bloxstor mining pool was my choice mainly because it has a very user friendly tool to get started. [Bloxstor Getting Started] It will guide you through the setup even better than I can and at the end it simply outputs your personal mining command.

GCC 7 Installation

Based on [1] (Building instructions: [2]

Clone binaries:

 git clone https://bitbucket.org/sol_prog/raspberry-pi-gcc-binary.git

and install them

 cd raspberry-pi-gcc-binary
 tar xf gcc-7.2.0.tar.bz2
 sudo mv gcc-7.2.0 /usr/local

Now add the new GCC to your path:

 echo 'export PATH=/usr/local/gcc-7.2.0/bin:$PATH' >> ~/.bashrc
 source ~/.bashrc

Notes

Swap File adjustment:

 sudo nano /etc/dphys-swapfile 

configure

 CONF_SWAPSIZE=100

to your desired size (100 means 100 MB).

Links

https://steemit.com/bitcoin/@dury10/miner-how-to-start-mining-verium-on-raspberry-pi-3-step-by-step-for-noobs