Community-run. Not an official TrueNorth project site.Official site: truenorth-project.github.ioFrançais
Guide · v30.5.0

Mine TrueNorth with your own node

This is solo mining with the official release. You run your own node, and any block you find pays you directly with no pool in the middle. If you'd rather have smaller, steadier payouts, read this through step 3 and then see Pools.

What you need

  • A 64-bit CPU. Hardware AES (AES-NI on Intel and AMD) makes it much faster, and almost every desktop or server CPU from the last ten years has it.
  • About 3 GB of free RAM for the node and miner together. Don't run it tight: a 4 GB virtual machine running both can lock up, while 5 GB is comfortable.
  • A few GB of disk.
  • Linux, macOS (Apple silicon) or Windows, 64-bit.

Windows miners: the v30.5.0 miner can't connect to the node on Windows (issue #19) and exits after a minute. The fix is in the v30.5.1-rc1 pre-release. Until a final release includes it, use v30.5.1-rc1 on Windows if you want to mine. The node and wallet in v30.5.0 work fine.

Download and verify

From the v30.5.0 release page, download the archive for your system plus SHA256SUMS and SHA256SUMS.asc. Only download from the official GitHub releases page.

Then check the signature and the checksums. On Linux or macOS:

curl -LO https://raw.githubusercontent.com/truenorth-project/truenorth/master/contrib/keys/septentrion-dev.asc
gpg --import septentrion-dev.asc
gpg --verify SHA256SUMS.asc SHA256SUMS
sha256sum --ignore-missing -c SHA256SUMS

On macOS use shasum -a 256 --ignore-missing -c SHA256SUMS for the last line. On Windows, install Gpg4win for the signature, then compare the hash yourself:

Get-FileHash .\truenorth-v30.5.0-windows-x86_64.zip -Algorithm SHA256

gpg --verify should print Good signature. It will also warn that the key isn't certified, which only means you haven't told GPG to trust it. At the end it prints two fingerprints. The primary key fingerprint must be:

3F0B AE04 5861 5427 B8CA 935E 3E24 2DF5 E447 8AE5

The release is signed with a subkey, so the opening lines name 895B 7591 E970 1E99 D87D 58A9 B932 A2FB D92C 626D. That's expected.

Check the primary fingerprint against more than one source: this page, the project's official site, and the same key published at github.com/septentrion-dev.gpg and keys.openpgp.org. Anyone who could change one of them could change the key next to it.

Start the node and let it sync

Linux or macOS, from the folder you unpacked:

./bin/truenorthd -daemon
./bin/truenorth-cli -rpcwait getblockchaininfo

Windows, in PowerShell from the unpacked folder:

Start-Process -FilePath ".\bin\truenorthd.exe" -WindowStyle Hidden
.\bin\truenorth-cli.exe -rpcwait getblockchaininfo

Wait until initialblockdownload says false, and check that truenorth-cli getconnectioncount is above 0. If it stays at 0 peers, restart the node with -addnode=seed.tor.tncoin.xyz:9555, one of the public seed nodes.

Make a wallet and an address

./bin/truenorth-cli createwallet mining

Encrypt it before anything is mined into it. On Linux or macOS this keeps the passphrase out of your shell history:

read -rsp "Passphrase: " P; echo; printf '%s\n' "$P" | ./bin/truenorth-cli -rpcwallet=mining -stdin encryptwallet; unset P

Then make an address and back the wallet up to somewhere other than this machine:

./bin/truenorth-cli -rpcwallet=mining getnewaddress
./bin/truenorth-cli -rpcwallet=mining backupwallet ~/truenorth-wallet-backup.dat

On Windows, run the same commands with .\bin\truenorth-cli.exe. Your address starts with north1z. Write the passphrase down and keep it safe. If you lose it, the coins are gone and nobody can recover them for you.

Start the miner

Use one thread per physical core, not per hyperthread. Each RandomX thread works through 256 KB of L2 cache and 2 MB of L3 cache, and running more threads than that usually makes a machine slower. On Linux, lscpu shows cores per socket and sockets; multiply them.

Linux:

./bin/truenorth-miner -chain=main -datadir=$HOME/.truenorth -address=north1z... -threads=8

macOS:

./bin/truenorth-miner -chain=main -datadir="$HOME/Library/Application Support/TrueNorth" -address=north1z... -threads=8

Windows (v30.5.1-rc1 or later, see above). A fresh install keeps its data in %LOCALAPPDATA%\TrueNorth:

.\bin\truenorth-miner.exe -chain=main -datadir="$env:LOCALAPPDATA\TrueNorth" -address=north1z... -threads=8

To find the best thread count, compare a few values with truenorth-miner -benchmark=1 -threads=N, which measures raw hashrate without a node. If you use the computer for other things too, leave a thread or two free. Leave -longpoll and -budgetseconds at their defaults.

Turn on huge pages (Linux)

Huge pages typically add around 10 to 20% hashrate, more on big multi-socket machines and little on small ones.

sudo sysctl -w vm.nr_hugepages=1560
grep HugePages /proc/meminfo

The README suggests 1250, which is enough for the miner alone. If the node runs on the same machine, use about 1560, since the node takes around 260 pages itself. Put the setting in a file under /etc/sysctl.d/ so it survives a reboot.

The miner may log randomx_alloc_dataset failed with LARGE_PAGES; retrying without huge pages when it starts. Check what it actually got:

grep HugetlbPages /proc/$(pidof truenorth-miner)/status

About 2.4 GB means the dataset is in huge pages. Much less means it fell back to normal memory; raise vm.nr_hugepages and restart the miner.

What to expect

  • As a rough guide from our own machines, an older server CPU such as a Xeon E5-2650 v3 does about 300 H/s per thread and a recent desktop i9 about 450. Your benchmark is the real number.
  • Mined coins stay immature for 100 blocks, about 3.3 hours, before you can spend them.
  • With a few kH/s you can go a while between blocks. That's luck, not a fault. Compare your hashrate with the network's on the Network page to see your expected share.
  • Every 2048 blocks (about 2.8 days) the RandomX seed changes. In v30.5.0 the miner can keep the old dataset while it builds the new one, which costs about 2 GB of extra RAM and often halves its speed. Restarting the miner fixes both.

Questions

Ask on r/TrueNorthCoin or in GitHub Discussions. Nobody legitimate will ever ask for your wallet file, passphrase or seed phrase.