Skip to content
Peter John Bushnell edited this page Jan 16, 2023 · 3 revisions

Devnet is now a mirror of testnet in that the genesis blocks is now the same as the testnet genesis block, this allows devnet to follow testnet where consensus allows. Other chainparams should typically be the same as testnet except for new consensus changes we are testing. This allows the team to copy testnet and run tests without impacting testnet, the testnet community or other services like Ocean. Starting devnet happens in two steps, first is to bootstrap devnet from testnet and second to restart the client with the devnet network flag.

Bootstrapping Devnet

Bootstrapping devnet only needs to happen on the first node set up for the network. If you are connecting to an existing devnet network you do not need to do this step and can move to the running devnet step below.

To start the bootstrap process, start the client with the following command.

defid -devnet-bootstrap -daemon

The client should now connect to testnet. The -devnet-bootstrap command changes the P2P port, RPC port, DNS seeds and "magic number" to allow devnet to connect to testnet. To then communicate with the daemon you need to pass the same bootstrap param to defi-cli.

defi-cli -devnet-bootstrap getblockchaininfo

Keep checking the sync process with getblockchaininfo until we are either synced to tip or until we hit whatever consensus changes have been made. If the sync process stalls before the expected height contact the development team.

Once synced stop the client with the following command and move on to the running devnet step below.

defi-cli -devnet-bootstrap stop

Running devnet

Running devnet is the same as running testnet, you start the client with the following command.

defid -devnet -daemon

To then connect to the client use the following command.

defi-cli -devnet getblockchaininfo

Note: If you are setting up the first staking node for the network you will want to copy over the wallet and defi.conf from the DeFiChain testnet staking MN and update the defi.conf chaning the [test] section to [devnet].