zpool auto-switcher
TODO: documentation...still early days, but should be similar to my NiceHash and MiningPoolHub switchers.
zpool's API is largely undocumented. A further complication is that their profitability estimates aren't reported in the same units for each algorithm, and while some deviations from the norm are noted on their homepage, others aren't. I'm mostly going by trial and error, and by comparison with what MiningPoolHub reports for the algorithms the two pools have in common.
miners.json
Should ultimately be able to share this with the MiningPoolHub and NiceHash switchers. Each available algorithm is described with the following values:
bin: command line to launch miner. {HOST}, {PORT}, {USERNAME}, and {PASSWORD} will be filled in by the switcher. power_limit: power limit for GPU(s) gpu_oc: GPU overclock, Hz (or negative for underclock; 0 for stock speed) mem_oc: memory overclock, Hz (or negative or zero) fan: fan speed, % (0 for automatic) speed: total mining speed for this algorithm, GH/s power: total power consumption, kW
gpu_oc, mem_oc, and fan may be provided as a single value each to be applied to all cards or as an array each to set cards individually.
algo_map.json
Since different pools may use different labels for the same algorithm, we need to map what the pool uses to what we used in miners.json. The index is the pool's label; the value is our label.
conf.json
The values the zpool switcher cares about are these:
card_type: if set to "nvidia", we can set card clocks, fan speeds, etc. Other values (such as "amd") aren't implemented. currency: Coinbase only supports "USD" for this value. If you use a different exchange's data, you may have other options available. pwrcost: your cost of electric power, in currency units per kWh min_profit: if the rig's profit falls below this value, stop mining payment_currency: how you want zpool to pay you payment_addr: where zpool should send payment
The user_name and miner_name values in the example aren't used by the zpool switcher, but may be used by other switchers.