---
title: "BZminer. Download BZ miner"
description: "BZminer is an increasingly popular miner for NVIDIA and AMD video cards. Supports many algorithms. The dev fee is one of the lowest on the market."
canonical_url: "https://woolypooly.com/en/best-mining-software/bzminer"
locale: en
meta:
  "og:description": "BZminer is an increasingly popular miner for NVIDIA and AMD video cards. Supports many algorithms. The dev fee is one of the lowest on the market."
  "og:image": "https://woolypooly.com/_ipx/_/content/ogimage.jpg"
  "og:title": "BZminer. Download BZ miner"
  "twitter:image": "https://woolypooly.com/_ipx/_/content/ogimage.jpg"
---

> Index of every page on this site: [llms.txt](https://woolypooly.com/llms.txt)

# **BZminer. Download BZ miner**

**Latest release**

## Release v100.51 of bzminer

All feedback is welcome ;)

- **NEW** DUAL MINING PEARL + C29! (Nvidia only, see below)
- c29 improvement on 6gb gpus
- fixed (again) amd gpus not mining on mmpos
- bc250 enabled cu's are now opt-in
- bc250 now allows core lock below 1500
- updated docs to explain more about bc250 options

### Pearl + C29

- dual pearl + c29, not all cards did well in this iteration and will need further updates, below is the table of tested cards

| **GPU** | **Dual Pearl TH/s** | **Dual C29 graphs/s** | **Watts** | **Combined baseline %** | **Normalized efficiency %** |
| --- | --- | --- | --- | --- | --- |
| 3060 Ti | 51.640 | 0.317 | 117.20 | **97.74%** | 86.96% |
| 3080 | 72.268 | 3.557 | 214.79 | **121.29%** | 94.51% |
| 3090 | 89.433 | 4.137 | 278.18 | **125.13%** | 95.40% |
| 4070 Ti SUPER† | 77.841 | 1.433 | 105.07 | **71.64%** | 94.45% |
| 4090 | 215.109 | 7.467 | 332.28 | **147.76%** | 103.83% |
| 5060 Ti | 44.848 | 0.309 | 91.26 | **59.27%** | 69.87% |
| 5090 | 263.398 | 13.901 | 600.01 | **112.30%** | 104.97% |
| CMP 170HX | 115.542 | 3.015 | 178.37 | **100.33%** | 101.12% |

Combined baseline is based on how much hashrate you get with pearly on its own and how much hashrate you get with c29 on its own (200% would be if neither algo had a loss in hashrate while dual mining)

oc's tested with:

| **GPU** | **Core lock** | **Memory lock** |
| --- | --- | --- |
| 3060 Ti | 1500 MHz | 5001 MHz |
| 3080 | 1500 MHz | 5001 MHz |
| 3090 | 1500 MHz | 5001 MHz |
| 4070 Ti SUPER | 2370 MHz | 5001 MHz |
| 4090 | 2370 MHz | 5001 MHz |
| 5060 Ti | approximately 2392 MHz | 7001 MHz |
| 5090 | Stock tested | Stock tested |

### Pearl + C29: Windows, Linux and HiveOS

Open `**start_pearl_c29.bat**` on Windows or `**start_pearl_c29.sh**` on Linux. Edit both XMR wallet placeholders first; the same Monero address can receive both payouts. Passwords `**rig1-pearl~pearl**` and `**rig1-c29~c29**` select each algorithm at MoneroOcean. The macOS example reports that C29 has no Apple GPU backend and exits.

```sh
./bzminer -a pearl,c29 --nvidia 1 --cpu 0 --p1 stratum+tcp://gulf.moneroocean.stream:10128 --w1 4YOUR_MONERO_WALLET_HERE --worker1 "" --pass1 rig1-pearl~pearl --p2 stratum+tcp://gulf.moneroocean.stream:10128 --w2 4YOUR_MONERO_WALLET_HERE --worker2 "" --pass2 rig1-c29~c29
```

Use `**bzminer.exe**` instead of `**./bzminer**` on Windows. Allow several minutes for calibration; no duplicate-device or kernel-selection option is needed.

In **HiveOS**, select `**pearl**` (or `**pearlhash**`) as the main hash algorithm. Use a bare XMR wallet, pool `**gulf.moneroocean.stream:10128**`, password `**rig1-pearl~pearl**`. In **Extra config arguments**, add this, replacing the second wallet:

