Meter Docs
Learn
  • Welcome to Meter!
  • 中文版文档
  • Overview of Meter
    • Introduction to Meter
    • Hybrid PoV Consensus Mechanism
    • MTR - The Metastable Coin
    • MTRG - Meter Governance Coin
    • On-Chain Auctions
    • The Meter Reserve
    • Meter's Ethereum Emulation Mode
  • Wallet Setup
    • Interacting with Meter Mainnet Using MetaMask
    • Interacting with Meter Mainnet Using Ledger
    • Adding Custom Tokens to MetaMask
    • Getting MTR for Gas
    • Revoking Contract Spend Limits
    • Specifying gas (GWEI) for transactions
    • Speeding Up/ Canceling Transactions
  • Meter Passport V2.0
    • Meter Passport Architecture
    • Salient Features
    • Bridge Fee
    • Programming Meter Passport
    • Tutorials for Using Meter Passport
    • MTRG Crosschain Info
    • Onboarding Passport for Your Project
    • Technical Guideline for Meter Passport
    • Security Audit for Meter Passport V2.0
  • Staking and Validation
    • Staking MTRG
      • How to Stake MTRG
        • Choosing Candidates
        • Factors affecting Staking Rewards
      • How to Stake Incremental MTRG
      • How to Undelegate MTRG
      • How to Unbound MTRG
      • Frequently Asked Questions
    • Running a Full Node on Meter Mainnet
    • Configure the Full Node to Validator Node
    • Meter Incentive Programs to promote decentralization
  • Mining
    • Meter Mining Guide
  • NFT Collections
    • Meter Community NFTs
  • Developer Documentation
    • Meter Developer Incentives
      • Meter Developer Grant Program
      • Meter TVL Incentive Program
      • Meter Gas Monetization Program
      • Meter Co-marketing Program
      • Meter DAPP Referral Program
    • Introduction to Developer Documentation
    • Developing with Remix, Ethers.js and Web3.js
    • Index Data with SubQuery
    • Meter Native TX RESTful APIs
    • Meterify API Documentation
      • meterify.eth
      • meterify.eth.Contract
      • meterify.eth.accounts
      • meterify.utils
      • meterify.module.options
      • Callbacks Promises Events
      • json interface
    • Meterify DApp Tutorials
    • Meterify Code Examples
    • Contributing to Meter and Our Documentation
      • Documentation Guidelines
        • API Documentation Guidelines
        • Tutorial Creation Guidelines
        • Code Example Guidelines
        • Article Writing Guidelines
Powered by GitBook
On this page
  • How to Mine
  • What is a Mining Pool?
  • Mining Hardware
  • The Meter Solo Mining Pool
  • Miner Configurations
  • Shared Mining Pool
  • Running a Private Mining Pool on the Meter Network
  • Requirements
  • Downloading & Installing
  • Pool Configuration
  • Start the Portal

Was this helpful?

  1. Mining

Meter Mining Guide

PreviousMeter Incentive Programs to promote decentralizationNextMeter Community NFTs

Last updated 11 months ago

Was this helpful?

In the Meter ecosystem, MTR is created by SHA256 based PoW mining similar to Bitcoin. Therefore miners are always facing the dilemma of whether it makes more economic sense to mine MTR or mine BTC and use the BTC to buy MTR instead. To help miners make such decisions, we created a cost-parity and made it available on the . The cost parity uses the current Bitcoin hashrate and market price to calculate the break-even price for MTR for PoW mining. In reality, you will also have to consider the amount of MTR you were trying to obtain and the market depth to make an intelligent decision.

How to Mine

Generally speaking, miners may choose to operate their own SHA256 mining equipment, and gain all the rewards for their efforts, or join together with others in a mining pool and share the rewards (see ). In some cases people can subscribe to a pool and gain some of the rewards, but without owning any equipment of their own. This is called cloud mining. Each has its own benefits and drawbacks, and it is up to each person to determine which approach suits them best.

What is a Mining Pool?

When miners group together to use their combined processing power, this is called a mining pool. The rewards from mining are split proportionally according to the amount of hash power miners contribute to the pool.

Mining pools can be split into both public and private. Public pools will generally charge a fee.

Mining is strictly voluntary, and as such miners can opt to switch their mining capabilities whenever they choose, according to their own objectives or criteria. For example, if a miner that traditionally was in a Bitcoin mining pool decided to divert some or all processing power to mine another blockchain, such as Meter, it is simply a case of making a few minor configuration changes to point the mining equipment to the new pool.

