0%

Hemi Network挖矿教程

项目介绍:

image-20240825170107663

一键脚本:

点此查看

1
wget -q https://raw.githubusercontent.com/candy1264/hemi-pop-miner/main/hemipopminer.sh -O hemipopminer.sh && chmod +x hemipopminer.sh && ./hemipopminer.sh

按顺序启动123

image-20240825170351636

补充环境:

如果没有安装Node和npm及其pm2的话。

1
2
3
4
sudo apt update
sudo apt install nodejs
sudo apt install npm
npm install -g pm2

设置手续费:

上面的脚本只启动第一项。

点此查看实时手续费

1
2
3
4
5
6
7
8
9
10
手动设置:
cd "$HOME/heminetwork"
export POPM_BTC_PRIVKEY=私钥
export POPM_STATIC_FEE=手续费 1000
export POPM_BFG_URL=wss://testnet.rpc.hemi.network/v1/ws/public
开启:
pm2 start ./popmd --name popmd
pm2 save
日志:
pm2 logs popmd

成功提交哈希,如下图所示。

image-20240825170745163

测试币:

你需要测试币来挖矿,少量可以去领取,大量建议购买。

水龙头:https://coinfaucet.eu/en/btc-testnet/

购买地址:https://altquick.com/swap/

image-20240825171458864

网页版本:

https://pop-miner.hemi.xyz/manage

image-20240825171623776

创建或者导入。

记得保存好私钥。

image-20240825171933272

查询工作:

当前没有发放tHEMI作为奖励,只有一个工作量证明的数据面板。

https://testnet.popstats.hemi.network/

输入钱包地址即可查看。

image-20240921205655661

进阶教程:

pm2是一个管理工具,使用npm安装,需要提前安装Node.js环境,设置PATH。

运行多个线程:

手动自定义名称可运行多个程序。

1
2
3
4
export POPM_BTC_PRIVKEY=私钥
export POPM_STATIC_FEE=手续费1000
export POPM_BFG_URL=wss://testnet.rpc.hemi.network/v1/ws/public
pm2 start ./popmd --name popmd2新名称

一键运行:

写1个Bash文件,运行多个线程,赋予权限,后台运行。

好处,一次性修改内容,方便管理。

钱包生成参考:https://github.com/Trusttobitcoin/Bitcoin-Testnet-HD-Wallet-Address-Generator

批量查询:

从TG群里面获取的脚本:

https://github.com/Solitude12345/HemiPoPStatsCheck

效果如图所示:

image-20240924183005282

本地运行:

你可以参考官方教程:CLI PoP Miner

下载windows压缩包:

我是win10的系统,大家一般下载这个。

github下载地址

image-20240924223238305

下载好解压。

使用VSCode打开:

这一步是关键!使用一些编辑器打开,诸如VSCode等,切忌不要使用cmd命令行。

cmd操作会显示:

image-20240924223440395

VScode操作会显示:

image-20240924223556479

注意,如果没有VSCode,请去微软的官网网站下载。

该软件是免费的,收费的全部是盗版。

生成钱包:

使用官方的命令:

1
keygen.exe -secp256k1 -json -net="testnet" > %HOMEDRIVE%%HOMEPATH%\popm-address.json

但是我的显示输出:

image-20240924224008971

这错误就很奇怪,因为我明明就存在keygen.exe文件。

显示钱包:

官方命令:

1
cat ~/popm-address.json

我的输出显示是创建钱包成功了的:

image-20240924224212926

其中,最上面的是EVM地址,导入小狐狸钱包显示的就是他。

public_key是比特币测试网钱包的公钥。

public_hash是比特币测试网钱包地址,需要充值tBTC到这个地址。

我手动发送了1个,现在钱包有测试币了。

image-20240924224448441

运行矿工:

对于windows的设置如下:

1
2
3
4
set POPM_BTC_PRIVKEY=<private_key>
set POPM_STATIC_FEE=<fee_per_vB_integer>
set POPM_BFG_URL=wss://testnet.rpc.hemi.network/v1/ws/public
popmd.exe

但是如果你真的这样设置,你会发现根本无法获取到你设置的变量内容。