```text
--a2 c29 --p2 stratum+tcp://gulf.moneroocean.stream:10128 --w2 4YOUR_MONERO_WALLET_HERE --worker2 "" --pass2 rig1-c29~c29 --nvidia 1 --cpu 0
```

`**--a2**` adds C29 without replacing HiveOS's main algorithm; `**--worker2 ""**` keeps its XMR login bare. This example uses NVIDIA GPUs and disables CPU mining.

---

Mines **Tari**, **Conceal**, **Ryo**, **Ergo**, **Ethereum Classic**, **EthereumPoW**, **Ravencoin**, **Neurai**, **Neoxa**, **Meowcoin**, **Clore**, **nexa**, **Pearl**, **Quantus**, **Monero, Zephyr, Salvium**, **VERUS**, **Warthog** and **XELIS**, and ships **sha256d** as the open-source SDK example.

## Downloads

| **file** | **size** | **SHA-256** |
| --- | --- | --- |
| `**bzminer_v100.51_windows.zip**` | 44.1 MB | `**f794159d4e20134519e9056f52dd366e77743078c9ffe5d2346d14c813b73a10**` |
| `**bzminer_v100.51_linux.tar.gz**` | 44.4 MB | `**dc2001f4bdcee6892b5a9cb8c96a44ddc12d17755fed360eca8917d0d2535ce5**` |
| `**bzminer_custom-v100.51.tar.gz**` | 44.4 MB | `**28fcbf0cf0ee4d746242ca9674e84669ac5401e4f9260ab1c7c02fef29f1007e**` |
| `**bzminer_v100.51_docker.tar.gz**` | 13.4 KB | `**34bed32a357af955622ff6147d4071a4b7cbad4583d6ca852878f0f7ee7055f4**` |
| `**bzminer_v100.51_macos.tar.gz**` | 56.7 MB | `**9b6a52f36a47a3ce2384317a3acdeaf0d24194a85351fc6271e527c274619ca3**` |

Verify before running:

```bash
# Linux / macOS
sha256sum -c <<< "<hash>  <file>"

# Windows (PowerShell)
Get-FileHash .\<file> -Algorithm SHA256
```

A checksum only proves the file is the one that was published — always download from the official release page.

## Getting started

1. Unpack the archive for your platform.
2. Open a `**start_<algo>**` script and replace the placeholder wallet with your own.
3. Run it, then open [**http://127.0.0.1:4014/**](http://127.0.0.1:4014/) for the dashboard.

`**readme.txt**` inside each archive has the full quick start, the common options, and the hardware-safety settings. `**config.txt**` is a commented copy of *every* setting, generated from the shipped binary, so it always matches the build you have.

**`**config.txt**` may be JSON or a command line.** The shipped file is JSON — every setting inside one `**{ }**` object. bzminer equally accepts the same file written as the options you would have typed, which is what a mining OS generates and the easier form to write by hand:

```text
# one option per line, or a flag and its value on one line
-a pearl
-p stratum+tcp://pool:1234
-w YOUR_WALLET
--worker "My Rig"
```

Quote a value containing a space, and start a comment with `**#**`. An option you type on the command line beats the file's copy of it, so the file is a default you can override without editing it.

## Docker

There is an image, and it carries the GPU userspace as well as the miner - no ROCm install, no driver packages, nothing on the host but a kernel driver:

```bash
docker pull bzminer/bzminer:v100.51
docker run --rm -it --gpus all bzminer/bzminer -a pearl -o stratum+tcp://pool:port -w YOUR_WALLET
```

The identical image is on GitHub as `**ghcr.io/bzminer/bzminer:v100.51**` if you would rather not pull from Docker Hub.

Or keep your config, log and plugins on the host and run it as a service:

```bash
docker run -d --name bzminer --restart unless-stopped --gpus all \
    -v /opt/bzminer:/data -p 127.0.0.1:4014:4014 \
    bzminer/bzminer --set http_address=0.0.0.0
```

With no arguments it runs `**/data/config.txt**`; anything you pass goes straight to bzminer, so every command line on this page works unchanged. `**http_address**` has to be `**0.0.0.0**` for the dashboard, because the default `**127.0.0.1**` binds the *container's* loopback, which no published port can reach.

**GPU flags differ per vendor.** NVIDIA is `**--gpus all**` (with nvidia-container-toolkit on the host). AMD and Intel are `**--device /dev/kfd --device /dev/dri --group-add video --group-add render**` and `**--device /dev/dri**`. Overclocking, MSR tuning and huge pages additionally need `**--privileged**`; mining does not.

Update with a pull, not the miner's self-update - and the old tag stays published, so a rollback is just naming it:

```bash
docker pull bzminer/bzminer && docker restart bzminer
```

The binary inside the image is byte-identical to the one in `**bzminer_v100.51_linux.tar.gz**` above. Full documentation: `**docker run --rm bzminer/bzminer cat /opt/bzminer/docs/DOCKER.md**`.

## Updating on a mining OS

Both fetch this exact version, so they can be pasted as-is - the version below is already the one on this page.

### MMPOS

Put this in **miner profile → advanced → "Initiate command prior to miner launch"**. It downloads once; on every later launch the `**if**` sees the archive already in `**/tmp**` and exits immediately, so it costs nothing per restart.

```bash
export version="v100.51"
if [ -f "/tmp/bzminer_${version}_linux.tar.gz" ]; then
exit 0
else
cd /tmp; wget https://github.com/bzminer/bzminer/releases/download/${version}/bzminer_${version}_linux.tar.gz; tar -xvf bzminer_${version}_linux.tar.gz; sudo cp -adpR bzminer_${version}_linux/bzminer /opt/mmp/miners/bzminer/
fi
```

### Hive OS custom miner

The Linux release now includes `**bzminer_custom-v100.51.tar.gz**`, a complete Hive OS custom miner: the full bzminer binary, flight-sheet config adapter, log launcher, and native `**/hive_status**` reporting.

1. Click **Copy** on the Flight Sheet JSON below.
2. Open the Hive OS farm page that lists all workers.
3. Open the **Flight Sheets** tab.
4. Click **Import from Clipboard**.
5. Create/save the flight sheet and **add your PEARL wallet**.
6. Apply the flight sheet to the workers.

The sample mines Pearl on HeroMiners. Change `**url**`, `**pool_urls**`, `**algo**`, and `**coin**` for another pool or algorithm. The package maps those fields, `**%WAL%**`, the Hive worker name, and `**pass**` directly to bzminer. Put optional bzminer CLI arguments in `**user_config**`.

#### **Flight Sheet JSON**

```json
{
  "name": "PEARL_BZMINER_CUSTOM",
  "isFavorite": false,
  "items": [
    {
      "coin": "PEARL",
      "pool_ssl": false,
      "pool_urls": [
        "us.pearl.herominers.com:1200"
      ],
      "dpool_ssl": false,
      "miner": "custom",
      "miner_alt": "bzminer_custom",
      "miner_config": {
        "url": "us.pearl.herominers.com:1200",
        "algo": "pearl",
        "pass": "x",
        "miner": "bzminer_custom",
        "template": "%WAL%",
        "install_url": "https://github.com/bzminer/bzminer/releases/download/v100.51/bzminer_custom-v100.51.tar.gz",
        "user_config": ""
      },
      "pool_geo": []
    }
  ]
}
```

### Hive OS built-in miner (manual binary replacement)

Run it over SSH or in the Hive web shell.

You do **not** need to know which bzminer version is installed. Hive keeps one folder per version under `**/hive/miners/bzminer/**`, and the flight sheet decides which one runs - so this replaces the binary in *every* bzminer folder it finds and whichever one your flight sheet points at gets the new build. That is the whole reason it does not name a version directory.

```bash
version=v100.51
cd /tmp && wget -q https://github.com/bzminer/bzminer/releases/download/${version}/bzminer_${version}_linux.tar.gz && tar -xf bzminer_${version}_linux.tar.gz || { echo "download failed"; exit 1; }
miner stop
n=0; for d in /hive/miners/bzminer/*/; do [ -d "$d" ] && cp -f "bzminer_${version}_linux/bzminer" "$d" && n=$((n+1)); done
[ "$n" -gt 0 ] && echo "updated $n bzminer folder(s)" || echo "no /hive/miners/bzminer/<version>/ found - install bzminer from the flight sheet first"
miner start
```

It prints how many folders it updated. `**0**` means bzminer has never been installed from a flight sheet on that rig, so there is nothing to replace yet.

## Reporting problems

Please include: your OS, GPU model(s) and driver version, the algorithm and pool, and the first \~40 lines of the log (it prints the build, the devices it found, and what each backend reported). `**--list-metrics**` output helps for sensor issues.

**Downloads**

[**bzminer\_v100.51\_windows\_plugins.zip**](https://github.com/bzminer/bzminer/releases/download/v100.51/bzminer_v100.51_windows_plugins.zip)

[**bzminer\_v100.51\_windows.zip**](https://github.com/bzminer/bzminer/releases/download/v100.51/bzminer_v100.51_windows.zip)

[**bzminer\_v100.51\_macos.tar.gz**](https://github.com/bzminer/bzminer/releases/download/v100.51/bzminer_v100.51_macos.tar.gz)

[**bzminer\_v100.51\_linux.tar.gz**](https://github.com/bzminer/bzminer/releases/download/v100.51/bzminer_v100.51_linux.tar.gz)

[**bzminer\_v100.51\_docker.tar.gz**](https://github.com/bzminer/bzminer/releases/download/v100.51/bzminer_v100.51_docker.tar.gz)

[**bzminer\_custom-v100.51.tar.gz**](https://github.com/bzminer/bzminer/releases/download/v100.51/bzminer_custom-v100.51.tar.gz)

## **Bzminer .bat File Examples**

###

```
bzminer.exe -a ethw -w WALLET_ADDRESS.WORKER_NAME -p stratum+tcp://pool.woolypooly.com:3096
```

###

```
bzminer.exe -a etchash -w WALLET_ADDRESS.WORKER_NAME -p stratum+tcp://pool.woolypooly.com:35000
```

###

```
bzminer.exe -a kaspa -w WALLET_ADDRESS.WORKER_NAME -p stratum+tcp://pool.woolypooly.com:3112
```

###

```
bzminer.exe -a ergo -w WALLET_ADDRESS.WORKER_NAME -p stratum+tcp://pool.woolypooly.com:3100
```

###

```
bzminer.exe -a nexa -w WALLET_ADDRESS.WORKER_NAME -p stratum+tcp://pool.woolypooly.com:3124
```

###

```
bzminer.exe -a kawpow -w WALLET_ADDRESS.WORKER_NAME -p stratum+tcp://pool.woolypooly.com:55555
```

###

```
bzminer.exe -a meowcoin -w WALLET_ADDRESS.WORKER_NAME -p stratum+tcp://pool.woolypooly.com:3116
```

###

```
bzminer.exe -a alph -w WALLET_ADDRESS.WORKER_NAME -p stratum+tcp://pool.woolypooly.com:3106
```

###

```
bzminer.exe -a radiant -w WALLET_ADDRESS.WORKER_NAME -p stratum+tcp://pool.woolypooly.com:3122
```

###

```
bzminer -a novo -p stratum+tcp://pool.woolypooly.com:3134 -w YOUR_WALLET.WORKER_NAME --nc 1
```

###

```
bzminer.exe -a ethw -w WALLET_ADDRESS_ETHW.WORKER_NAME -p stratum+tcp://pool.woolypooly.com:3096 --a2 alph --w2 WALLET_ADDRESS_ALPH.WORKER_NAME --p2 stratum+tcp://pool.woolypooly.com:3106
```

###

```
bzminer -a etchash -w WALLET_ADDRESS_ETC.WORKER_NAME -p stratum+tcp://pool.woolypooly.com:35000 --a2 alph --w2 WALLET_ADDRESS_ALPH.WORKER_NAME --p2 stratum+tcp://pool.woolypooly.com:3106
```

###

```
bzminer -a ethw -w WALLET_ADDRESS_ETHW.WORKER_NAME -p stratum+tcp://pool.woolypooly.com:3096 --a2 alph --w2 WALLET_ADDRESS_ALPH.WORKER_NAME --p2 stratum+tcp://pool.woolypooly.com:3106 --a3 zil --w3 WALLET_ADDRESS_ZIL.WORKER_NAME --p3 zmp://ZIL_POOL
```

###

```
bzminer -a etchash -w WALLET_ADDRESS_ETC.WORKER_NAME -p stratum+tcp://pool.woolypooly.com:35000 --a2 alph --w2 WALLET_ADDRESS_ALPH.WORKER_NAME --p2 stratum+tcp://pool.woolypooly.com:3106 --a3 zil --w3 WALLET_ADDRESS_ZIL.WORKER_NAME --p3 zmp://ZIL_POOL
```

###

```
bzminer -a ethw -w WALLET_ADDRESS_ETHW.WORKER_NAME -p stratum+tcp://pool.woolypooly.com:3096 --a2 kaspa --w2 WALLET_ADDRESS_KAS.WORKER_NAME --p2 stratum+tcp://pool.woolypooly.com:3112
```

###

```
bzminer -a etchash -w WALLET_ADDRESS_ETC.WORKER_NAME -p stratum+tcp://pool.woolypooly.com:35000 --a2 kaspa --w2 WALLET_ADDRESS_KAS.WORKER_NAME --p2 stratum+tcp://pool.woolypooly.com:3112
```

###

```
bzminer -a ethw -w WALLET_ADDRESS_ETHW.WORKER_NAME -p stratum+tcp://pool.woolypooly.com:3096 --a2 kaspa --w2 WALLET_ADDRESS_KAS.WORKER_NAME --p2 stratum+tcp://pool.woolypooly.com:3112 --a3 zil --w3 WALLET_ADDRESS_ZIL.WORKER_NAME --p3 zmp://ZIL_POOL
```

###

```
bzminer -a etchash -w WALLET_ADDRESS_ETC.WORKER_NAME -p stratum+tcp://pool.woolypooly.com:35000 --a2 kaspa --w2 WALLET_ADDRESS_KAS.WORKER_NAME --p2 stratum+tcp://pool.woolypooly.com:3112 --a3 zil --w3 WALLET_ADDRESS_ZIL.WORKER_NAME --p3 zmp://ZIL_POOL
```

###

```
bzminer -a ethw -w WALLET_ADDRESS_ETHW.WORKER_NAME -p stratum+tcp://pool.woolypooly.com:3096 --a2 radiant --w2 WALLET_ADDRESS_RXD.WORKER_NAME --p2 stratum+tcp://pool.woolypooly.com:3122
```

###

```
bzminer -a etchash -w WALLET_ADDRESS_ETC.WORKER_NAME -p stratum+tcp://pool.woolypooly.com:35000 --a2 radiant --w2 WALLET_ADDRESS_RXD.WORKER_NAME --p2 stratum+tcp://pool.woolypooly.com:3122
```

###

```
bzminer -a ethw -w WALLET_ADDRESS_ETHW.WORKER_NAME -p stratum+tcp://pool.woolypooly.com:3096 --a2 radiant --w2 WALLET_ADDRESS_RXD.WORKER_NAME --p2 stratum+tcp://pool.woolypooly.com:3122 --a3 zil --w3 WALLET_ADDRESS_ZIL.WORKER_NAME --p3 zmp://ZIL_POOL
```

###

```
bzminer -a etchash -w WALLET_ADDRESS_ETC.WORKER_NAME -p stratum+tcp://pool.woolypooly.com:35000 --a2 radiant --w2 WALLET_ADDRESS_RXD.WORKER_NAME --p2 stratum+tcp://pool.woolypooly.com:3122 --a3 zil --w3 WALLET_ADDRESS_ZIL.WORKER_NAME --p3 zmp://ZIL_POOL
```

## **Bzminer Setup**

Download the latest Bzminer from the link above. After that, extract the archive and go to the folder with the miner. Select the coin you are interested in for mining and edit the .bat file. If you have not yet chosen what you want to mine, then we recommend that you first go to our [mining calculator](https://woolypooly.com/en/calc/what-to-mine-gpu), where you can specify your video card and get the most profitable coin for the current day. Above you will find ready-made examples of bat files for each coin that you can mine on our pool. You will only have to specify your wallet address and, if desired, the name of the worker (rig).

## **Bzminer Basic Commands**

**-a, -a2** selection of algorithm for main and dual mining;  
**--disable** disables the specified video cards from mining. A space is used as a separator. Use the device ID in the format pci\_bus:pci\_device (eg --disable 1:0 3:0). Use the **--devices** command to find the device IDs. In HiveOS, this parameter is set in the add. configuration;  
**-w** this field specifies the address of your wallet or the address of the account on the pool;  
**--w2** to specify the second address if you mine in dual mode;  
**--pool\_password, --pool\_password2** password, use x by default;  
**-w, --worker, --worker2** worker name (rig ). It is set either as a separate parameter or through a dot after the wallet address;  
**--cpu-priority** the level of CPU utilization during mining on a video card. The default is set to 2. If the processor does not pull, you can set 0. The maximum value is 5;  
**--reconnect-on-fail-shares** reconnect the miner to the pool in case of receiving rejected shares from the pool ;  
**--nvidia 1**mine only on Nvidia devices;  
**--amd 1**mine only on AMD devices;  
**-h, --help** display all available commands.

## **Bzminer Overclocking**

**--oc\_lock\_core\_clock** Lock core overclock value. You can also set different values ​​for video cards by specifying their ID, for example --oc\_lock\_core\_clock 1000 1200 1300 (1000 for video card with ID0, 1200 for video card with ID1, 1300 for video card with ID2);  
**--oc\_lock\_memory\_clock** Lock overclock value in memory. You can also set different values ​​for video cards separated by a space;  
**--oc\_core\_clock\_offset** sets the core clock frequency of the video card in MHz. A space-separated value can be specified for multiple cards;  
**--oc\_memory\_clock\_offset** sets the graphics card memory frequency in MHz. You can specify a value for several cards through a space;  
**--oc\_power\_limit** specifying the power limit (video card consumption), in watts. Through a space, you can specify a value unique for each card. For example --oc\_power\_limit 140 150 160 150.

## **Bz miner Common Errors/Issues**

**bzminer hung gpu detected** - overclocking. Turn down your settings. If this does not help, update the miner to the latest version.

## **Dev Fees**

ETH - 0,5%  
ETC - 0,5%  
RVN - 0,5%  
ALPH - 0,5%  
Kaspa - 0,5%

## **Bzminer API**

**--http\_address** specifies the IP address to listen on for the HTTP API. The default is 0.0.0.0;  
**--http\_port** sets the port. The default port is 4014.

## **Bz miner not starting**

If you have Windows OS and the miner crashes immediately at startup, then add pause to the second line of the miner. Next, start the miner and read the error. After that, double-check your miner settings. If you have HiveOS or any other OS - go to the miner console and look at the logs of what is happening in the miner. After that, double-check your miner settings.

```json
{"@context":"https://schema.org","@graph":[{"@id":"https://localhost/en#website","@type":"WebSite","description":"Altcoin Crypto Mining Pool. Mine Cryptocurrency With Low Fees. Dedicated Servers And Professional Support. PPLNS And SOLO Mining Pools.","inLanguage":"en","name":"WoolyPooly","url":"https://localhost/en","workTranslation":[{"@id":"https://localhost/ru#website"},{"@id":"https://localhost/zh#website"},{"@id":"https://localhost/fr#website"},{"@id":"https://localhost/de#website"},{"@id":"https://localhost/es#website"},{"@id":"https://localhost/it#website"},{"@id":"https://localhost/ja#website"},{"@id":"https://localhost/hu#website"},{"@id":"https://localhost/bg#website"},{"@id":"https://localhost/pt#website"},{"@id":"https://localhost/th#website"},{"@id":"https://localhost/vi#website"},{"@id":"https://localhost/pl#website"},{"@id":"https://localhost/cs#website"},{"@id":"https://localhost/sv#website"},{"@id":"https://localhost/tr#website"},{"@id":"https://localhost/fa#website"},{"@id":"https://localhost/kr#website"},{"@id":"https://localhost/nl#website"}]},{"@id":"https://woolypooly.com/en/best-mining-software/bzminer#webpage","@type":"WebPage","description":"BZminer is an increasingly popular miner for NVIDIA and AMD video cards. Supports many algorithms. The dev fee is one of the lowest on the market.","name":"BZminer. Download BZ miner","url":"https://localhost/en/best-mining-software/bzminer","isPartOf":{"@id":"https://localhost/en#website"},"potentialAction":[{"@type":"ReadAction","target":["https://localhost/en/best-mining-software/bzminer"]}]}]}
```

## Sitemap

See the full [sitemap](https://woolypooly.com/sitemap.md) for all pages.
