Bitaxe.de
Guides & knowledge

Setting up Stratum V2 on a Bitaxe: encrypted solo mining in five fields

13 September 2026 · 14 min read

Cover image “Setting up Stratum V2 on a Bitaxe”: the five fields from the AxeOS pool settings as a card, Stratum Protocol Stratum V2, host stratum.bitaxe.de, port 3336, channel Extended, authority public key, next to a padlock icon

One line in the AxeOS 2.14.0 changelog changed in June 2026 how a Bitaxe talks to its pool: “Add Stratum V2 (SV2) protocol support”. Since 8 September 2026 the Bitaxe Pool accepts Stratum V2 as well, on port 3336 and with its own authority key. This guide walks the whole way once: what the protocol really changes on your miner, which five fields in AxeOS are responsible for it, how to set the fallback cleanly and how to verify that the connection is actually encrypted. Plus the failure patterns from our support queue and a table of the pools that offer V2 to a Bitaxe today.

Short version for the Bitaxe Pool: AxeOS 2.14.0 or newer (2.15.1 recommended). Settings, section Pool: Stratum Protocol Stratum V2, Stratum Host stratum.bitaxe.de, Stratum Port 3336, SV2 Channel Type Extended Channels, SV2 Authority Pubkey 9awpfZGWfrRBH8fkf82mWvnXMSTC7i9M3mshB8M56cw9UXTGdYi, User your Bitcoin address. Save, restart, and after two minutes the pool is green. Large ASICs use port 4336.

What Stratum V2 changes on your Bitaxe, and what it does not

Stratum V1 dates from 2012 and is a text protocol: JSON lines travelling unencrypted between miner and pool. Anyone reading along the way sees your Bitcoin address, your shares and every block template. Anyone who can not only read but alter the traffic, say on hotel Wi-Fi or through a compromised router, can slip your miner a different address. The miner notices nothing and simply keeps hashing, only for someone else. For a Bitaxe at home on your own network this is rarely a practical problem. It is a fundamental one nonetheless, and Bitcoin carried it around for long enough.

Stratum V2 closes both gaps. The connection is encrypted with the Noise protocol, the same framework WireGuard builds on; specifically Noise_NX with secp256k1 and ChaCha20-Poly1305. And the pool identifies itself during the connection setup with its authority public key, a public key you enter once in AxeOS. Your miner then checks on every handshake whether the other side holds the matching private key. If the key does not match, no connection is established. An attacker would have to not only redirect the traffic but also possess the private key of the pool.

On top of that, V2 speaks binary instead of text. Messages are smaller, the miner receives new work a few milliseconds earlier, and since 2.14 AxeOS measures the pool response time for every share. On a Bitaxe with one to five TH/s the effect on hashrate is not measurable. V2 is a piece of order rather than a performance gain.

What V2 does not change: your chance of finding a block. It depends on your hashrate and the network difficulty, not on the protocol. A Bitaxe Gamma finds a block over V2 exactly as often as over V1, which is to say, as Bitaxe block probability works out honestly, very rarely. The payout stays the same too: on the Bitaxe Pool a found block goes straight to your address via the coinbase transaction, over V1 and V2 alike. And the pool still adjusts your share difficulty automatically. Switching V2 on buys you security and tidiness, not faster blocks.

Extended or standard channel

AxeOS offers two channel types. Extended Channels are the normal case for any external pool: the pool sends the coinbase template along, the miner can read it and show on the dashboard who the block would pay. Standard Channels are meant for the case where your own SV2 node or a Job Declaration client on the same network builds the templates. For the Bitaxe Pool and every other pool in the table below the answer is Extended.

Job Declaration, the right of the miner to build the block template itself, is something the Bitaxe Pool deliberately does not offer. If you want to decide which transactions go into your block, you are better served by a node of your own than by a pool pretending to be one. Solo CKPool offers a Job Declaration port and states itself that it brings no advantage over your own JD client.

Prerequisites

Component What you need How to tell
Firmware AxeOS 2.14.0 or newer (4 June 2026), 2.15.1 or newer recommended The version is shown in AxeOS under System. If the pool settings have no Stratum Protocol field, the firmware is too old.
NerdQaxe, NerdOctaxe, Nerdaxe Gamma NerdQ firmware 1.0.37 or newer (May 2026), 1.0.37.3 LTS or 1.1.0 recommended same fields, same logic as in AxeOS
Pool with Stratum V2 host, SV2 port and authority public key of the pool listed on the connection page of the pool, for the Bitaxe Pool on pool.bitaxe.de and in the pool configurator
Network outbound TCP connection to the SV2 port, 3336 for the Bitaxe Pool a home router allows this without any setting; corporate and guest networks occasionally block unfamiliar ports
Time ten minutes including the restart nothing more

