Verify whether your Bitaxe is truly connected to a solo pool. Don't just look at the green light on the panel. Broadly speaking, connecting to a solo pool counts. It's enough to confirm that the Stratum URL is a dedicated solo domain, the initial Stratum diff value is between 1–64, and the pool's worker page shows only your device. For strict true solo mining, you need to self-host a node and modify the 2% donation. The 3 signals below, along with a two-tier verification method, will help you determine the answer in just 10 minutes.
Difference between Solo Mining
The prerequisite is, how do we distinguish whether it's solo mining before we can verify?
In Solo Mining, you need to run your own Bitcoin node and construct your own block templates. In Lottery Mining, you use a solo mining pool like CKPool or Public Pool, where the pool manages the node and block templates for you. Either way, using home hardware, your chances of hitting a block each day are minuscule, but not zero. Since July 2024, mini miners based on Bitaxe / Nerdaxe etc., have solo-mined at least 22 blocks, each worth between $190,000 and $342,000 at the time of discovery.

Solo Mining Vs. Lottery Mining
| Feature | Solo Mining | Lottery Mining (via Solo Pool) |
|---|---|---|
| Owns a Full Bitcoin Node | Required ✅ | Not Required ❌ |
| Custom Block Template | By You | By Pool (except DATUM) |
| Reward Upon Success | 100% (3.125 BTC + Fees) | Approximately 98% to 100%, depending on pool fees. |
| Pool Fee | None | Public Pool: 0%, Solo CKPool: 2% |
| Setup Difficulty | High | Plug and Play |
| Trust Level | / | Low trust in the pool |
| Payment Frequency | Extremely Rare | Extremely Rare |
What is Solo Mining?
In solo mining, you operate completely independently. You use your own hardware and run your own full Bitcoin node.
- Direct Network Connection—no pool, no middleman.
- Full Block Reward—if you find a valid block, you receive the entire reward (currently 3.125 BTC) plus all transaction fees.
- Trustless—you create your own block templates and choose which transactions to include.
- All Risk, All Reward—no loss, no gain. It could take years or even decades.
This is how Satoshi Nakamoto envisioned Bitcoin mining back in 2009: one person, one node, one machine, one block.
What is Lottery Mining?
Lottery mining is often confused with solo mining, but technically, they differ:
- You connect your miner to a solo mining pool, such as Solo CKPool or Public Pool.
- The pool handles the technical tasks: full node, block template creation, block submission.
- Reward: If a block is found, you receive almost the entire reward—minus a small pool fee (Public Pool: 0%, Solo CKPool: 2%).
- Simplified: You don't need to own a node or have deep technical knowledge. Just enter the Stratum address and your own Bitcoin address as the worker.
It's called "lottery" because that's essentially what it is: you buy a ticket every ten minutes with electricity consumption.
Mining with Different Settings
True Solo Mining
Self-Hosted Full Node: Bitcoin Core or Bitcoin Knots. A pruned node can technically work for mining, but an archival version is cleaner.
Mining Software: Public Pool can be self-hosted on Umbrel, Start9, or Raspberry Pi. Alternatively, you can run a standalone instance of Solo CK Pool.
Hardware: Bitaxe Gamma as an entry-level lottery miner, NerdQaxe++ as the flagship model.
Wallet: Configure your own Bitcoin address as the payout address directly in the miner software.
Lottery Mining
Pool Selection: Public Pool (0% fee, popular choice for Bitaxe), Solo CKPool (2%, established), Parasitic Pools (mixed mode).
Configuration: Pool's Stratum URL + your Bitcoin address as the worker name. That's it.
Wallet: Directly to your own address—if successful, the payout goes directly from the Coinbase transaction to your account.
3 Signs Verify Bitaxe Is Connected Solo Pool
This question is trickier than it seems! Because "solo mining" in the Bitaxe community has three forms: True Solo (self-hosted full node), Lottery Mining (connecting to a solo pool like CKPool/Public-Pool, where others handle the template but you keep the reward), and Traditional Pool (hashrate aggregated, profit sharing). The latter two both use the Stratum protocol and look identical on the dashboard. Beginners especially tend to mistake "solo pool" for "true solo", ending up connected to a traditional pool thinking they're mining alone against the whole network. Therefore, besides the theoretical differences above, you can use the following three-layer verification method to avoid mistakes.
Broad Definition: Connecting to a Solo Pool = Solo Mining
This tier solves 90% of people's problems. Entering the correct URL ≠ actually solo mining. DNS hijacking, wrong ports, or router default gateway drift can cause you to connect to a non-solo pool.
Sign 1|Stratum URL must be one of those dedicated solo domains
- ✅
solo.ckpool.org:3333(maintained by Con Kolivas, 2% fee),public-pool.io:3333 or 21496(0% fee),solo.pool.space:3333 - ❌
stratum.slushpool.com,usa.f2pool.com,eu.viabtc.com—even if the port is also 3333, these are PPS shared pools, unrelated to solo mining.
Sign 2|Initial value of mining.set_difficulty in AxeOS Stratum Log
- ✅ 1–64 (Public Pool gives 1 directly, CK gives 16–64)
- ❌ Starting at 4096 / 8192 = confirmed traditional pool, calculating daily earnings based on low-difficulty shares.
Sign 3|Search for your BTC address on the pool's worker page
- ✅ Number of Workers = 1, Hashrate ≈ Device Spec (Gamma 1.2T / Ultra 0.5T / Hex 3.6T), Shares intermittent.
- ❌ Showing "Hashrate: 80 TH/s" or "Daily Payout: 0.0000xxxx" = you are being aggregated.

Strict Definition: True Solo Mining
This tier (self-hosted + own node + own broadcast) is for purists who don't want to give up template control to others. First, a reality check: Bitaxe hardware's AxeOS only supports Stratum V1, not getblocktemplate. So for strict True Solo, you need to add a proxy like lucky-luke / bfgminer to convert gbt→stratum. The 3 signs below are for "self-hosted Public Pool" users, currently the most sovereign realistic solution for the Bitaxe community.
Sign 1|bitcoind debug.log shows CreateNewBlock()
The self-hosted Public Pool NestJS backend calls bitcoind's getblocktemplate via RPC every few tens of seconds. The log will show CreateNewBlock(): total size xxx, txs: xxx.
- Can see it → Template is generated by your node ✅
- Cannot see it → Your Docker
PUBLIC_POOL_URLstill points to the officialpublic-pool.io, which is "fake self-hosting" ❌
Sign 2|Check miner source IP in docker compose logs -f public-pool
Your Bitaxe should be configured with 192.168.x.x:3333 or your own domain. In the logs, the source IP for miner connected should be your Bitaxe's LAN IP.
-
Source IP is a public IP → Self-hosting isn't working; traffic is still going to the official pool ❌
Sign 3|Coinbase's 2% dev donation + broadcast path
Public Pool code has a hardcoded 2% donation sent to developers like @skot (MIT license, modifiable). Strict verification requires checking:
- Your bitcoind
getpeerinfoshows the block broadcast originates from your IP (not CK / skot servers). - After modifying the dev donation, the coinbase output is 100% yours → this qualifies as a "modified strict solo".
⚠️ Self-hosted without code modification is, according to solomining.de's naming, the most sovereign tier of Lottery Mining, not True Solo as defined by bitcoin.org. The missing layer is that the Stratum V1 template is built by the backend, not by Bitaxe directly fetching gbt from bitcoind.
Which Tier Should You Choose?
-
Want plug-and-play, just to confirm you haven't connected to the wrong pool → Use the broad 3 Signs. Check the dashboard and worker page, takes 5 minutes.
-
Want maximum sovereignty (own node, own template, own broadcast) → Use the strict tier. Check bitcoind and docker logs twice, and conveniently modify the 2% donation in Public Pool.
-
Want the Satoshi maximalist experience, choose True Solo → Use bitcoind + lucky-luke proxy. Keep AxeOS unchanged, replace the Stratum middleware with a gbt translator.

