项目介绍:
一键脚本: 点此查看
1 wget -q https://raw.githubusercontent.com/candy1264/hemi-pop-miner/main/hemipopminer.sh -O hemipopminer.sh && chmod +x hemipopminer.sh && ./hemipopminer.sh
按顺序启动123
补充环境: 如果没有安装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=手续费 1000export POPM_BFG_URL=wss://testnet.rpc.hemi.network/v1/ws/public开启: pm2 start ./popmd --name popmd pm2 save 日志: pm2 logs popmd
成功提交哈希,如下图所示。
测试币: 你需要测试币来挖矿,少量可以去领取,大量建议购买。
水龙头:https://coinfaucet.eu/en/btc-testnet/
购买地址:https://altquick.com/swap/
网页版本: https://pop-miner.hemi.xyz/manage
创建或者导入。
记得保存好私钥。
查询工作: 当前没有发放tHEMI作为奖励,只有一个工作量证明的数据面板。
https://testnet.popstats.hemi.network/
输入钱包地址即可查看。
进阶教程: 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
效果如图所示:
本地运行: 你可以参考官方教程:CLI PoP Miner
下载windows压缩包: 我是win10的系统,大家一般下载这个。
github下载地址
下载好解压。
使用VSCode打开: 这一步是关键!使用一些编辑器打开,诸如VSCode等,切忌不要使用cmd命令行。
cmd操作会显示:
VScode操作会显示:
注意,如果没有VSCode,请去微软的官网网站下载。
该软件是免费的,收费的全部是盗版。
生成钱包: 使用官方的命令:
1 keygen.exe -secp256k1 -json -net="testnet" > %HOMEDRIVE%%HOMEPATH%\popm-address.json
但是我的显示输出:
这错误就很奇怪,因为我明明就存在keygen.exe文件。
显示钱包: 官方命令:
我的输出显示是创建钱包成功了的:
其中,最上面的是EVM地址,导入小狐狸钱包显示的就是他。
public_key是比特币测试网钱包的公钥。
public_hash是比特币测试网钱包地址,需要充值tBTC到这个地址。
我手动发送了1个,现在钱包有测试币了。
运行矿工: 对于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.
但是即使这样也无法解决,所以我询问了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
这样就成功了。
有时他会报错,请无视掉他。
只要不是1个小时一直报错就没啥大问题。
当出现Bitcoin testnet3 with TX hash 的时候就表示已经开始提交哈希了,剩下的等待节点广播,数据上链就可以了。
比特币测试网区块浏览器:https://mempool.space/testnet
这种情况需要等待上链。
现在的节点广播很慢,成功率低下。
请查询自己的矿工地址钱包进行监控,或者在上面看查询工作的数据面板。
多帐号运行: 参考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=私钥1export POPM_STATIC_FEE=1000export POPM_BFG_URL=wss://testnet.rpc.hemi.network/v1/ws/publicpm2 start ./popmd --name popmd2 export POPM_BTC_PRIVKEY=私钥2export POPM_STATIC_FEE=1000export POPM_BFG_URL=wss://testnet.rpc.hemi.network/v1/ws/publicpm2 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) " 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[@]} " export POPM_STATIC_FEE=101export POPM_BFG_URL=wss://testnet.rpc.hemi.network/v1/ws/publicecho "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 save || { echo "Failed to save pm2 state." ; exit 1; }
赋予权限(假设脚本名为jb.sh):sudo chmod 755 jb.sh
运行脚本:./jb.sh