If the firmware is too old, the update is the first step, easiest via the web flasher with “keep configuration” ticked. Since AxeOS 2.15.0 the web interface is embedded in the firmware file itself; there is no separate www.bin any more. Reload the page in your browser once after the update, otherwise the browser shows the old dashboard from its cache.

The five fields in AxeOS

Open AxeOS in your browser (the IP address is on the display or in the device list of your router), then Settings and there the Pool section. Since 2.14 it is laid out differently than before: instead of a single stratum URL there are separate fields per pool, and at the top you choose which entry is the Primary Pool and which the Fallback Pool. The list holds up to eight pools.

  1. Stratum Protocol: Stratum V2. This is the switch that unlocks everything else. As soon as V2 is selected, the V1 options (Suggested Difficulty, Extranonce Subscribe, TLS) disappear and the SV2 fields appear. If the field is missing altogether, the firmware is older than 2.14.0.
  2. Stratum Host and Stratum Port. Host stratum.bitaxe.de, without stratum2+tcp:// in front, AxeOS adds that itself. Port 3336. The V1 port 3333 does not work with V2: the miner would knock there with a binary handshake where the pool expects text.
  3. SV2 Channel Type: Extended Channels. This is the default. Standard Channels only if you run your own SV2 node or Job Declaration client on your network.
  4. SV2 Authority Pubkey. For the Bitaxe Pool 9awpfZGWfrRBH8fkf82mWvnXMSTC7i9M3mshB8M56cw9UXTGdYi, 51 Base58 characters, no spaces. The safest source is pool.bitaxe.de or the pool configurator, not a forum post. AxeOS only checks the length (40 to 52 characters) and the character set, not the content; a typo only shows up at the handshake. Technically the field is optional. Leave it empty and the miner connects on a trust-on-first-use basis without verifying the other side. That gives away the most important part of V2, so: fill it in.
  5. User and Password. User is your Bitcoin address, optionally with .workername and #group for SOLO groups, exactly as with V1. The pool does not evaluate the password over V2; x is fine.

Two options below them arrived with 2.15.0 and deserve a look. Require Authentication forces the miner to refuse the connection if the pool cannot prove the authority key, instead of falling back to trust on first use. With a key entered, the option belongs on. Decode Coinbase Tx reads the coinbase template from the extended channel and shows on the dashboard which address the block would pay. On the Bitaxe Pool that has to be your own; if something else appears there, the User field is wrong.

Then Save. AxeOS re-establishes the connection; some versions ask for a device restart. After one to two minutes the pool shows green on the dashboard and the first shares flow. From AxeOS 2.15 you also see pending shares, shares that have been sent but not yet confirmed by the pool. That is normal; the number stays small and oscillates.

Fallback: V1 as the safety net

The second slot in the pool list is the fallback pool. AxeOS switches to it when the primary pool stops answering and returns as soon as it is reachable again. Protocols may be mixed: V2 as primary with V1 as fallback works, the other way round too, and two V2 pools just the same. For the Bitaxe Pool this is the most sensible layout:

Field Primary Pool Fallback Pool
Stratum Protocol Stratum V2 Stratum V1
Stratum Host stratum.bitaxe.de stratum.bitaxe.de
Stratum Port 3336 3333
SV2 Channel Type Extended Channels not applicable
SV2 Authority Pubkey 9awpfZGWfrRBH8fkf82mWvnXMSTC7i9M3mshB8M56cw9UXTGdYi not applicable
User Bitcoin address, optionally .worker and #group identical
Password x x

Why V1 as fallback is not a security hole: the fallback only kicks in when V2 fails, that is, during an outage, and it goes to the same pool. The alternative, no fallback at all, would mean your miner stands still whenever the V2 endpoint has trouble. For a device that is waiting for a rare hit anyway, an hour of downtime is bearable; for a NerdQaxe++ at 4.8 TH/s it is lost tickets. If you would rather have a second provider as fallback, enter another solo pool there, with or without V2; the payout goes to the same address either way.

A note for everyone who set things up before 2.15: since 2.15.0 fallback use is off by default until the miner really has to switch. So if your dashboard shows the primary pool although you have just been working on the fallback, that is not a fault.

Verifying that the connection really is V2

Green on the dashboard only means connected. Three places show that it is V2.

  • Pool tile on the dashboard. It names the active pool with its protocol. If the fallback on V1 is shown there, the V2 handshake failed and the failure patterns below are your next stop.
  • Logs in AxeOS. Under Logs you see the SV2 messages during the connection setup: handshake, SetupConnection, channel opened, then running shares with their response time in milliseconds. With V1 you would see JSON lines with mining.subscribe and mining.notify instead.
  • Pool page. On pool.bitaxe.de enter your address; after two minutes the worker appears with hashrate and best difficulty. The pool statistics do not distinguish by protocol; your worker looks exactly the same there over V2 as over V1.