Mining Hardware

ASIC miners are specialized hardware machines that are required to efficiently mine Meter.

Since Meter uses SHA256, the same as Bitcoin, miners can use the same hardware for mining both coins, and the mining setup for the two is very similar.

Hardware Setup Guide

Meter uses an account-based system, rather than the UTXO based method that Bitcoin uses. However, this difference only amounts to a small change that needs to be made in the configuration.

Follow on installing and configuring your ASICs.

The Meter Solo Mining Pool

The following are the rough production parameters for different mining hardware on the Meter testnet, tuned to 1 meter = 10 kwh for a miner with 53 W/T energy efficiency. The system has a built-in smooth curve that will reduce this parameter by half every 18months. Daily MTR production per TH/s is 0.123 when the mainnet launches initially and will go down each day.

The adaption speed to hash rate changes is still relatively slow on the testnet. However, closer to the mainnet launch, parameters will be tuned to more efficient mining hardware and faster response speed.

The Meter mining pool status statistics can be viewed at http://pool_ip:8088/stats.

Miner Configurations

To configure a miner to join the mining pool, the following fields in the Miner configuration tab of the ASIC's web panel needs to be set:

Where:

  • URL is the address of the mining pool.

  • Worker is the Meter wallet address.

  • Password is the password associated with the wallet.

Shared Mining Pool

Running a Private Mining Pool on the Meter Network

Requirements

There are three things required to run Meter nomp:

  1. Node.js

  2. A database (Redis),

  3. A connection to a coin daemon on the Meter Network, which is a Meter full node that monitors transactions on both the Meter PoW and PoS chains.

Normally a pool operator would operate a full node for stability and availability.

In Ubuntu, you could use the following command to install nodejs and Redis:

$ sudo apt install npm
$ sudo apt install nodejs
$ sudo apt install redis

Downloading & Installing

Clone the repository and run npm update for all the dependencies to be installed:

git clone https://github.com/meterio/meter-nomp.git
cd meter-nomp
npm install

Pool Configuration

There is a json config file meter.json in the pool_configs sub-directory. Make sure to configure the appropriate fields in this file, especially the rewardBeneficiary and the daemon/daemons fields.

In the sample meter.json file, the pool owner's Meter address is 0x0a05c2d862ca051010698b69b54278cbaf945ccb, which is configured as rewardBeneficiary . In addition, the mining pool has to connect to a coin daemon (full node) which is configured in the daemons section:

[
    {
        "host": "c04.meter.io",
        "port": 8332,
        "user": "testuser",
        "password": "testpass"
    }
]

c04.meter.io is a node we provided for testing only, its availability is not guaranteed. If you are running a pool, you should be running a full node on Meter mainnet (Please refer to the mainnet full node tutorial on Github).

There are many other fields in meter.json. We could ignore them for now as only limited functions were ported in the current Nomp implementation for Meter.

Start the Portal

After all the configuration files have been set up, it is time to start the mining pool.

If everything is installed locally on the host, initiate using the following:

$ node init.js

The pool should now start running and we could see the status of the pool from the log and http://pool_ip:8080/stats.

Meter is actively working with mining pool providers for future mining support. We have provided a . This implementation can be used for solo mining, but is by no means a general purpose mining pool as it doesn't have reward distribution mechanism.

The meter team has setup a test mining pool on the Meter mainnet. A user could set the miner URL to; The pool pays out every 24 hours if the mining proceeds are greater than the transaction fees. The pool charges 3% commission.

An example implementation of the Meter mining pool is available on , based on the open source nomp Bitcoin mining pool. This code has been provided to show the changes needed compared to standard bitcoin mining pools, and is not intended to be used in a production environment.

Important Warning! It is always a good idea to learn about and understand any software that you are using. An important security measure to implement for nomp is to secure the database so it cannot be accessed externally. An easy way to do this for Redis is to include bind 127.0.0.1 in your redis.conf file, and use a firewall with strict rules in place to only allow accessing Redis locally. For more information please read . Another good place to start for additional information about using Redis for nomp is .

For more information on these configuration options see the .

mining pool sample implementation
http://pool.meter.io:3256
GitHub
Security
Data Persistence
pool module documentation
PoW page of Meter Explorer
this guide
What is a Mining Pool
S9 Configuration