Add ePIC UMC miner support#12
Open
taserz wants to merge 1 commit into
Open
Conversation
Implements scanner, configurator, and rebooter for ePIC UMC miners via the v3 REST/JSON API on port 4028. The scanner reads /summary for pool config, hashrate (MH/s converted to TH/s), temperature per hashboard, fan speed, and software version, then /capabilities for the model name. The configurator posts the pool configuration to /coin. The rebooter posts to /reboot and polls /summary until the device comes back online. HttpAutoDetect now probes port 4028 when port 80 yields no recognized response, detecting ePIC miners by the presence of Hostname and Session fields in the /summary JSON before handing off to the EpicUmc executor.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #10.
Adds scanner, configurator, and rebooter support for ePIC UMC miners using the v3 REST/JSON API running on port 4028.
Scanner (
scanner/EpicUmc.lua):/summaryto populate pool URLs/workers/passwords fromStratumConfigs, average hashrate (MH/s converted to TH/s), per-hashboard temperatures fromHBs, fan speed fromFans, and software version/capabilitiesfor the model name, setting the full type string toePIC <Model>(e.g.ePIC SC200) orePIC UMCas a fallbackMining.Coininepic.coinfor use by the configuratorConfigurator (
configurator/EpicUmc.lua):/coinin the format the v3 API expects:{"param": {"coin": ..., "stratum_configs": [...], "unique_id": false}, "password": ...}BTCif not presentutils.getMinerLoginPassword('EpicUmc')Rebooter (
rebooter/EpicUmc.lua):/rebootwith{"param": 0, "password": ...}/summaryon port 4028 every 5 seconds (up to 30 attempts) until the device responds, matching the pattern used by other rebootersDetection (
scanner/HttpAutoDetect.lua):GET /summaryrequestHostnameandSessionfields the device is identified as an ePIC miner and theEpicUmcexecutor is launchedGenericCgminerApiruns as beforeScannerHelper.lua,ConfiguratorHelper.lua, andRebooterHelper.luaare updated to require the new scripts.