If you want to know for sure, look at the traffic itself: a capture on port 3336 shows nothing but noise after the handshake, a capture on port 3333 shows readable JSON with your address in it. That is the whole difference, and it is the reason for the five fields.

Stratum V1 and V2 compared

Aspect Stratum V1 Stratum V2
Since 2012 specification 2019, on the Bitaxe since AxeOS 2.14.0 (June 2026)
Transport text (JSON), unencrypted binary, encrypted (Noise, ChaCha20-Poly1305)
Pool proves its identity no yes, via authority public key, checked on every handshake
Protection against hashrate hijacking no yes, with the key entered
Bandwidth higher lower
Response time per share not measured measured, visible in the log
Block chance, payout, difficulty identical identical
Bitaxe Pool port 3333, large ASICs 4334 port 3336, large ASICs 4336, key 9awpf…UXTGdYi
Requirement any firmware AxeOS 2.14.0 or newer, NerdQ 1.0.37 or newer

Which pools offer Stratum V2 to a Bitaxe

As of September 2026. Always copy the authority key from the page of the respective pool; we print it here for orientation, and a pool can change it at any time.

Pool Host and SV2 port Model and notes
Bitaxe Pool stratum.bitaxe.de:3336, large ASICs 4336 Solo, 0 % fee. Frankfurt, SOLO groups over V2 as well, no Job Declaration
Solo CKPool stratum.ckpool.org:3336 Solo, 2 % fee. Job Declaration on port 3337
Blitzpool blitzpool.yourdevice.ch:3333 (V1 and V2 on the same port) Solo and PPLNS (port 3340). Job Declaration on port 3335
Braiins Pool stratum.braiins.com:3333 FPPS with continuous payouts, no solo mining. V2 for years
Public Pool port 23330 according to the provider Solo, 0 %. The factory default pool in AxeOS

The matching authority public keys, as of September 2026:

  • Bitaxe Pool: 9awpfZGWfrRBH8fkf82mWvnXMSTC7i9M3mshB8M56cw9UXTGdYi
  • Solo CKPool: 9anrRNhBh7869XtNnFcCuGBRZP51E635qGbu457J5kHdszhfRc3
  • Blitzpool: 9bCoFxTszKCuffyywH5uS5o6WcU4vsjTH2axxc7wE86y2HhvULU
  • Braiins Pool and Public Pool: on the connection page of the respective provider

Which pool suits you is a different question from V1 or V2, and it is answered in choosing a Bitaxe mining pool. In short: solo pools pay only when a block is found, and then everything; Braiins pays fractions daily and is, for a Bitaxe, a piggy bank with a very small slot.

When the pool stays red: the failure patterns

The following cases cover what has reached our support queue since June, ordered by frequency.

  • Wrong or incomplete authority key. One character short, a trailing space, a capital I instead of a lowercase l: the handshake fails, AxeOS shows the pool red or silently switches to the fallback. Copy the key again from the pool page, clear the field completely, paste, save.
  • Firmware too old. If the Stratum Protocol field is missing, the firmware cannot do V2. Update to 2.15.1, then reload the page in the browser.
  • V1 port with the V2 protocol. Host is right, port 3333 instead of 3336: the pool answers the binary handshake with nothing and the miner retries forever. Check the port; for the Bitaxe Pool it is 3336 or 4336.
  • “difficulty too low” in the logs. A known bug in 2.14.x when the pool sets a fractional difficulty and the miner rounds. Fixed in 2.15.0 (“Keep fractional SV2 pool difficulty”). Update.
  • NerdQaxe does not connect although the key is right. NerdQ firmware before 1.0.37.3 had a bug in evaluating the authority key. Update to 1.0.37.3 LTS or 1.1.0.
  • Require Authentication on, key empty. The miner refuses every connection because there is no key to check against. Enter the key or switch the option off.
  • Pool green, but the dashboard shows V1. The miner is sitting on the fallback because V2 was unreachable at start-up. Usually a firewall or guest network matter: allow outbound port 3336, restart the miner.
  • Shares flow, but the pool page shows nothing. This has nothing to do with V2: nine times out of ten the User field holds a different address than the one you type into the pool page. The miner troubleshooter and the article Bitaxe connects to Wi-Fi but does not mine go through the remaining causes.

NerdQaxe, NerdOctaxe and large ASICs

The NerdQ firmware on NerdQaxe++, NerdOctaxe and Nerdaxe Gamma has the same fields as AxeOS because it shares the same roots. Stratum V2 has been in since 1.0.37, the “Require Authentication” option since 1.1.0. Enter the same values as above. Several devices on one address each get their own worker name after the dot; the statistics keep them apart, and a found block pays the same wallet.

Large ASICs without AxeOS, an Antminer running Braiins OS for instance, speak V2 through a single URL that carries the key: stratum2+tcp://stratum.bitaxe.de:4336/9awpfZGWfrRBH8fkf82mWvnXMSTC7i9M3mshB8M56cw9UXTGdYi. Port 4336 is the high-difficulty port of the Bitaxe Pool; everything above 4000 starts at a high difficulty so that a 200 TH/s machine does not flood the pool with shares. Stock firmware without V2 stays on V1 on port 4334 or puts an SV2 proxy in between; that encrypts from the proxy onward, not from the device.

An honest assessment

Stratum V2 does not make your Bitaxe faster or your block more likely. It makes the connection to your pool what it should have been in 2012: encrypted, with a pool that has to prove who it is. For a device that hangs on the network for years carrying a Bitcoin address, that is the right standard. The ten minutes of setup are well spent, and the V1 fallback catches the rest.

If you buy a miner today, all V2 needs is current firmware: Bitaxe Gamma and Bitaxe GT run AxeOS, NerdQaxe and NerdOctaxe run the NerdQ firmware, and an update through the web flasher takes two minutes. Five fields, and the rest is patience.

Do I need Stratum V2 for the Bitaxe Pool?

No. Stratum V1 on port 3333 keeps running in parallel, and V2 changes nothing about your block chance. V2 is worth it because the connection is encrypted and the pool has to prove its identity with its authority key. Once set up, there is no reason to go back.

Which firmware do I need for Stratum V2?

AxeOS 2.14.0 (4 June 2026) or newer on all Bitaxe devices, 2.15.1 or newer recommended because of the “Require Authentication” option and the difficulty fix. On NerdQaxe, NerdQaxe++, NerdOctaxe and Nerdaxe Gamma the NerdQ firmware 1.0.37 or newer, 1.0.37.3 LTS or 1.1.0 recommended.

What is the authority public key?

The public key of the pool, 51 characters in Base58. Your miner uses it during the connection setup to check that the other side holds the matching private key, that is, really is the pool you mean. For the Bitaxe Pool it is 9awpfZGWfrRBH8fkf82mWvnXMSTC7i9M3mshB8M56cw9UXTGdYi.

Do I have to fill in the SV2 Authority Pubkey field?

Technically it is optional, practically yes. Without a key the miner connects on a trust-on-first-use basis and does not verify the other side. The encryption stays, the protection against a substituted pool is gone.

What does the “Require Authentication” option do?

Since AxeOS 2.15.0 and NerdQ 1.1.0: the miner refuses any connection where the pool cannot prove the authority key, instead of falling back to trust on first use. With a key entered the option belongs on; without a key it must stay off, otherwise the miner does not connect at all.

Extended Channels or Standard Channels?

Extended Channels for any external pool, the Bitaxe Pool included. The pool then sends the coinbase template along, and the miner can show who the block would pay. Standard Channels are only meant for your own SV2 node or Job Declaration client on the same network.

Can I use V2 as primary and V1 as fallback?

Yes, and that is the recommended layout: primary pool Stratum V2 on port 3336, fallback pool Stratum V1 on port 3333, both on stratum.bitaxe.de. AxeOS switches by itself during an outage and returns as soon as V2 answers again.

Does Stratum V2 change my chance of finding a block?

No. The chance depends on your hashrate and the network difficulty. V2 encrypts and authenticates the connection; it does not hash faster. The mining calculator works out the chance per model.

Do SOLO groups work over Stratum V2?

Yes, with the same notation in the User field: address.worker#group. The group is tied to the connection, and a group block is paid out proportionally via coinbase over V2 exactly as over V1.

Why does the Bitaxe Pool not offer Job Declaration?

Because on a solo pool it brings nothing that your own node could not do better. If you want to build the block template yourself, run a node and mine against it directly, for example with Public Pool on Umbrel. The Bitaxe Pool builds the templates itself and distributes them over extended channels.

How do I point an Antminer or Whatsminer at the Bitaxe Pool over V2?

With Braiins OS or another firmware that speaks V2, via the URL stratum2+tcp://stratum.bitaxe.de:4336/9awpfZGWfrRBH8fkf82mWvnXMSTC7i9M3mshB8M56cw9UXTGdYi. Port 4336 is the high-difficulty port for large machines. Stock firmware without V2 stays on V1 on port 4334.

How can I tell that the connection is really encrypted?

In three places: the pool tile on the AxeOS dashboard names the active pool with its protocol, the logs show the SV2 handshake during the connection setup instead of JSON lines, and anyone capturing the traffic sees nothing but encrypted data on port 3336 after the handshake.

Matching products