MultiPoolMiner®
created by aaronsace, uselessguru and grantemsley
README.md is based on README.txt - updated on 10/11/2019 (dd/mm/yyyy) - latest version can be found here: https://github.com/MultiPoolMiner/MultiPoolMiner/blob/master/README.txt
FEATURE SUMMARY
- Monitors crypto mining pools and coins in real-time and finds the most profitable for your machine
- Controls any miner that is available via command line
- Supports benchmarking, multiple platforms (AMD, NVIDIA and CPU) and mining on A Hash Pool, BlazePool, BlockMasters, Hash Refinery, MiningPoolHub, Nicehash, YiiMP, ZergPool and Zpool pools
- Includes Watchdog Timer to detect and handle miner failures
- Comprehensive web GUI with dashboard and balances overview
- Power usage is part of the profibility calculation (optional)
- API port is configurable, default is 3999
- Invalid share detection; miner gets marked failed if the configured ration of accepted / bad shares is exceeded
Any bitcoin donations are greatly appreciated: 1MsrCoAt8qM53HUMsUxvy9gMj3QVbHLazH
INSTALLATION
- Download the latest RELEASE (.zip package) from https://github.com/MultiPoolMiner/MultiPoolMiner/releases
- Extract it to your Desktop (MultiPoolMiner will NOT work from folders such as "C:\Program Files")
- Make sure you have all pre-requisites installed/updated from the IMPORTANT NOTES section below.
- Right-click on the (required) Start.bat file and open it with a Notepad application. Multiple start.bat files are included as examples.
- Edit the Start.bat file with your details (such as YOUR username, wallet address, region, worker name, device type). New users should NOT edit anything else. Please see COMMAND LINE OPTIONS below for specification and further details.
- Save and close the Start.bat file you just edited.
- Launch the Start.bat file you just edited.
- Let the benchmarking finish (you will be earning shares even during benchmarking).
- Optional: Download, install and configure HWiNFO64, this is required if you want to make power usage a part of the profit calculation. See ConfigHWinfo64.pdf for details.
Done. You are all set to mine the most profitable coins and maximise your profits using MultiPoolMiner.
IMPORTANT NOTES
- It is not recommended but to upgrade from a previous version of MultiPoolMiner, you may simply copy the 'Stats' folder.
- Having PowerShell 6.2 installed is now a requirement. All other versions
- Microsoft .NET Framework 4.5.1 or later is required for MultiPoolMiner to function properly. Web Installer
- CCMiner (NVIDIA cards only) may need 'MSVCR120.dll' if you don't already have it: https://www.microsoft.com/en-gb/download/details.aspx?id=40784. Make sure that you install both the x86 and the x64 versions.
- CCMiner (NVIDIA cards only) may need 'VCRUNTIME140.DLL' if you don't already have it: https://www.microsoft.com/en-us/download/details.aspx?id=48145. Make sure that you install both the x86 and the x64 versions.
- It is highly recommended to set Virtual Memory size in Windows to at least 16 GB in multi-GPU systems: Computer Properties -> Advanced System Settings -> Performance -> Advanced -> Virtual Memory
- Please see the FAQ section on the bottom of this page before submitting bugs and feature requests on Github. https://github.com/MultiPoolMiner/MultiPoolMiner/issues
- Logs and Stats are produced in text format; use them when submitting issues.
- Currently mining with up to 6 GPUs is fully supported. Where required advanced users can create additional or amend current miner files to support mining with more than 6 graphics cards.
COMMAND LINE OPTIONS
(case-insensitive - except for wallet addresses (e.g. BTC), see Sample Usage section below for an example)
Listed in alphabetical order. Note: For basic operation not all parameters must be defined through start.bat.
-AllowedBadShareRatio Allowed ratio of bad shares (total / bad) as reported by the miner. If the ratio exceeds the configured threshold then the miner will marked as failed. Allowed values: 0.00 - 1.00. Default of 0 disables this check
-API_Key Required only if you are mining at MiningPoolHub. Adding this parameter / key pair allows MPM to gather the balances at the pool. The API_Key can be found in the MiningPoolHub Account detail page.
-APIPort Port for the MPM API and web GUI. The miner port range will start from APIPort +1. Default is 3999. 0 disables the API.
-Algorithm Supported algorithms sorted by pool can be found at https://multipoolminer.io/algorithms. Use commas to separate multiple values.
The following algorithms are currently supported:
Bitcore, Blakecoin, Blake2s, BlakeVanilla, C11, CryptoNightV7, CryptoNightHeavy, Ethash, X11, Decred, Equihash, Groestl, HMQ1725, HSR, JHA, Keccak, Lbry, Lyra2RE2, Lyra2z, MyriadGroestl, NeoScrypt, Pascal, Phi, Phi2, Phi1612, Polytimos, Quark, Qubit, Scrypt, SHA256, Sib, Skunk, Skein, Timetravel, Tribus, Veltor, X11, X12, X11evo, X16R, X16S, X17, Yescrypt
*Note that the list of supported algorithms can change depending on the capabilities of the supported miner binaries. Some algos are now being mined with ASICs and are no longer profitable when mined with CPU/GPU and will get removed from MPM.
Special parameters:
- Ethash2gb - can be profitable for older GPUs that have 2GB or less GDDR memory. It includes ethash coins that have a DAG file size of less than 2GB (and will be mined when most profitable). Ethereum and a few other coins have surpassed this size therefore cannot be mined with older cards.
- ethash3gb - can be profitable for older GPUs that have 3GB or less GDDR memory. It includes ethash coins that have a DAG file size of less than 3GB (and will be mined when most profitable). Ethereum and a few other coins have surpassed this size therefore cannot be mined with older cards.
- decrednicehash - if you want to include non-dual, non-Claymore Decred mining on Nicehash. NiceHash created their own implementation of Decred mining protocol.
Note that the pool selected also needs to support the required algorithm(s) or your specified pool (-PoolName) will be ignored when mining certain algorithms. The -Algorithm command is higher in execution hierarchy and can override pool selection. This feature comes handy when you mine on Zpool but also want to mine ethash coins (which is not supported by Zpool). WARNING! If you add all algorithms listed above, you may find your earnings spread across multiple pools regardless what pool(s) you specified with the -PoolName command.
-BasePowerUsage Additional base power usage (in Watt) for running the computer, monitor etc. regardless of mining hardware. Allowed values: 0.0 - 999, default is 0
-BenchmarkInterval MultiPoolMiner's update interval in seconds during benchmarks / power metering. This is a universal timer for running the entire script (downloading/processing APIs, calculation etc). It determines how long a benchmark is run for each miner file (miner/algorithm/coin). Default is 60. Note: This value correlates with -MinHashRateSamples. If you set -MinHashRateSamples too high, then MPM cannot get enough samples for reliable measurement (recommendation: 10 or more). In this case increase the benchmark interval length.
-CoinName [Zcash, ZeroCoin etc.] Limit mining to the listed coins only; this is also a per-pool setting (see Advanced Configuration). Use commas to separate multiple values. Note: Only the pools ending in ...-Coin expose all coin names in their API. Check the web dashboard / pools to see which pools expose which values.
-ConfigFile [Path\ConfigFile.txt] The default config file name is '.\Config.txt' If the config file does not exist MPM will create a config file with default values. If the file name does not have an extension MPM will add .txt file name extension. By default MPM will use the values from the command line. If you hardcode config values directly in the config file, then these values will override the command line parameters (see Advanced Configuration).
-Currency [BTC, USD, EUR, GBP, ETH ...] Choose the default currency or currencies your profit stats will be shown in. Use commas to separate multiple values. Important: MultiPoolMiner will use the first currency in the list as main currency. All profit / earning numbers will be displayed in the main (=first in the list) currency. Note: Instead af BTC you can also use mBTC (= BTC / 1000).
-CurrencySymbol [BTC, LTC, ZEC etc.] Limit mining to the listed currency only; this is also a per-pool setting (see Advanced Configuration). Use commas to separate multiple values. Note: Only the pools ending in ...-Coin expose all currency symbols in their API. Check the web dashboard / pools to see which pools expose which values.
-Dashboard Launch web dashboard after MPM start.
-Delay Specify the number of seconds required to pass before opening each miner. It is useful when cards are more sensitive to switching and need some extra time to recover (eg. clear DAG files from memory)
-DeviceName Choose the relevant GPU(s) and/or CPU mining. [CPU, GPU, GPU#02, AMD, NVIDIA, AMD#02, OpenCL#03#02 etc.]. Use commas to separate multiple values.
-DisableDevFeeMining Disable miner developer fees (Note: not all miners support turning off their built in fees, others will reduce the hashrate). This is also a per-miner setting (see Advanced Configuration).
-DisableDeviceDetection All miner by default create separate instances for each card model. To disable add -DisableDeviceDetection to your start batch file. This decreases profit. Note: Changing this parameter this will trigger some benchmarking.
-DisableEstimateCorrection Some pools overestimate the projected profits. By default MPM will reduce the projected algo price by a correction factor (actual_last24h / estimate_last24h) to counter pool the overestimated prices. Note: Not all pools include the information required for this to work in their API (currently know are MiningPoolHub & Nicehash). For these pools this setting is ignored. This is also a per-miner setting (see Advanced Configuration).
-DisableMinersWithDevFee Use only miners that do not have a dev fee built in.
-Donate Donation of mining time in minutes per day to aaronsace. Default is 24, minimum is 10 minutes per day (less than 0.7% fee). If Interval is set higher than the donation time, the interval will prime. The downloaded miner software can have their own donation system built in. Check the readme file of the respective miner used for more details.
-ExcludeAlgorithm Similar to the -Algorithm command but it is used to exclude unwanted algorithms. Supported algorithms sorted by pool can be found at https://multipoolminer.io/algorithms. Use commas to separate multiple values. This is also a per-pool setting (see Advanced Configuration).
-ExcludeCoinName [Zcash, ZeroCoin etc.] Similar to the -CoinName command but it is used to exclude selected coins from being mined. Use commas to separate multiple values. This is also a per-pool setting (see Advanced Configuration). Note: Only the pools ending in ...-Coin expose all coin names in their API. Check the web dashboard / pools to see which pools expose which values.
-ExcludeCurrencySymbol [DGB, LTC, ZEC etc.] Similar to the -CurrencySymbol command but it is used to exclude selected currency symbols from being mined. Use commas to separate multiple values. This is also a per-pool setting (see Advanced Configuration). Note: Only the pools ending in ...-Coin expose all currency symbols in their API. Check the web dashboard / pools to see which pools expose which values.
-ExcludeDeviceName Similar to the -DeviceName command but it is used to exclude unwanted devices for mining. [CPU, GPU, GPU#02, AMD, NVIDIA, AMD#02, OpenCL#03#02 etc.]. Use commas to separate multiple values.
-ExcludeMinerName Similar to the -MinerName command but it is used to exclude certain miners you don't want to use. This is useful if a miner is causing issues with your machine. Use commas to separate multiple values. Important: Newer miners, e.g. ClaymoreEthash create several child-miner names, e.g. ClaymoreEthash-GPU#01-Pascal-40. These can also be used with -ExcludeMinerName. The parameter value(s) can be in one of the 3 forms: MinerBaseName e.g. 'TeamRed', MinerBaseName-Version, e.g. 'TeamRed-v0.5.6' or MinerName, e.g. 'TeamRed-v0.5.6-1xEllesmere8GB'. Use commas to separate multiple values.
-ExcludePoolName Similar to the -PoolName command but it is used to exclude unwanted mining pools. Use commas to separate multiple values.
-MinHashRateSamples Minimum number of hashrate samples MPM will collect during benchmark per interval (higher numbers produce more exact numbers, but might prolong benchmaking). Allowed values: 10 - 99 (default is 10) Note: This value correlates with -BenchmarkInterval. If MPM cannot get the minimum valid has rate samples during the configured interval, it will automatically extend the interval to up to 3x the interval length.
-HashRateSamplesPerInterval Approximate number of hashrate samples that MPM tries to collect per interval (higher numbers produce more exact numbers, but use more CPU cycles and memory). Allowed values: 5 - 20 Note: This value correlates with -Interval. If you set -Interval too short, then MPM cannot get enough samples for reliable measurement (recommendation: 10 or more). In this case increase the interval length.
-HWiNFO64_SensorMapping Custom HWiNFO64 sensor mapping, only required when $MeasurePowerUsage is $true, see ConfigHWinfo64.pdf Note: This requires advanced configuration steps (see ConfigHWinfo64.pdf)
-IgnoreFees Beginning with version 3.1.0 MPM makes miner and pool fees part of the profitability calculation. This will lead to somewhat lower, but more accurate profit estimates. Include this command to ignore miner and pool fees (as older versions did)
-IgnorePowerCost Include this command to ignore the power costs when calculating profit. MPM will use the miner(s) that create the highest earning regardless of the power cost, so the resulting profit may be lower.
-Interval MultiPoolMiner's update interval in seconds. This is an universal timer for running the entire script (downloading/processing APIs, calculation etc). It also determines how long a benchmark is run for each miner file (miner/algorithm/coin). Default is 60. Note: This value correlates with -MinHashRateSamples. If you set -MinHashRateSamples too short, then MPM cannot get enough samples for reliable measurement (anything over 10 is fine). In this case increase the interval length.
-IntervalMultiplier Interval multiplier per algorithm during benchmarking, if an algorithm is not listed the default of 1 is used. The default values are @{"EquihashR15053" = 2; "Mtp" = 2; "MtpNicehash" = 2; "ProgPow" = 2; "Rfv2" = 2; "X16r" = 5; "X16Rt" = 3; "X16RtGin" = 3; "X16RtVeil" = 3} Note: The default values can be overwritten by specifying other values in the config file (Advanced configuration via config file required, see below).
-MeasurePowerUsage Include this command to to gather power usage per device. This is a pre-requisite to calculate power costs and effective earnings. Note: This requires advanced configuration steps (see ConfigHWinfo64.pdf)
-MinAccuracy Only pools with price accuracy greater than the configured value. Allowed values: 0 - 1 (default is 0.5 = 50%) Sometimes pools report erroneously high price spikes, just to self-correct after a few intervals. A value of 0.5 will ignore any princing information with a margin of error greater than 50%.
-MinerName Specify to only include (restrict to) certain miner applications. The parameter value(s) can be in one of the 3 forms: MinerBaseName e.g. 'TeamRed', MinerBaseName-Version, e.g. 'TeamRed-v0.5.6' or MinerName, e.g. 'TeamRed-v0.5.6-1xEllesmere8GB'. Use commas to separate multiple values.
-MinerstatusKey By default the MPM monitor uses the BTC address ('-Wallet') to identify your mining machine (rig). Use -MinerstatusKey [your-miner-status-key] to anonymize your rig. To get your minerstatuskey goto to https://multipoolminer.io/monitor
-MinerstatusURL https://multipoolminer.io/monitor/miner.php Report and monitor your mining rig's status by including the command above. Wallet address must be set even if you are only using MiningPoolHub as a pool. You can access the reported information by entering your wallet address on the https://multipoolminer.io/monitor web address. By using this service you understand and accept the terms and conditions detailed in this document (further below).
-MinWorker Minimum numner of workers at the pool required to mine on algo / coin, if less skip the algo / coin, there is little point in mining an algo or coin if there are only very few miners working on it, default: {"*": = 10}, to always mine all coins set to 0. Wildcards (* and ?) for the algorithm names are supported. If an algorithm name/wildcard matches more than one entry then the lower number takes priority. This is also a per-pool setting (see Advanced Configuration).
-PoolBalancesUpdateInterval MPM queries the pool balances every n minutes. Default is 15, minimum is 0 (=on every loop). MPM does this to minimize the requests sent to the pools. Pools usually do not update the balances in real time, so querying on each loop is unnecessary. Note: The balance overview is still shown on each loop.
-Poolname [ahashpool[-algo / -coin], blazepool[-algo / -coin], blockmasters[-algo / -coin], hashrefinery[-algo / -coin], miningpoolhub[-algo / -coin], nicehash(old), nlpool[-algo / -coin], phiphipool (deprecated), ravenminer, zergpool[-algo / -coin], zpool[-algo / -coin]] The following pools are currently supported (in alphabetical order); use commas to separate multiple values:
- AHashPool-Algo / AHashPool-Coin https://www.ahashpool.com/
Payout in BTC (Bitcoin address must be provided using the *-Wallet* command)
AHashPool-Coin allows mining selected coins only, e.g mine only ZClassic (Advanced configuration via config. file required, see below).
- BlazePool-Algo / BlazePool-Coin http://www.blazepool.com/
Payout in BTC (Bitcoin address must be provided using the *-Wallet* command)
BlazePool-Coin allows mining selected coins only, e.g mine only ZClassic (Advanced configuration via config. file required, see below).
- BlockMasters-Algo / BlockMasters-Coin http://www.blockmasters.co/
Payout in BTC (Bitcoin address must be provided using the -wallet command, see below), or any currency available in API (Advanced configuration via config file required, see below).
BlockMasters-Coin allows mining selected coins only, e.g mine only ZClassic (Advanced configuration via Config.txt required, see below).
- HashRefinery-Algo / HashRefinery-Coin http://pool.hashrefinery.com
Payout in BTC (Bitcoin address must be provided using the *-Wallet* command)
HashRefinery-Coin allows mining selected coins only, e.g mine only ZClassic (Advanced configuration via config. file required, see below).
- MiningPoolHub-Algo / MiningPooHub-Coin https://miningpoolhub.com/
- 'miningpoolhub-algo' parameter uses the 17xxx ports therefore allows the pool to decide on which coin is mined of a specific algorithm
- 'miningpoolhub-coin' allows for MultiPoolMiner to calculate and determine what is mined from all of the available coins (20xxx ports).
Usage of the 'miningpoolhub' parameter is recommended as the pool have internal rules against switching before a block is found therefore prevents its users losing shares submitted due to early switching. A registered account is required when mining on MiningPoolHub (username must be provided using the *-Username* command).
Payout in BTC (Bitcoin address must be provided using the *-Wallet* command), or any currency available in API (Advanced configuration via config file required, see below).
MiningPooHub-Coin allows mining selected coins only, e.g mine only ZClassic (Advanced configuration via config file required, see below).
- Nicehash(old) https://www.nicehash.com / https://old.nicehash.com
Payout in BTC (Bitcoin address must be provided using the *-Wallet* command) or BCH, ETX, LTC, XRP or AND ZEC (currency must be provided in config file (Advanced configuration via config file required, see below).
- NLPool https://www.nlpool.nl/
Payout in BTC (Bitcoin address must be provided using the -wallet command, see below), LTC or any currency available in API (Advanced configuration via config file required, see below).
- PhiPhiPool https://www.phi-phi-pool.com/ (Deprecated)
Note: PhiPhiPool no longer offers auto-conversion to BTC. Do NOT mine with a BTC address.
A separate wallet address for each mined currency must be provided in config file (Advanced configuration via config file required, see below).
- Ravenminer https://ravenminer.com
Payout in RVN. A separate RVN wallet address must be provided in config file (Advanced configuration via config file required, see below).
- ZergPool-Algo / ZergPool-coin http://zergpool.eu
Payout in BTC (Bitcoin address must be provided using the *-Wallet* command), or any currency available in API (Advanced configuration via config file required, see below).
ZergPool-Coin allows mining selected coins only, e.g mine only ZClassic (Advanced configuration via config file required, see below).
- Zpool-Algo / Zpool-Coin http://www.zpool.ca/
Payout in BTC (Bitcoin address must be provided using the *-Wallet* command), or any currency available in API (Advanced configuration via config file required, see below).
Zpool-Coin allows mining selected coins only, e.g mine only ZClassic (Advanced configuration via config file required, see below).
***IMPORTANT**: For the list of default configured pools consult 'start.bat.' This does not rule out other pools to be included. Selecting multiple pools is allowed and will be used on a failover basis OR if first specified pool does not support that algorithm/coin. See the *-Algorithm* command for further details and example.*
-PowerPrices Power price per kW·h, set value for each time frame, e.g. {"00:00"=0.3;"06:30"=0.6;"18:30"=0.3}, 24hr format!
-PricePenaltyFactor Default factor with which MPM multiplies the prices reported by ALL pools. The default value is 1 (valid range is from 0.1 to 1.0). E.g. If you feel that the general profit estimations as reported by MPM are too high, e.g. %20, then set -PricePenaltyFactor to 0.8. This is also settable per pool (see advanced configuration below). The value set on the pool level will override this general setting.
-ProfitabilityThreshold = 0 Minimum profit (in $Currency[0]) that must be made otherwise all mining will stop, set to 0 to allow mining even when making losses. Allowed values: 0.0 - 999, default is 0
-Proxy Specify your proxy address if applicable, i.e http://192.0.0.1:8080
-Region [Europe/US/Asia] Choose your region or the region closest to you.
-ReportStatusInterval Seconds until next miner status update (https://multipoolminer.io/monitor). Allowed values 30 - 300. Set to 0 to disable status reporting.
-ShowAllMiners (replaces '-UseFastestMinerPerAlgoOnly' as used in versions before 3.3.0) Include this command to list all available miners per algo and device index in the summary screen. By default, if there are several miners available to mine the same algo, only the most profitable of them will be listed in the summary screen. Note: In benchmark mode ALL available miners wil be listed
-ShowAllPoolBalances Include this command to display the balances of all pools (including those that are excluded with -ExcludeMinerName) on the summary screen and in the web GUI.
-ShowMinerWindow Include this command to show the running miner windows (minimized). By default MPM hides most miner windows as to not steal focus (Miners of API type 'Wrapper' will remain hidden). Hidden miners write their output to files in the Log folder.
-ShowPowerUsage Include this command to show power usage in miner overview list Note: This requires advanced configuration steps (see ConfigHWinfo64.pdf)
-SingleAlgoMining To prevent dual algorithm mining, add -SingleAlgoMining to your start batch file.
-SSL Specifying the -SSL command (without a boolean value of true or false) will restrict the miner application list to include only the miners that support secure connection.
-SwitchingPrevention Since version 2.6, the delta value (integer) that was used to determine how often MultiPoolMiner is allowed to switch, is now user-configurable on a scale of 1 to infinity on an intensity basis. Default is 1 (Start.bat default is 2). Recommended values are 1-10 where 1 means the most frequent switching and 10 means the least switching. Please note setting this value to zero (0) will not turn this function off! Please see further explanation in MULTIPOOLMINER'S LOGIC section below.
-UserName Your username you use to login to MiningPoolHub.
-Wallet Your Bitcoin payout address. Required when mining on AhashPool, BlazePool, Hash Refinery, Nicehash and Zpool (unless you have defined another payout currency (Advanced configuration via config file required, see below).
-WarmupTime Time a miner is allowed to warm up before it could get marked as failed, e.g. to compile the binaries or to get the API ready. Default is 30 (seconds).
-Watchdog Include this command to enable the watchdog feature which detects and handles miner and other related failures. It works on a unified interval that is defaulted to 60 seconds. Watchdog timers expire if three of those intervals pass without being kicked. There are three stages as to what action is taken when watchdog timers expire and is determined by the number of related expired timers.
- Stage 1: when 1 timer expires relating to one miner/algorithm combination, the one miner/algorithm combination is kicked
- Stage 2: when 2 timers expire relating to one miner file, the one miner file is kicked
- Stage 3: when 3 timers expire relating to one pool, the pool is kicked
Watchdog timers reset after three times the number of seconds it takes to get to stage 3.
-WorkerName To identify your mining rig.
SAMPLE USAGE
---------- (check "start.bat" file in root folder) ----------
@echo off cd /d %~dp0
rem ON MINING RIGS SET MININGRIG=TRUE SET MININGRIG=FALSE
if not "%GPU_FORCE_64BIT_PTR%"=="1" (setx GPU_FORCE_64BIT_PTR 1) > nul if not "%GPU_MAX_HEAP_SIZE%"=="100" (setx GPU_MAX_HEAP_SIZE 100) > nul if not "%GPU_USE_SYNC_OBJECTS%"=="1" (setx GPU_USE_SYNC_OBJECTS 1) > nul if not "%GPU_MAX_ALLOC_PERCENT%"=="100" (setx GPU_MAX_ALLOC_PERCENT 100) > nul if not "%GPU_SINGLE_ALLOC_PERCENT%"=="100" (setx GPU_SINGLE_ALLOC_PERCENT 100) > nul if not "%CUDA_DEVICE_ORDER%"=="PCI_BUS_ID" (setx CUDA_DEVICE_ORDER PCI_BUS_ID) > nul
set "command=& .\multipoolminer.ps1 -Wallet 1Q24z7gHPDbedkaWDTFqhMF8g7iHMehsCb -UserName aaronsace -WorkerName multipoolminer -Region europe -Currency btc,usd,eur -DeviceName amd,nvidia,cpu -PoolName miningpoolhubcoins,zpool,nicehash -Algorithm blake2s,cuckaroo39,cuckatoo31,cryptonightR,cryptonightV8,cryptonightheavy,decrednicehash,ethash,ethash2gb,ethash3gb,equihash,equihash1445,equihash1505,keccak,lbry,lyra2re3,mtp,mtpnicehash,neoscrypt,pascal,sib,skein,skunk,sonoa,timetravel10,x16r,x16rt,x16s,x17,x22i -Donate 24 -Watchdog -MinerStatusURL
if exist "~*.dll" del "~*.dll" > nul 2>&1 if /I "%MININGRIG%" EQU "TRUE" goto MINING rem Launch web dashboard
set "command=%command% -Dashboard" if exist ".\SnakeTail.exe" goto SNAKETAIL start pwsh -noexit -executionpolicy bypass -command "& .\reader.ps1 -log 'MultiPoolMiner_\d\d\d\d-\d\d-\d\d.txt' -sort '^[^]*' -quickstart"
goto MINING :SNAKETAIL
tasklist /fi "WINDOWTITLE eq SnakeTail - MPM_SnakeTail_LogReader*" /fo TABLE 2>nul | find /I /N "SnakeTail.exe" > nul 2>&1
if "%ERRORLEVEL%"=="1" start /min .\SnakeTail.exe .\MPM_SnakeTail_LogReader.xml :MINING
pwsh -noexit -executionpolicy bypass -windowstyle maximized -command "%command%" echo Powershell 6 or later is required. Cannot continue.
pause ---------- END OF CONTENT OF START.BAT ---------- MPM supports customized configuration via config files. The default config file name is '.\Config.txt'.
If you do not include the command line parameter -ConfigFile [Path\FileName.txt] then MPM will use the default file name. If the config file does not exist MPM will create a config file with default values. If the file name does not have an extension MPM will add .txt file name extension.
The default config file contains only the parameters which are also available per command line.
Note: More config items are added to the live configuration during runtime. For full list of available config items at runtime see the API at http://localhost:3999/config. All items could also be added manually to the config file (use with caution as this might lead to unpredictable results). The config file is a JSON file and human readable / editable. A good primer for understanding the JSON structure can be found here: https://www.tutorialspoint.com/json/index.htm Warning: The JSON file structure is very fragile - every comma counts, so be careful when editing this file manually. To test the validity of the structure use a web service like https://jsonblob.com (copy/paste the complete file).
ADVANCED CONFIGURATION
Advanced config options are available via config file