Miner.farm Crypto Currency Community Forum
Browse and post your favorite coin/crypto news, miner.farm and PiMP OS updates and announcements, mining guides, overclocking tips, and more...
- Configuring the rig: Help / Getting started videos
- How to fix problems: Coin strategy guides
- Keys and Downloads: your Miner.farm account page
- Post your rig pics to the rig showcase so we can all check out your awesome builds!
- Please subscribe/like/follow us on social media
Doc's Android Cluster
So, I was doing some cleaning up of my old junk hardware and ran across the family's old cell phones - 5 old Samsung Galaxy J7's just sitting in a box collecting dust. I couldn't bring myself to just toss them into the trash, so I headed to Google to see what I might be able to do with them. Let me save you some time... there's not much they'd be good for.
With no good options, I wondered if I could get them mining. No, I don't care that they won't make me rich - that's not the reason I do this.
Before I could begin, I needed to know what kind of hardware I was dealing with. A quick check online for these phones (model number "SM-J700T") says that they have
2GB of RAMand a
Exynos 7580 CPUwhich is an 8 Core/8 Thread ARM-Cortex-A53 (ARMv8) 28nm chip.
Next step was to figure out how to get Linux installed on these phones. The fastest and easiest way I found was to use an Android app called "Linux Deploy". The only catch is that to make this work, the devices must be rooted.
I'm not going to go over the exact details, but what had to do to each device is:
- Factory Reset
- Update to the Newest Android
- Unlock the Bootloader
- Flash TWRP Recovery
- Root the Device
- Install "Linux Deploy"
- Configure/Install and Start Ubuntu for arm64 (see bottom of post)
- Compile/Build XMRig for ARMv8 (see bottom of post)
At this point I configured XMRig to use 6 of the 8 cores and fired it up to mine LOKI on the RandomX algo (
rx/loki). Simple tests showed that each device was pushing between 40 - 50 h/s, however, this is a bit too low for most pools and device timeouts will occur.
At this point I thought I was done with this experiment, but just before "throwing in the towel", I ran across another piece of software from the XMRig developer called
As its name suggests, it acts as a proxy for other miners. The idea is simple: The proxy runs on one machine and connects to the pool. External miners get setup to connect to the proxy instead of a pool. The proxy's job is to control the workflow to and from the pool to the actual mining devices (the phones in this case).
Score! This is exactly what I needed to keep these weaker devices going.
xmrig-proxyto PiMP OS was pretty easy. I compiled/built it like it was a normal miner and put it in
/opt/miners/xmrig-proxy. Next, I created a
xmrig-proxy.pcfgand added it to the
minerfarmI added a custom miner - pointing to the
PiMP OS fired this off without a problem. At this point, I just pointed each of the devices to the PiMP rig and away it went.
Here's what it looks like with everything working.
xmrig-proxyrunning on PiMP OS v2.15 and the 5 phones connected.
Here it is reporting to the pool!
Okay, so now let's go over the efficiency of all this.
To avoid skewed data, I'm using my trusty little USB power meter on a single device that is fully charged. This way we will only be seeing what power is needed to keep the device running since some phones have "boost charging" abilities depending upon how low the battery is. We want to avoid getting our readings from any "boost" charging. Basically, we only want to measure what the device is pulling in order to keep the battery topped off while it is mining. This is what is being pulled from the wall.
Node00 Power Node00 XMRig
The measurement from Node00 is jumping between 1.5w and 2.8w, so we'll just call it 2.15w for now. Checking XMRig directly from the device, Node00 it is reporting 44.4h/s. Some simple math shows us that we are pulling 17.76 hashes per watt per second (h/w/s).
For comparison, let's see how that stacks up against other common hardware. Note: Overhead Power is just an estimated amount of extra power needed just to run the system. This has to be taken into consideration since you can't just run a CPU or GPU without the rest of the computer.
H/W/Scolumn gives the overall device efficiency (higher is better).
Hardware $/Hgives the initial investment efficiency (lower is better).
Power $/daygives the daily operating cost based upon $0.11/kwh (lower is better).
The last three columns are from WhatToMine's calculation run on 1/1/2020.
Device Hashrate (H/S) Power (W) Overhead (W) H/W/S Hardware (Used) Hardware $/H Coins/day Power $/day Profit $/day J7 44.4 2.15 0 20.65 $79 $1.78 0.008091 $0.005160 $0.00 5x J7 222 10.75 $395 0.040425 $0.0258 -$0.01 CPU's AMD EPYC 7742 44000 225 60 154.39 $5000 $0.11 8.005430 $0.75 $2.35 THREADRIPPER 3970X 27703 280 60 81.48 $2000 $0.07 5.041909 $0.90 $1.06 2X XEON E5-2698V4 13200 270 60 40 $596 $0.05 2.403054 $0.87 $0.06 INTEL G4400 402 49 60 3.69 $40 $0.10 0.073202 $0.29 -$0.26 GPU's GTX 1080 TI 1000 200 120 3.13 $450 $0.45 0.181945 $0.84 -$0.77 RADEON VII 1710 280 120 4.28 $494 $1.76 0.311121 $1.06 -$0.94 AMD RX 570 496 90 120 2.36 $94 $0.19 0.090245 $0.55 -$0.52
- Distribution: Ubuntu
- Architecture: arm64
- Distribution Suite: bionic
- User Name: root
- Privileged Users: root
- INIT: enabled
- SSH: enabled
- SSH Port: 2022 (Android blocks the default 22)
XMRig Build for ARMv8 (or ARMv7)
apt install git build-essential cmake libuv1-dev libssl-dev libhwloc-dev htop screen nano libhwloc-dev
git clone https://github.com/xmrig/xmrig.git
cd xmrig && mkdir build && cd build
cmake -DARM_TARGET=8 ..
cmake -DARM_TARGET=7 ..
XMRig Start Script
This will launch XMRig in a screen, just like PiMP OS does, so you can disconnect and reconnect without killing the miner. Connect with
screen -rand disconnect with
- To mine via
xmrig-proxyrunning on another machine:
#!/bin/bash screen -wipe screen -dm /<path to xmrig>/xmrig -o <URL>:<port> -l /var/log/xmrig.log --donate-level 1 --rig-id <workerid> screen -r
- To mine directly to a pool:
#!/bin/bash screen -wipe screen -dm /<path to xmrig>/xmrig -o <poolURL>:<port> -u <walletaddress> -p <workerid> -l /var/log/xmrig.log --donate-level 1 --api-id <workerid> screen -r
Save and exit the editor.
Now make the script executable with the following:
chmod +x start.sh
Starting, Stopping, Connecting, Disconnecting
- Start -
- Disconnect -
- Reconnect -
- Stop -
CTL+cfrom miner screen.
We promise to keep your email safe and never spam you.
© 2014-2020 Miner.farm | By Miners, For Miners | Portable Instant Mining Platform, LLC