How to handle worker’s config like a pro

minerstat
minerstat
Nov 17 · 7 min read

The hardest part of mining for those that are only at the beginning of their mining journey or for those that are coming from a low entry-level software is most definitely mining configuration of the worker. To be completely honest, sometimes, even if you are mining for years and you know your way around different mining clients, you still might misconfigure a parameter or two.

In this blog post, we will cover all important things you need to know about the worker’s config, so you will be editing it like a pro.

Before we start …

A while ago we have introduced a simple mining configuration, which is a really easy and straightforward way to use most of the mining clients and pools. Unfortunately, there are still some situations when you just need to use advanced config editor and set up things on your own. But even if you do, we always suggest to just start from the simple config and then edit it (transform it to advanced one) on the go.

GPU mining

Let’s say that you have just connected your rig to minerstat and default config is loaded. Now you want to change your configuration to mine a different coin.

  1. Click on default mining client’s field.
  2. Enter the coin name and select the mining client that is not greyed-out (which means it is available for your worker).
  3. Click on [Simple].
  4. Select coin, enter pool address, enter wallet address, and optionally change the password (or leave it at x).
  5. Click [Save changes].

ASIC mining

Let’s say that your ASIC just synced with minerstat and loaded your configuration with the pools and wallets you set at the official dashboard to the config.

  1. Click on [Simple].
  2. Select coin, enter pool address, enter wallet address, and optionally change password.
  3. Click [Save changes].

Mining clients config formats

It is good to know that not all mining clients use the same configuration format. Usually, when you don’t follow the format as defined by the mining client, this will result in an error. This happens because mining client requires exact instructions on what to run.

For example, Claymore, Phoenix, CryptoDredge, and some others, use a very simple and straightforward way of defining the parameters:

-worker Rig-001⁣⁣ -pool eth.2miners.com:2020 -wal 0x8E6FB8f04C6b517b9313daC2495bff0787ad54a4⁣.Rig-001 -pass x -proto auto⁣​

In this format, each parameter name is denoted with dash and parameter's name, for example -pool for the pool stratum parameter. This is followed by a space and the value, in this case eth.2miners.com:2020. So to properly define a pool in such config, you must enter -pool eth.2miners.com:2020.

Some mining clients use parameters -epool , -server, or just -p and some mining clients use parameter --server (with a double dash instead of a single one).

Then you have Trex, XMRig, XMR-Stak, and others that use JSON format. Something like this:

{ "pools": [ { "user": "RG2F0RfBzwVgXHCS0KSYSuyDXTXoxfcm5c.Rig-001⁣", "url": "rvn.2miners.com:6060⁣", "pass": "x" } ], "api-bind-http": "0.0.0.0:4068", "json-response": true, "retries": 3, "retry-pause": 5, "timeout": 500, "no-watchdog":true, "algo": "x16rv2", "log-path": "t-rex.log", "exit-on-cuda-error": true, "exit-on-connection-lost": false }​

In such a format, you must be extra careful to not break anything as it is harder to debug the error than in the previous case. All essential values are usually defined between quotations marks, so if you enter the pool, wallet, and password between the quotations marks, you will be fine. For example, "url":"rvn.2miners.com:6060". On the other hand, parameters with numeric values are usually entered without the quotations marks, for example "timeout": 500.

Then there is one exception - XMR-Stak - where the final format is not valid JSON - the config actually ends with a comma, so you need to leave it like it is.

Pool, wallet, password

The three main parameters of any mining client configuration are pool, wallet, and password. Sometimes, they are not defined in a very straightforward way, so let’s see different scenarios of how to define them.

Pool

When you are defining the pool parameter, you need to enter a full stratum address, including the port. For example, eth.2miners.com:2020. If the port is missing or is incorrect, the mining won’t work.

If the stratum is using SSL port, you might need to set any SSL parameter to “true” or “1” - depending on the mining client’s requirements.

