minerstat mining tutorial #18: Profit switch for ASICs

We have posted a lot of different tutorials for profit switching, but there was still one very important missing. This is the profit switch for your ASIC mining and we will introduce it in this post.

In the core, profit switching for ASIC is exactly the same as all the other profit switching procedures. The only difference is, that there aren’t so many different options as ASICs usually mine only one or few algorithms and that you need to be a little bit more careful when setting up the config. But don’t worry - in this tutorial you will learn how and then you will be able to always mine the most profitable coin at any given moment.

Software

First, make sure that you have connected your ASIC machines with the minerstat dashboard. You can do that by downloading the ASIC Hub that can be installed directly to the ASICs or ASIC Hub (Non-SSH) that can be installed on a Mac or Linux computer or Raspberry PI.

If you have a lot of machines and don’t want to add them manually, grab Locator and bulk import your workers to the minerstat dashboard.

Address editor

The next step is the address editor. We need to define all pools and wallets for the coins between which we want to switch. For this tutorial, we will prepare a profit switch for Dayun Zig Z1 Lyra2Rev2 ASIC. To find all possible coins that are supported by your ASIC, you can go to our hardware page and click on the ASIC name.

To see which coins are the most profitable at any given moment, just open the typical coin of this algorithm. For Lyra2REv2 this is XVG and by examining the coin’s page you can see the top 5 coins and how better or worse are they from XVG.

For this tutorial, we will switch between XVG, MONA, VTC, Mining Pool Hub, and NiceHash.

We first need to define pool addresses for all five options …

… and wallets addresses.

After the addresses are saved we can continue to profit switch.

Side note: If you don’t want to use the tags, you can also skip them, but this will make the process a little bit harder for you to manage in the profit switch section.

Profit switch

Target

Profit switch can be applied to one worker or multiple workers at once. When selecting a target to which profit switch will apply, you can select all workers from certain groups or just mark individual workers to which you want to apply the profit switch.

If you target only one worker, your profit switch page will refresh and load the settings for this worker. If you target multiple workers, the settings will be blank and you will need to fill them. So in case you want to copy settings from one worker to multiple workers, first select one worker to load the settings, then add other multiple workers as the target (leaving that first worker still selected as the target).

Coins

In the coins section, we need to define coins between which the algorithm will switch. Select coin, the pool that was defined in the address editor, the wallet that was defined in address editor, and the pool’s fee if you want to take this aspect into consideration as well. If you don’t want to include the pool fees in the final calculation, you can also leave it at 0%.

Leave the mining client at Autoselect if you want minerstat to handle tags. If you want to do it on your own, make sure to select ASIC for the mining client and to create a custom config for each coin. This step is important as for each selected coin a config you define will be selected. To get the custom config, you will also first have to run your ASIC and establish the connection so that config will be loaded to your worker. From there, you can copy/paste it to the profit switch.

When you have the content of your config, you will need to create tags (that will be replaced when enabling profit switch through the steps explained later in this tutorial). This is important as each ASIC machine has its own configs and cannot be generalized like for any GPU mining client.

For Dayun Zig Z1, the config should look something like this.

{ "pools": [ { "url": "(POOL:XVG-LYRA)", "user": "(WAlLET:SUPRNOVA)", "pass": "x" }, { "url": "(POOL:MPH-LYRA2REV2)", "user": "(MPH)", "pass": "x" }, { "url": "(NH-LYRA2REV2)", "user": "(NH-BTC)", "pass": "x" } ], "api-allow": "W:0\/0", "api-description": "cgminer 4.11.1", "api-listen": true, "api-mcast-addr": "0.0.0.0", "api-mcast-code": "FTW", "api-mcast-des": "", "api-mcast-port": "4028", "api-network": true, "api-port": "4028", "expiry": "120", "failover-switch-delay": "300", "log": "5", "queue": "9999", "scan-time": "60", "shares": "0", "lyra2rev2-clk": "875", "lyra2rev2-vol": "0", "lyra2rev2-asic-x": "4", "lyra2rev2-asic-y": "24", "lyra2rev2-asic-num": "50", "lyra2rev2-cutofftemperature": "50", "lyra2rev2-cutofffanspeedin": "100", "lyra2rev2-cutofffanspeedout": "100", "lyra2rev2-restarthashrate": "7", "lyra2rev2-restartfailedcount": "100", "lyra2rev2-fan": "LV1", "lyra2rev2-check-testnonce": true, "lyra2rev2-scan-serial": "\dev\ttyS3", "lyra2rev2-dynamic-frequency": false, "lyra2rev2-restartenable": false, "lyra2rev2-cutoffenable": false }

If you are using Antminer S9 for example, the config looks like this.

{ "pools": [ { "url": "(POOL:SHA256)", "user": "(WALLET:BTC).(WORKER)", "pass": "x" }, { "url": "", "user": "", "pass": "x" }, { "url": "", "user": "", "pass": "x" } ], "api-listen": true, "api-network": true, "api-groups": "A:stats:pools:devs:summary:version", "api-allow": "W:0/0", "bitmain-use-vil": true, "bitmain-freq": "", "bitmain-voltage": "0706", "multi-version": "1" }

Please note that (POOL:XVG-LYRA) and (WALLET:SUPRNOVA) are tags that were defined in address editor and selected under the coin selection in profit switch. You could also replace it with the exact values, but we suggest to use tags.

Hashrate and consumption settings + dual mining

You need to enter the hash rates for individual algorithms and their power consumption manually. In this case, we will only mine with one algorithm, so only Lyra2REv2 needs to be filled. Overclocking profiles are used only at GPU mining, so we can leave it at Don't change.

Dayun Zig Z1 reaches 6.8 GH/s, which is 6800 MH/s. Its consumption is 1200 W.

Since we are using only one algorithm, the power consumption information won’t make any difference as all coins will use the same amount of power. But it doesn’t hurt to have the values saved somewhere.

Electricity costs

If you want to take electricity costs into consideration for profit switch, then enter your electricity costs. In our case, this is 0.11 EUR for kW/h.

When to switch?

Last but not least are the criteria when to switch.

The minimum difference defines when you want to switch. The default setting is 1%, but you can enter any number larger than 0%. So if you want to switch to the new coin when the new coin is 0.5% better than the current coin, enter 0.5%. If you want to switch to the new coin when the new coin is 5% better than the current coin, enter 5%. And so on.

The minimum mining time defines the minimum amount of time you want to mine the coin to which you switched. The default value is set at 10 minutes, but you can increase it in case you are mining on pools that sanction frequent pools switching.

Save changes and your profit switch profile is ready.

Also, don’t forget to activate profit switch for your workers through worker’s config.

  1. Open your workers’ config page.
  2. Select the same target as you did in profit switch.
  3. Scroll down to Profit switch.
  4. Click on the grey square to make Profit switch option checked and included in the update.
  5. Select Enabled from the drop-down.
  6. Scroll at the bottom and click on Save changes.
  7. This will activate the profit switch and within 10-15 minutes your first profit switch selection should be active.

Happy mining!

More from this series: