Pool
OPTIMIZATIONASICBOOSTEFFICIENCYSTRATUM ADVANCED

AsicBoost Solo Mining — Version-Rolling Explained

AsicBoost (overt version-rolling) is automatic on modern ASICs and already active. How it works, what it saves, and how to verify it is really on.

Updated: July 23, 2026 · 5 min read

AsicBoost is a SHA-256 optimization that lets a mining chip reuse intermediate hash state to do the same work with fewer operations. On modern hardware it runs as overt version-rolling, it is automatic, and it is already included in your ASIC’s rated efficiency — so it is not a hidden switch that unlocks free hashrate. SoloFury negotiates it on all five coins. The practical job, then, is not to “turn it on” but to understand it and confirm it is active, so you never unknowingly run an old firmware without it. This guide shows you how.

For the algorithm-level theory, see the AsicBoost Explained article. This guide is the practical, SoloFury-specific companion.

Key Takeaways

  • Overt AsicBoost (version-rolling) is automatic and universal. It accounts for essentially all of Bitcoin’s hashrate today and is built into modern ASIC chip design.
  • It is already in your rated efficiency. When an S21+ is rated 16.5 J/TH, that figure already assumes version-rolling — you do not gain extra above spec by “enabling” it.
  • There is no additional AsicBoost gain to extract. Custom firmware improves efficiency through undervolting and tuning, not by negotiating “more” AsicBoost.
  • SoloFury negotiates it on all five coins, once, automatically — no per-coin configuration.
  • The useful action is verification: confirm a non-zero version mask in your firmware log or API, so an outdated firmware never silently runs without it.

What does AsicBoost actually do?

SHA-256 hashes the 80-byte block header in two stages, and the header is split into two 64-byte chunks for processing. AsicBoost exploits the fact that varying certain header bits lets the chip reuse part of the mid-computation state across many hash attempts, reducing the number of operations needed — by roughly 15–20% in the original analysis. There are two ways to do it:

Overt AsicBoost (version-rolling) rolls the version field of the block header within an allowed bit mask, negotiated openly between miner and pool through the Stratum mining.configure message. It is transparent, SegWit-compatible, and now standard. This is what every modern miner and SoloFury use.

Covert AsicBoost rolled the merkle root by manipulating the coinbase extranonce. It was patent-encumbered and controversial (it is incompatible with segwit commitments), and it is effectively obsolete today.

Is AsicBoost a free efficiency boost you switch on?

No — and this is the most common misconception. Because version-rolling is automatic and built into the chip, its benefit is already baked into the manufacturer’s rated efficiency. An Antminer S21+ rated at 16.5 J/TH is rated with AsicBoost active; that is simply how the chip runs. You do not unlock an extra 5–10% above spec by enabling something that is already on.

The honest framing is the reverse: the risk is losing it, not gaining it. On very old firmware or a misconfigured setup, a miner could fail to negotiate version-rolling and run less efficiently than its spec. That is why this guide focuses on verification — making sure you are getting the efficiency you already paid for — rather than on a nonexistent boost.

How do you tell if AsicBoost is already active?

On modern firmware it almost certainly is, but here is how to confirm it on each platform.

Method A — Read the stratum handshake in your firmware log

Most firmware logs the mining.configure exchange at connection. The miner requests version-rolling and the pool responds with a mask. In the request direction you will see something like:

{"method": "mining.configure", "params": [["version-rolling"], {"version-rolling.mask": "ffffffff"}]}

and a successful response with an accepted mask, for example:

mining.configure: version-rolling accepted, mask=0x1fffe000

A non-zero mask returned by the pool means version-rolling is negotiated. The 0x1fffe000 value is the standard set of version bits reserved for rolling (defined by BIP 320; the Stratum extension itself is BIP 310).

Method B — Read the version mask via API (Bitaxe / NerdQAxe family)

ESP-Miner and its forks expose a system-info API. From a machine on the same network:

curl http://[miner_ip]/api/system/info

Look for a version_mask field. A non-zero value (typically 0x1fffe000 when connected to SoloFury) confirms version-rolling is active. Zero or missing means it did not negotiate — update the firmware.

Method C — Sanity-check effective hashrate

If your one-hour average hashrate on SoloFury is in line with your chip’s spec, AsicBoost is doing its job (because the spec already assumes it). This is a weaker check than reading the mask directly, but a hashrate well below spec is a hint to verify the negotiation with Method A or B.

How do you verify (or enable) it on an Antminer?

On stock Bitmain firmware, version-rolling is enabled by default on the S19 series and newer. To confirm, open the miner’s web interface and check the Miner Status page for a “Version Rolling” or “AsicBoost” indicator showing enabled.

In the rare case it is off (usually very old firmware), enable it: log into the web interface, go to Miner Configuration → Advanced Settings, find the Version Rolling / Enable AsicBoost option, enable it, save, and restart the mining service. Custom firmware (Vnish, LuxOS, Braiins OS+) negotiates version-rolling by default as well; if a toggle exists it is on out of the box, and the standard mask (0x1fffe000) is correct — leave it unless you have a specific reason not to.

How do you verify it on a Whatsminer M50 / M60?

Whatsminer M-series firmware negotiates version-rolling by default on current releases, and the toggle may not even be exposed. To confirm, log into the web interface at the miner’s IP, open Mining → Miner Configuration, and check the stratum log for a successful version-rolling negotiation. If your firmware does expose an AsicBoost or version-rolling option under advanced/pool settings, leave it enabled. If it is somehow off, enable it, save, and let the stratum connection restart.

How does it work on Bitaxe and NerdQAxe?

The Bitaxe family (Ultra, Supra, Gamma) and the NerdQAxe family (NerdQAxe+, NerdQAxe++, NerdOCTAXE) run open-source ESP-Miner firmware or community forks. ESP-Miner implements version-rolling natively: it requests a mask from the pool during the mining.configure handshake and plumbs the returned mask through to ASIC job construction. There is no separate “enable” toggle on most ESP-Miner builds — it negotiates automatically at connection time.

A note on the BM1370 chip

The newer BM1370 chip (Bitaxe Gamma, NerdQAxe++, NerdOCTAXE) handles version-rolling slightly differently internally from older Antminer-class chips. The firmware manages this transparently, but the measured efficiency contribution can look a little different from what you would expect on a comparable older chip. The practical takeaway is unchanged: version-rolling is negotiated and active — the only reliable way to know your real numbers is to measure on your own machine.

Keep firmware current

ESP-Miner is actively developed, and recent releases improve stratum stability and version-rolling behavior. Check your version against the latest stable release for your board (the Bitaxe project for Bitaxe units, or your specific NerdQAxe fork) and update if you are several versions behind.

Does AsicBoost work on all five SoloFury coins?

Yes. SoloFury negotiates version-rolling on BTC, BCH, BC2, BCH2, and XEC alike — you configure your miner once and it works on every coin you point to, with no per-coin reconfiguration. This is not universal across pools: some support version-rolling only on their flagship coin. SoloFury treats all five as first-class, so switching coins never silently drops your AsicBoost.

AsicBoost and undervolting: where efficiency actually improves

Because AsicBoost is already active in your baseline, the meaningful efficiency gains come from undervolting with custom firmware. A worked example for an Antminer S21+ at $0.085/kWh shows where the improvement really originates:

ConfigurationEfficiencyApprox. cost/PH/s/day
Stock S21+ (AsicBoost already active)16.5 J/TH~$44.7
After custom-firmware undervolt~15 J/TH~$40

The improvement comes from the undervolt, not from any change to AsicBoost — version-rolling is identical in both rows. The numbers are illustrative; your real result depends on electricity price, chip quality, and tuning, so measure on your own machine. For the full process, see the Undervolting Antminer S21+ guide, and re-check your economics afterward with the Owned vs Rental Cost Comparison.

Troubleshooting

Log shows “version-rolling rejected.” The pool did not accept the negotiation. Confirm you are pointed at SoloFury (a non-supporting pool will reject it), restart the miner in case of a transient glitch, and update to the latest stable firmware if it persists.

A version_mask of 0 on Bitaxe / NerdQAxe. The firmware did not negotiate version-rolling. Update ESP-Miner to the latest stable release, restart, and re-check. If it stays zero, inspect the stratum task log for errors during the mining.configure exchange.

Reject rate climbs after a firmware or tuning change. This is almost always a tuning issue, not AsicBoost itself. If the unit is aggressively undervolted, raise the voltage slightly; if reject rate stays above 2%, back off the tuning.

Frequent disconnects. Usually latency, not version-rolling. Switch to the closest SoloFury region (eu- or asia- prefix) to reduce share latency. For an encrypted connection, see the TLS Stratum Mining guide.

For broader worker diagnostics, see Reading Your Worker Stats and the Miner Health Check guide.

Next Steps

Frequently Asked Questions

Do I need to enable AsicBoost on a modern miner?

No. Overt version-rolling is automatic on all current ASICs and firmware, and SoloFury negotiates it on every coin. The only thing to do is verify it is active by checking the version mask — there is nothing to switch on.

Does enabling AsicBoost give me more hashrate than my miner's spec?

No. The rated efficiency of a modern ASIC already includes AsicBoost, so it is part of your normal performance, not a bonus above spec. You would only see a difference if an old firmware failed to negotiate it and ran below spec.

What is the difference between overt and covert AsicBoost?

Overt AsicBoost rolls the block header's version field and is negotiated openly through stratum — it is standard today. Covert AsicBoost manipulated the coinbase to roll the merkle root, was patent-encumbered and segwit-incompatible, and is effectively obsolete.

What is the version mask, and what value should it be?

The version mask is the set of header bits the pool allows your miner to roll. The standard value is 0x1fffe000 (the bits reserved by BIP 320). A non-zero mask confirms version-rolling is active; zero means it is not.

Will custom firmware give me extra AsicBoost?

No. Custom firmware improves efficiency through undervolting and tuning, not by extracting more AsicBoost — version-rolling is already fully realized on stock firmware.

Does AsicBoost work when I switch SoloFury coins?

Yes. SoloFury negotiates version-rolling on all five coins, so switching from, say, BTC to BCH keeps AsicBoost active with no reconfiguration.

How do I check AsicBoost on a Bitaxe?

Run curl http://[miner_ip]/api/system/info from a computer on the same network and look for a non-zero version_mask. If it is zero or missing, update ESP-Miner and re-check.

My reject rate rose after enabling AsicBoost — what happened?

On modern firmware AsicBoost is not a separate switch, so a reject-rate rise after a change is almost always a tuning or voltage issue. Ease off any aggressive undervolt and confirm chip temperatures are in range.