Wallet

The wallet parameter is sometimes also called an identification parameter or a user parameter. It is a parameter that defines to whom the payment will go. What to enter in this parameter depends on the pool you are using for mining.

  • Wallet address: In most cases, you will need to enter your wallet address. If you are mining on the ETH pool, this is the ETH wallet; if you are mining on the BEAM pool, this is the BEAM wallet; and so on.
  • Username: Some pools require registration and username as an identification method. Some more popular pools that are using this approach are SlushPool, Mining Pool Hub, Suprnova, and Mining Rig Rentals.
  • Bitcoin address: On some pools with the auto-exchange feature or marketplaces, you are mining to BTC address. So instead of using the coin’s wallet address, you need to enter your BTC wallet address. Some more popular pools that are using this approach are NiceHash, zpool, and Zergpool.

⚠️ What you should not do: Do not set the ETH pool and BTC wallet for mining on a regular ETH pool (same applies for any other mixed combinations). Most of the pools don’t have the auto-exchange function and if they do, they will clearly state it and let you know how to activate it (for example, setting the password as c=BTC). Doing this will only result in errors and no earnings.

Password

The password parameter is usually set just to x. However, in some cases, you can use different password parameters.

  • Password set on the pool: You can use the password you have set on the pool when you added your worker if the pool has this option. ⚠️ Really important: this is not your login password, but your worker’s password.
  • The difficulty as a password: If the pool requires you to add difficulty to the password parameter, you need to set it as defined by the pool.
  • c=BTC: Some multi pools require setting passwords as c=BTC, where BTC can also be replaced with some other coin that is supported by the pool. Such a password denotes the coin in which you want to get paid. Some more popular pools that are using this approach are zpool, Zergpool, and others. Make sure to match the wallet parameter in such cases. If you enter c=LTC, you need to set an LTC wallet as a wallet parameter.

Algorithm and personalization

Some of the mining clients - especially those offering multiple different algorithms or families of algorithms - use algorithm and personalization parameters. These parameters are usually denoted as a, algo, coin, or pers.

If your mining client is using these parameters, it is very important to define them as required by the mining client. For example, if the algorithm is defined as cnr, you can’t type cryptonightr or CryptoNightR or any other value that isn’t supported.

If you are using a simple mining editor, the system will auto-generate these parameters for you. But if you ever see an “undefined algorithm” or “incorrect pers” error, visit the mining client’s website or Bitcointalk thread to see what is the correct usage of this algorithm and coin.

Other parameters

All mining clients use various different parameters that you can use to make your mining configuration better and more advanced. These parameters are usually described and presented on the mining clients’ websites or Bitcointalk threads.

Configuration checklist

If your worker’s config is incorrect, the mining won’t work. In the even worse case, the mining can look like it works, but since it is mining with wrong configuration all of the hashrate will be lost and it will be very hard to identify why. That’s why it is good to check the configuration before leaving the mining client running.

  1. Check if the pool is accepting your shares and show proper hashrate. The difference can be ±10%, but if there is no hashrate detected within a few minutes of mining, this is a signal that there is something wrong.
  2. Check if your mining efficiency is at least 98%.
  3. Check if you have properly defined the pool and entered the correct wallet. Find an example that is presented by the pool for the mining client you want to use and compare both configurations. Do not mix configurations of different mining clients.
  4. Check if the pool’s port is correct.
  5. Check if there is some password required by the pool.
  6. Check if you have used the correct algorithm and personalization parameter values. Find an example that is presented by the pool or mining client and compare both configurations. Do not mix configurations of different mining clients.

If your configuration still doesn’t work, find us on live chat or on Discord and we will gladly help you out and explain what is the proper configuration.

Want to take your mining operation to the next level? Join minerstat and start mining on Linux, Windows, or ASIC.

minerstat

Written by

minerstat

Manage your mining operation of any size from anywhere https://minerstat.com

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade