Mine CPH

Understand the current mining paths before you start.

CPH supports local mining tests, opening-stage bootstrap mining, and external SHA-256 hardware flows. Public-bundle mining is only meaningful after your node has public peers and the public chain has advanced beyond initial sync.

Public Mining Status

Waiting for First Public Blocks

Your node is connected to public peers, but the shared public chain is still at genesis or still reporting initial sync. Do not expect the bundled miner to start until the probe command stops reporting 'waiting for blocks'.

Public Blocks
0
Public Peers
3
IBD
true

What To Do Now

Public mining is not open yet on the shared chain. Keep the node online and rerun .\probe-gbt.cmd until the waiting message disappears.

Wait For Public Blocks

Public Bundle Mining

Use this only after your node is attached to the public chain.

  • Check peer count before you start the miner.
  • Run .\probe-gbt.cmd before you start the miner.
  • If `getblocktemplate` says the node is still waiting for blocks, stop and wait for the public chain to advance.
  • The public node bundle is for normal users, not for opening-stage bootstrap control.

Bootstrap Mining

This remains an operator-controlled flow.

  • Opening-stage bootstrap mining is coordinated by operators while the public chain is still emerging.
  • It is separate from the normal public bundle path.
  • For long-run serious mining, use the Stratum bridge plus external SHA-256 hardware.

Mining Modes

Choose the mining path that fits your goal.

Not every mining method is meant for the same job.

Local test mining

Useful for proving that the mining flow works on your machine. This is the easiest path for demonstrations and bootstrap testing.

Opening-stage mining

This is the controlled flow used while the network is still at height zero and the first block is being mined.

External SHA-256 hardware

For serious long-run mining, the expected path is a Stratum bridge plus SHA-256 hardware rather than a normal desktop CPU.

Step by Step

How to begin mining safely.

The public site should make the starting sequence obvious.

Start with the public node bundle

Use the portable public node bundle first. It has the wrappers and config expected by the guides on this site.

Do not mine while the node is isolated

Before you start mining, make sure the node reports at least one public peer. Mining with zero peers can create a local private chain that the public explorer never sees.

Create a payout wallet first

Create a wallet, generate a receive address, and use that address for mining payouts before you start the miner.

Wait until the public chain is ready

Run the bundled probe command before you mine. If it still says the node is waiting for blocks, keep the node online and wait for the public chain to advance before you use the public-bundle miner.

Typical Commands

Current examples for the public node bundle.

Replace the payout placeholder with your own CPH receive address only after the probe command shows the public chain is ready.

Start the public node first

.\start-node.cmd

Check peer count first

.\cli.cmd getconnectioncount

Check public sync state

.\cli.cmd getblockchaininfo

Probe getblocktemplate readiness

.\probe-gbt.cmd

Create a mining wallet

.\cli.cmd createwallet miner

Create a payout address

.\cli.cmd -rpcwallet=miner getnewaddress "" bech32

Start the bundled solo miner

.\start-solo-miner.cmd <your_payout_address>

Readiness Checklist

Do these checks in order before you expect the miner to work.

This keeps users on the public chain instead of mining a private local branch.

  1. Run .\start-node.cmd and wait for Done loading.
  2. Check .\cli.cmd getconnectioncount and make sure it is above zero.
  3. Run .\probe-gbt.cmd.
  4. If the probe still says the node is waiting for blocks, do not start the bundled miner yet.
  5. Only after the probe succeeds should you create a payout address and run .\start-solo-miner.cmd <your_payout_address>.