Frankfurt
measuring…
de.b2pool.io:3333
Most pools have one port and assume an ASIC is behind it. This one has a port for each class of hardware, because BLAKE2b is cheap enough that a CPU is a real participant and not a courtesy. Pick your machine below and the three fields you need are on the next screen — there is no account to create, and no password to remember. Your payout address is your account.
Or run the whole thing yourself: your own node builds the blocks, you pick the transactions, and the pool only answers who gets paid what. Same 1 % fee, and the only path the stratum phase-out leaves untouched. Set up your own DATUM gateway, step by step →
Every share goes into a rolling window of the pool’s recent work. Each block the pool finds is split across that window, so a share earns a little from several blocks rather than everything from one — and you are paid whether or not the winning share was yours.
Your shares only pay if one of them is the block, and then the whole coinbase is yours. Until that happens you earn nothing, for however long it takes. Check the odds for your hashrate first.
Six regions, one pool, one balance. Every endpoint on this page follows your choice — we are measuring which one is closest to you.
You build the blocks. Your own node picks the transactions and assembles the template; your gateway asks us one question — who gets paid what — and writes our answer into the coinbase. We never see the block before it exists, and we cannot censor what we do not build. This is the way the chain is meant to be mined.
It costs you a machine that stays on, about 40 GB of disk and a day or three for the first sync. There is no compiler step — the gateway is a single static binary of 2.4 MB. Bitcoin Knots 29.4.2 or newer is required: an older node puts coinbase spends into your template that the network rejects from block 973,440 on.
Every command and every setting, step by step →
We run the gateway, you still get paid from the block. Your address is an output in the coinbase, not a balance we hold — same as on RATUM. What you give up is the template: on this path we choose the transactions, not you. Take it if your hardware cannot sit behind a node of its own.
Ports 23333, 24444 and 25555 in every region: ordinary Stratum V1 to your miner, DATUM underneath, the same coinbase payouts and the same 1 % fee. The ASIC tier starts at 2,048 rather than 16,384, so a small unit delivers its first share in seconds. There is no solo DATUM port — one coinbase is built per job and shared, so it cannot pay each finder alone.
URL stratum+tcp://de.b2pool.io:23333 Username bc1qexample...7k4f.rig-01 Password anything
This one is not a kind of hardware. Stratum V2 is a newer wire protocol: encrypted end to end, binary rather than JSON, and it lets a miner choose the transactions in its own block instead of taking the pool's. Same chain, same payouts, same machines — a different way of talking to us.
You almost certainly do not need this. Hardly any mining firmware speaks V2 yet, and no rented rig does — if you are pointing an ASIC or a rental at this pool, one of the tabs to the left is what you want. This one is here for people writing or running a V2 miner of their own.
A V2 port is the V1 port with a 1 in front, and nothing else changes: 13333 for ASICs, 14444 for FPGAs and GPUs, 15555 for CPUs — same tiers, same difficulties, same accounting, in every region. Solo works the same way, on 13334, 14445 and 15556. Job Declaration is open too, on 13337 shared and 13338 solo — that is the one that lets you pick your own transactions.
URL stratum2+tcp://de.b2pool.io:13333 Authority key cc22ab3495b26c1a5d0a5c834df4ae8926cc7dbf8ef6c292f951f174280cd323 Username bc1qexample...7k4f.rig-01 Channel standard or extended, both accepted
Pin the authority key: it is how your miner knows it is talking to us and not to someone in the middle. It does not change when the pool restarts.
The plain stratum ports: you point a miner at us and we build the block. It works today and it pays the same way — from the coinbase, straight to your address. Nothing breaks now; but if you are buying hardware for the next two years, read the RATUM tab first.
This chain's proof of work is BLAKE2b — the same function Sia used — so Sia-generation hardware mines it unmodified. No new firmware, no vendor lock, nothing to flash. An iBeLink BM-S3 or BM-S3+ points at this pool exactly as it pointed at a Sia pool.
| Machine | Port | Starts at | Floor | Hashes per share |
|---|---|---|---|---|
| ASIC | 3333 | 16,384 | 1,024 | 1.41 × 1014 |
| FPGA | 4444 | 128 | 128 | 5.50 × 1011 |
| GPU | 4444 | 128 | 128 | 5.50 × 1011 |
| CPU | 5555 | 1 | 1 | 4.29 × 109 |
An FPGA shares the GPU port on purpose: three ports cover the whole range, and an FPGA overlaps a fast GPU at the bottom and a slow ASIC at the top. A CPU starts and stays at difficulty 1 — that is the floor of the chain itself, not a concession. A graphics card will not out-earn an ASIC here and nothing on this page pretends otherwise; it earns its proportional share of every block found while its work is still in the payout window.
Pool 1 URL stratum+tcp://de.b2pool.io:3333 Pool 1 Worker bc1qexample...7k4f.shed-01 Pool 1 Password x Pool 2 URL stratum+tcp://hel.b2pool.io:3333 (failover) Pool 2 Worker bc1qexample...7k4f.shed-01 Pool 2 Password x
Open the miner's IP in a browser, sign in, and go to the pool configuration page. It lists three slots; fill the first, and add a second region as failover. A 4.3 TH/s unit lands its first share about 16 seconds after it connects; a 550 GH/s one takes about two minutes.
Supryolo — MIT licensed, no fee, no developer cut, and quick.
github.com/ocminer/supryolo mines BLAKE2b on NVIDIA (CUDA), AMD (OpenCL) and CPUs, picking an AVX2 kernel automatically where one is available. FPGA and ASIC backends are next. Its published benchmarks, put against the port each device belongs on:
| Device | Hashrate | Port | A share every… |
|---|---|---|---|
| NVIDIA RTX 5090 | 17.21 GH/s | 4444 | 32 s |
| AMD RX 7900 XTX | 5.78 GH/s | 4444 | 95 s |
| Ryzen 9 3950X, 15 threads | 367 MH/s | 5555 | 12 s |
Hashrates are the project's own figures; the cadence is arithmetic from the port difficulty. Note the CPU line — twelve seconds a share is a processor doing real work, not a gesture.
Building it needs CMake 3.24 or newer, a C++20 compiler and the OpenSSL development files. The CUDA toolkit is optional and only wanted for NVIDIA cards.
git clone https://github.com/ocminer/supryolo cd supryolo cmake -S . -B build -DCMAKE_BUILD_TYPE=Release -DCMAKE_CUDA_ARCHITECTURES=120 cmake --build build -j
No CUDA toolkit, or a CPU-only machine? Build without it:
cmake -S . -B build-cpu -DCMAKE_BUILD_TYPE=Release -DYOLO_CUDA=OFF -DYOLO_OPENCL=OFF cmake --build build-cpu -j
Then point it here. GPU on the FPGA/GPU port:
./build/supryolo --url stratum+tcp://de.b2pool.io:4444 \ --user <your-payout-address>.rig1 --gpu-device 0 --no-cpu
Or CPU on the difficulty-1 port:
./build/supryolo --no-gpu --cpu-threads 15 \ --url stratum+tcp://de.b2pool.io:5555 --user <your-payout-address>.cpu1
--list-devices shows what it found, --benchmark measures
without connecting, and --gpu-core-clock, --gpu-mem-clock,
--powerlimit and --gpu-fan-speed are there if you tune.
Take supryolo-0.2.1-windows-x86_64.zip from
the releases page
and unpack it. Put your payout address in the bundled start script, or call the binary
yourself:
supryolo.exe --url stratum+tcp://de.b2pool.io:4444 ^ --user <your-payout-address>.rig1 --gpu-device 0 --no-cpu
Any other BLAKE2b miner that speaks Stratum V1 works just as well — the protocol is published in full.
Take supryolo-0.2.1.hiveos.tar.gz from
the releases page
and add it as a custom miner — Hive OS takes any tarball with an installation script. There
is an -mmpos.tar.gz beside it for mmpOS. The flight sheet needs only these:
A full Hive OS or mmpOS install is not something we have tested end to end — the packages are built, the flight sheet above is what we know works.
The image is ocminersupr/supryolo:0.2.1. A container
changes nothing about the miner's arguments:
docker run --rm --gpus all ocminersupr/supryolo:0.2.1 \ --url stratum+tcp://de.b2pool.io:4444 \ --user <your-payout-address>.rig1 --gpu-device 0 --no-cpu
CPU only needs no --gpus flag:
docker run --rm ocminersupr/supryolo:0.2.1 --no-gpu --cpu-threads 15 \ --url stratum+tcp://de.b2pool.io:5555 --user <your-payout-address>.cpu1
There is a -docker.tar.gz on the releases page too, if you would
rather load the image than pull it.
Supryolo is not ours and we take nothing for pointing at it — it is MIT licensed and has no developer fee. We link it because it is the fastest way onto this chain with a graphics card or a processor, and because a pool with a published protocol and no working open-source client is only half a thing.
Measured from your own browser to each one, not guessed from a map.
measuring…
de.b2pool.io:3333
measuring…
hel.b2pool.io:3333
measuring…
ord.b2pool.io:3333
measuring…
lax.b2pool.io:3333
measuring…
ua.b2pool.io:3333
measuring…
hkg.b2pool.io:3333
The port follows the hardware tab and the payout switch above, so the line under each region is the URL to paste. They all feed the same pool and the same balance — picking the nearest one only saves you the round trip on every share.
Take the one with the lowest ping to you — that host runs the stratum endpoint you connect to, and a shorter round trip means less time between finding a share and having it counted. They all feed the same pool and the same balance, so switching costs you nothing.
Hong Kong is the endpoint to use from the mainland, and the reason is the route rather than the distance: it sits on a CN2 direct line into China Telecom's network, so the path never touches the congested ChinaNet backbone and holds up at peak hours. Measured from the host, ten pings to each: around 60 ms to Beijing (China Unicom, 57–67 ms) against around 180 ms to Frankfurt (177–187 ms). Roughly a third of the round trip, and it holds at peak hours because the path stays on CN2. Southern China is closer still.
That matters on every share you submit, not once — a longer round trip is time your
hardware spends on work that may already be stale. If you run a farm there, measure it yourself
before you move: ping hkg.b2pool.io and mtr hkg.b2pool.io from your own
network decide this better than any claim on a website, and we would rather you checked.
Whichever port you picked, these are the same.
d=<number> sets a difficulty floor of your own.Create a fresh wallet for this chain and copy a receiving address. Never reuse an address that already holds coins on the other side of the split.
Your hardware chooses the port, and how you want to be paid chooses whether it ends in the shared or the solo number. Nothing else differs between them.
URL, worker, password. Open your miner's web interface or command line and enter the values from your tab above.
Save, let the unit reconnect, and look for accepted shares. Your page appears under Miners within a minute or two.
There is no withdrawal step, because there is nothing to withdraw.
When the pool finds a block, your address is written into that block's coinbase — the transaction that creates the coins — with your slice next to it. The coins are yours from that moment; they never sit in a pool wallet and never depend on an operator sending them on. Freshly mined coins still have to mature before they can be spent, which is a rule of the chain and the same for every miner on it. Amounts under 10,000 sat are carried to your next slice.
Add a second region as Pool 2 with the same worker and password.
Frankfurt as Pool 1 and Helsinki as Pool 2, for instance. Every region feeds the same pool and the same balance, so a failover costs you nothing but the seconds spent reconnecting. Use the same port number in both slots — the ports mean the same thing everywhere.
Almost always the worker field. It must be your payout address, optionally followed by a dot and a rig name. If the address is malformed the pool drops the connection rather than mining into an address nobody can spend from.
Check the unit's clock first — a system time far from real time is the usual cause. After that, check the worker field. Changing ports will not help: every port runs the same protocol and they differ only in the difficulty you start on.
You are probably on a port meant for faster hardware, and the first share has not arrived yet.
Multiply the port's starting difficulty by 4.295 × 109 and divide by your hash rate:
that is the wait. The pool cannot lower your difficulty until it has seen one share from you, so
a GPU parked on the ASIC port can sit silent for days. Move down a port, or name the difficulty yourself with d= in the password field and skip the wait entirely.
Use the ASIC port. It starts at 16,384 and never goes under 1,024, which clears the minimum any rental platform is likely to enforce. If the platform has a difficulty field of its own, leave it alone — the pool's figure is passed through.
A rented rig is usually far bigger than 16,384 suits: at 100 TH/s that is a share every
0.7 seconds, more traffic than either side needs before vardiff settles it. Put
d=1000000 in the password field and you start near one share every 45 seconds
instead.
Yes. Put d= and a number in the password field — d=50000 for a
large rented rig, d=2000 for a small one. The pool answers with that difficulty in
your first mining.set_difficulty, before your first share. That is the only moment
it matters: vardiff cannot adjust anything until one share has arrived, so until then the
starting value decides alone.
The number is rounded to the nearest power of two. On this chain a share target is
2224−1 shifted right by a whole number of bits, so nothing exists between 32,768 and
65,536 — d=50000 becomes 65,536 and d=2000 becomes 2,048. The port's
floor still applies: ask for less than the port allows and you get the floor.
mining.suggest_difficulty does the same thing if your miner speaks it.
Because the chain has a floor. A difficulty-1 share costs 232 hashes — about 4.3 billion — and no smaller unit of work exists to give out. The CPU port already sits on that floor. Eight cores land a share about every 81 seconds there, and nothing the pool does can make it faster.
The pool can only measure the shares it receives, so it estimates your rate over a window and the number moves around. Compare over an hour, not a minute. A persistent gap of more than a few percent usually means rejected shares or a flaky link.
Yes — that is what the CPU port is for. Any BLAKE2b CPU miner that speaks stratum can connect and submit shares, which is enough to confirm your address and worker string are accepted before you repoint real hardware.