Files
scripts/MINE/rin
2025-09-02 11:21:34 +03:00
..
2025-09-02 09:55:24 +03:00
2025-09-02 09:55:24 +03:00
2025-09-02 11:21:34 +03:00
2025-09-02 09:55:24 +03:00
2025-09-02 11:21:34 +03:00
2025-09-02 09:55:24 +03:00
2025-09-02 09:55:24 +03:00
2025-09-02 09:55:24 +03:00

RinCoin Solo Mining Setup Complete! 🎉

Successfully Built and Running:

1. RinCoin Node Container

  • Container: rincoin-node (ID: 87b5f74a2472)
  • Status: RUNNING
  • Ports: 9555 (P2P), 9556 (RPC)
  • Version: v1.0.1.0-5cf3d4a11
  • Sync Status: FULLY SYNCED (blocks: 228,082, headers: 228,082)

2. Wallet Setup

  • Wallet Name: main
  • Default RinCoin Address: rin1qahvvv9d5f3443wtckeqavwp9950wacxfmwv20q
  • RPC Credentials:
    • User: rinrpc
    • Password: 745ce784d5d537fc06105a1b935b7657903cfc71a5fb3b90

3. Configuration Files

  • Config: /mnt/data/docker_vol/rincoin/rincoin-node/rincoin.conf
  • Data Directory: /mnt/data/docker_vol/rincoin/rincoin-node/data
  • Docker Compose: MINE/rin/container.yml

🚀 Ready for Solo Mining:

Pool Mining (Zergpool)

# CPU Mining RinHash to BTC
sudo docker exec -it amd-strix-halo-llama-rocm bash -c "/mnt/dl/rinhash/cpuminer-opt-rin/cpuminer -a rinhash -o stratum+tcp://rinhash.mine.zergpool.com:7148 -u bc1qjn4m6rmrveuxhk02a5qhe4r6kdcsvvt3vhdn9j -p c=BTC,mc=RIN,ID=StrixHalo -t 32"

Solo Mining (Local Node)

# Solo mining with default address and all cores
bash MINE/rin/solo_mining_core.sh

# Solo mining with custom address and thread count
bash MINE/rin/solo_mining_core.sh -a rin1qkeweeh2agurz5af3eullkvtl34kcmrwl2ytkvn -t 16

# Solo mining with 28 threads (like your cpuminer attempt)
bash MINE/rin/solo_mining_core.sh -t 28

Why cpuminer-opt-rin Can't Mine Directly to Node

# This command will fail:
sudo docker exec -it amd-strix-halo-llama-rocm bash -c "/mnt/dl/rinhash/cpuminer-opt-rin/cpuminer -a rinhash -o http://127.0.0.1:9556 -u rinrpc -p 745ce784d5d537fc06105a1b935b7657903cfc71a5fb3b90 -t 28 --coinbase-addr=bc1qjn4m6rmrveuxhk02a5qhe4r6kdcsvvt3vhdn9j"

# Reason: Protocol mismatch
# - cpuminer-opt-rin uses Stratum protocol (for mining pools)
# - RinCoin node uses RPC protocol (for direct mining)
# - No built-in protocol conversion available

** we do not need a container for the cpu, so we can run it directly if we want**

  1. we run stratum proxy ./MINE/rin/start_stratum_proxy.sh
  2. we run the cpuminer /home/db/Downloads/rinhash/cpuminer-opt-rin/cpuminer -a rinhash -o stratum+tcp://127.0.0.1:3333 -u user -p pass -t 28

Mining Options Explained

  1. Built-in Core Mining: Uses RinCoin's generatetoaddress RPC command
  2. Pool Mining: Uses cpuminer-opt-rin with Stratum pools (Zergpool)
  3. Direct RPC Mining: Would require custom miner implementing getblocktemplate

build image

sudo bash -lc "cd /mnt/shared/DEV/repos/d-popov.com/scripts/MINE/rin && docker build -t rincoin-node:latest . | cat"

start container

sudo docker run -d --name rincoin-node
-p 9555:9555 -p 9556:9556
-v /mnt/data/docker_vol/rincoin/rincoin-node/data:/data
-v /mnt/data/docker_vol/rincoin/rincoin-node/rincoin.conf:/data/rincoin.conf:ro
rincoin-node:latest -datadir=/data -conf=/data/rincoin.conf -printtoconsole

check if running

curl --user rinrpc:745ce784d5d537fc06105a1b935b7657903cfc71a5fb3b90 -H 'content-type: text/plain' --data '{"jsonrpc":"1.0","id":"curl","method":"getblockchaininfo","params":[]}' http://127.0.0.1:9556/

get wallet

sudo docker exec rincoin-node rincoin-cli -datadir=/data -conf=/data/rincoin.conf createwallet "main" sudo docker exec rincoin-node rincoin-cli -datadir=/data -conf=/data/rincoin.conf -rpcwallet=main getnewaddress rin1qahvvv9d5f3443wtckeqavwp9950wacxfmwv20q

# Solo mining to your RinCoin wallet
./MINE/rin/solo_mining.sh

📊 Performance Comparison:

Mining Type Algorithm Hashrate Target Status
Pool Mining RinHash ~80 kH/s Zergpool Working
Solo Mining RinHash Built-in CPU Local Node Working
GPU Mining Equihash 125,4 28.8 Sol/s Zergpool Working

🔧 Management Commands:

Node Management

# Start node
sudo docker start rincoin-node

# Stop node  
sudo docker stop rincoin-node

# View logs
sudo docker logs -f rincoin-node

# Check sync status
sudo docker exec rincoin-node rincoin-cli -datadir=/data -conf=/data/rincoin.conf getblockchaininfo

Wallet Management

# Get new address
sudo docker exec rincoin-node rincoin-cli -datadir=/data -conf=/data/rincoin.conf -rpcwallet=main getnewaddress

# Check balance
sudo docker exec rincoin-node rincoin-cli -datadir=/data -conf=/data/rincoin.conf -rpcwallet=main getbalance

RPC Access

# Test RPC connection
curl --user rinrpc:745ce784d5d537fc06105a1b935b7657903cfc71a5fb3b90 \
  -H 'content-type: text/plain' \
  --data '{"jsonrpc":"1.0","id":"curl","method":"getblockchaininfo","params":[]}' \
  http://127.0.0.1:9556/

# Get new address via RPC
curl --user rinrpc:745ce784d5d537fc06105a1b935b7657903cfc71a5fb3b90 \
  -H 'content-type: text/plain' \
  --data '{"jsonrpc":"1.0","id":"curl","method":"getnewaddress","params":[]}' \
  http://127.0.0.1:9556/

⚠️ Important Notes:

  1. Node Sync: COMPLETE - Node is fully synced and ready
  2. Solo Mining: Very low chance of finding blocks solo. Consider pool mining for consistent rewards.
  3. RPC Access: WORKING - RPC is accessible on port 9556
  4. Address Parameter: Solo mining script accepts custom addresses or uses default

🎯 Next Steps:

  1. Node is synced - Ready for all operations
  2. Choose mining strategy: Pool mining for consistent income vs Solo mining for block rewards
  3. Monitor performance and adjust thread count as needed
  4. Set up monitoring for node health and mining performance