报错如下:

0|popmd | POPM_BTC_PRIVKEY: must be set

如何解决这个问题?

首先,我在windows上面继续安装了pm2.

1
npm install -g pm2

但是即使这样也无法解决,所以我询问了GPT,他告诉我写1个json脚本。

他命名为: ecosystem.config.js

1
2
3
4
5
6
7
8
9
10
11
12
13
module.exports = {
apps: [
{
name: "popmd1",
script: "./popmd.exe",
env: {
POPM_BTC_PRIVKEY: "你的私钥",
POPM_STATIC_FEE: "2",
POPM_BFG_URL: "wss://testnet.rpc.hemi.network/v1/ws/public",
},
},
],
};

然后你在终端里面输入:

1
pm2 start ecosystem.config.js

这样就成功了。

image-20240924230754451

有时他会报错,请无视掉他。

只要不是1个小时一直报错就没啥大问题。

image-20240924230949007

当出现Bitcoin testnet3 with TX hash 的时候就表示已经开始提交哈希了,剩下的等待节点广播,数据上链就可以了。

比特币测试网区块浏览器:https://mempool.space/testnet

image-20240924231212841

这种情况需要等待上链。

现在的节点广播很慢,成功率低下。

请查询自己的矿工地址钱包进行监控,或者在上面看查询工作的数据面板。

多帐号运行:

参考pm2多开教程。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
pm2的基础使用命令:
启动单个应用:
pm2 start app.js

列出所有应用:
pm2 list

查看单个应用:
pm2 show [app-name or id]

停止应用:
pm2 stop [app-name or id]

重启应用:
pm2 restart [app-name or id]

删除应用:
pm2 delete [app-name or id]

查看单个应用日志:
pm2 logs [app-name or id]

查看错误日志:
pm2 logs --err

保存进程列表:
pm2 save

重启系统后恢复:
pm2 resurrect

监控应用:
pm2 monit

最简单的,重复设置不同的私钥:

1
2
3
4
5
6
7
8
9
export POPM_BTC_PRIVKEY=私钥1
export POPM_STATIC_FEE=1000
export POPM_BFG_URL=wss://testnet.rpc.hemi.network/v1/ws/public
pm2 start ./popmd --name popmd2

export POPM_BTC_PRIVKEY=私钥2
export POPM_STATIC_FEE=1000
export POPM_BFG_URL=wss://testnet.rpc.hemi.network/v1/ws/public
pm2 start ./popmd --name popmd3

高级内容,读取本地key.txt文本:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#!/bin/bash

# 手动设置后面所需的环境变量和启动命令
cd "$HOME/heminetwork" || { echo "Error: Directory $HOME/heminetwork does not exist."; exit 1; }

# 输出当前工作目录
echo "Current directory: $(pwd)"

# 从 key.txt 文件中读取私钥
mapfile -t private_keys < key.txt # 将文件的每一行读取到数组中

# 检查读取的私钥是否为空
if [ ${#private_keys[@]} -eq 0 ]; then
echo "Error: No private keys found in key.txt. Please check the file."
exit 1
fi

# 输出私钥的数量
echo "Number of private keys found: ${#private_keys[@]}"

# 设置静态费用和 URL
export POPM_STATIC_FEE=101
export POPM_BFG_URL=wss://testnet.rpc.hemi.network/v1/ws/public

# 输出环境变量
echo "POPM_STATIC_FEE: $POPM_STATIC_FEE"
echo "POPM_BFG_URL: $POPM_BFG_URL"

# 循环启动进程
for i in "${!private_keys[@]}"; do
export POPM_BTC_PRIVKEY=${private_keys[$i]}
echo "Starting process for private key ${i+1}: ${POPM_BTC_PRIVKEY}"
pm2 start ./popmd --name news$((i+1)) || { echo "Failed to start pm2 process for key ${i+1}."; exit 1; }
done

# 保存 pm2 状态
pm2 save || { echo "Failed to save pm2 state."; exit 1; }

赋予权限(假设脚本名为jb.sh):sudo chmod 755 jb.sh

运行脚本:./jb.sh