finished updating the miner type handlers to create subclasses of the backend and type to create a miner, each of which handles its own data to simplify creation of new miner types
This commit is contained in:
@@ -1,12 +1,8 @@
|
||||
from miners.bmminer import BMMiner
|
||||
from miners._backends import BMMiner
|
||||
from miners._types import S17
|
||||
|
||||
|
||||
class BMMinerS17(BMMiner):
|
||||
class BMMinerS17(BMMiner, S17):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.api_type = "BMMiner"
|
||||
self.model = "S17"
|
||||
self.nominal_chips = 65
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"BMMinerS17: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
from miners.bmminer import BMMiner
|
||||
from miners._backends import BMMiner
|
||||
from miners._types import S17Plus
|
||||
|
||||
|
||||
class BMMinerS17Plus(BMMiner):
|
||||
class BMMinerS17Plus(BMMiner, S17Plus):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.api_type = "BMMiner"
|
||||
self.model = "S17+"
|
||||
self.nominal_chips = 65
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"BMMinerS17+: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
from miners.bmminer import BMMiner
|
||||
from miners._backends import BMMiner
|
||||
from miners._types import S17Pro
|
||||
|
||||
|
||||
class BMMinerS17Pro(BMMiner):
|
||||
class BMMinerS17Pro(BMMiner, S17Pro):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.api_type = "BMMiner"
|
||||
self.model = "S17 Pro"
|
||||
self.nominal_chips = 65
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"BMMinerS17Pro: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
from miners.bmminer import BMMiner
|
||||
from miners._backends import BMMiner
|
||||
from miners._types import S17e
|
||||
|
||||
|
||||
class BMMinerS17e(BMMiner):
|
||||
class BMMinerS17e(BMMiner, S17e):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.api_type = "BMMiner"
|
||||
self.model = "S17e"
|
||||
self.nominal_chips = 65
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"BMMinerS17e: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
from miners.bmminer import BMMiner
|
||||
from miners._backends import BMMiner
|
||||
from miners._types import T17
|
||||
|
||||
|
||||
class BMMinerT17(BMMiner):
|
||||
class BMMinerT17(BMMiner, T17):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.api_type = "BMMiner"
|
||||
self.model = "T17"
|
||||
self.nominal_chips = 65
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"BMMinerT17: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
from miners.bmminer import BMMiner
|
||||
from miners._backends import BMMiner
|
||||
from miners._types import T17Plus
|
||||
|
||||
|
||||
class BMMinerT17Plus(BMMiner):
|
||||
class BMMinerT17Plus(BMMiner, T17Plus):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.api_type = "BMMiner"
|
||||
self.model = "T17+"
|
||||
self.nominal_chips = 65
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"BMMinerT17+: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
from miners.bmminer import BMMiner
|
||||
from miners._backends import BMMiner
|
||||
from miners._types import T17e
|
||||
|
||||
|
||||
class BMMinerT17e(BMMiner):
|
||||
class BMMinerT17e(BMMiner, T17e):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.api_type = "BMMiner"
|
||||
self.model = "T17e"
|
||||
self.nominal_chips = 65
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"BMMinerT17e: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
from miners.bmminer import BMMiner
|
||||
from miners._backends import BMMiner
|
||||
from miners._types import S19
|
||||
|
||||
|
||||
class BMMinerS19(BMMiner):
|
||||
class BMMinerS19(BMMiner, S19):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.api_type = "BMMiner"
|
||||
self.model = "S19"
|
||||
self.nominal_chips = 114
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"BMMinerS19: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
from miners.bmminer import BMMiner
|
||||
from miners._backends import BMMiner
|
||||
from miners._types import S19Pro
|
||||
|
||||
|
||||
class BMMinerS19Pro(BMMiner):
|
||||
class BMMinerS19Pro(BMMiner, S19Pro):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.api_type = "BMMiner"
|
||||
self.model = "S19 Pro"
|
||||
self.nominal_chips = 114
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"BMMinerS19Pro: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
from miners.bmminer import BMMiner
|
||||
from miners._backends import BMMiner
|
||||
from miners._types import S19j
|
||||
|
||||
|
||||
class BMMinerS19j(BMMiner):
|
||||
class BMMinerS19j(BMMiner, S19j):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.api_type = "BMMiner"
|
||||
self.model = "S19j"
|
||||
self.nominal_chips = 114
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"BMMinerS19j: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
from miners.bmminer import BMMiner
|
||||
from miners._backends import BMMiner
|
||||
from miners._types import S19jPro
|
||||
|
||||
|
||||
class BMMinerS19jPro(BMMiner):
|
||||
class BMMinerS19jPro(BMMiner, S19jPro):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.api_type = "BMMiner"
|
||||
self.model = "S19j Pro"
|
||||
self.nominal_chips = 114
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"BMMinerS19jPro: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
from miners.bmminer import BMMiner
|
||||
from miners._backends import BMMiner
|
||||
from miners._types import T19
|
||||
|
||||
|
||||
class BMMinerT19(BMMiner):
|
||||
class BMMinerT19(BMMiner, T19):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.api_type = "BMMiner"
|
||||
self.model = "T19"
|
||||
self.nominal_chips = 114
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"BMMinerT19: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,11 +1,8 @@
|
||||
from miners.bmminer import BMMiner
|
||||
from miners._backends import BMMiner
|
||||
from miners._types import S9
|
||||
|
||||
|
||||
class BMMinerS9(BMMiner):
|
||||
class BMMinerS9(BMMiner, S9):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.model = "S9"
|
||||
self.api_type = "BMMiner"
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"BMMinerS9: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,11 +1,8 @@
|
||||
from miners.bmminer import BMMiner
|
||||
from miners._backends import BMMiner
|
||||
from miners._types import T9
|
||||
|
||||
|
||||
class BMMinerT9(BMMiner):
|
||||
class BMMinerT9(BMMiner, T9):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.model = "T9"
|
||||
self.api_type = "BMMiner"
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"BMMinerT9: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
from miners.bosminer import BOSMiner
|
||||
from miners._backends import BOSMiner
|
||||
from miners._types import S17
|
||||
|
||||
|
||||
class BOSMinerS17(BOSMiner):
|
||||
class BOSMinerS17(BOSMiner, S17):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.api_type = "BOSMiner"
|
||||
self.model = "S17"
|
||||
self.nominal_chips = 65
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"BOSMinerS17: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
from miners.bosminer import BOSMiner
|
||||
from miners._backends import BOSMiner
|
||||
from miners._types import S17Plus
|
||||
|
||||
|
||||
class BOSMinerS17Plus(BOSMiner):
|
||||
class BOSMinerS17Plus(BOSMiner, S17Plus):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.api_type = "BOSMiner"
|
||||
self.model = "S17+"
|
||||
self.nominal_chips = 65
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"BOSMinerS17+: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
from miners.bosminer import BOSMiner
|
||||
from miners._backends import BOSMiner
|
||||
from miners._types import S17Pro
|
||||
|
||||
|
||||
class BOSMinerS17Pro(BOSMiner):
|
||||
class BOSMinerS17Pro(BOSMiner, S17Pro):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.api_type = "BOSMiner"
|
||||
self.model = "S17 Pro"
|
||||
self.nominal_chips = 65
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"BOSMinerS17Pro: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
from miners.bosminer import BOSMiner
|
||||
from miners._backends import BOSMiner
|
||||
from miners._types import S17e
|
||||
|
||||
|
||||
class BOSMinerS17e(BOSMiner):
|
||||
class BOSMinerS17e(BOSMiner, S17e):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.api_type = "BOSMiner"
|
||||
self.model = "S17e"
|
||||
self.nominal_chips = 65
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"BOSMinerS17e: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
from miners.bosminer import BOSMiner
|
||||
from miners._backends import BOSMiner
|
||||
from miners._types import T17
|
||||
|
||||
|
||||
class BOSMinerT17(BOSMiner):
|
||||
class BOSMinerT17(BOSMiner, T17):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.api_type = "BOSMiner"
|
||||
self.model = "T17"
|
||||
self.nominal_chips = 65
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"BOSMinerT17: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
from miners.bosminer import BOSMiner
|
||||
from miners._backends import BOSMiner
|
||||
from miners._types import T17Plus
|
||||
|
||||
|
||||
class BOSMinerT17Plus(BOSMiner):
|
||||
class BOSMinerT17Plus(BOSMiner, T17Plus):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.api_type = "BOSMiner"
|
||||
self.model = "T17+"
|
||||
self.nominal_chips = 65
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"BOSMinerT17+: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
from miners.bosminer import BOSMiner
|
||||
from miners._backends import BOSMiner
|
||||
from miners._types import T17e
|
||||
|
||||
|
||||
class BOSMinerT17e(BOSMiner):
|
||||
class BOSMinerT17e(BOSMiner, T17e):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.api_type = "BOSMiner"
|
||||
self.model = "T17e"
|
||||
self.nominal_chips = 65
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"BOSMinerT17e: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
from miners.bosminer import BOSMiner
|
||||
from miners._backends import BOSMiner
|
||||
from miners._types import S19
|
||||
|
||||
|
||||
class BOSMinerS19(BOSMiner):
|
||||
class BOSMinerS19(BOSMiner, S19):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.api_type = "BOSMiner"
|
||||
self.model = "S19"
|
||||
self.nominal_chips = 114
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"BOSMinerS19: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
from miners.bosminer import BOSMiner
|
||||
from miners._backends import BOSMiner
|
||||
from miners._types import S19Pro
|
||||
|
||||
|
||||
class BOSMinerS19Pro(BOSMiner):
|
||||
class BOSMinerS19Pro(BOSMiner, S19Pro):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.api_type = "BOSMiner"
|
||||
self.model = "S19 Pro"
|
||||
self.nominal_chips = 114
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"BOSMinerS19Pro: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
from miners.bosminer import BOSMiner
|
||||
from miners._backends import BOSMiner
|
||||
from miners._types import S19j
|
||||
|
||||
|
||||
class BOSMinerS19j(BOSMiner):
|
||||
class BOSMinerS19j(BOSMiner, S19j):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.api_type = "BOSMiner"
|
||||
self.model = "S19j"
|
||||
self.nominal_chips = 114
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"BOSMinerS19j: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
from miners.bosminer import BOSMiner
|
||||
from miners._backends import BOSMiner
|
||||
from miners._types import S19jPro
|
||||
|
||||
|
||||
class BOSMinerS19jPro(BOSMiner):
|
||||
class BOSMinerS19jPro(BOSMiner, S19jPro):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.api_type = "BOSMiner"
|
||||
self.model = "S19j Pro"
|
||||
self.nominal_chips = 114
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"BOSMinerS19jPro: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
from miners.bosminer import BOSMiner
|
||||
from miners._backends import BOSMiner
|
||||
from miners._types import T19
|
||||
|
||||
|
||||
class BOSMinerT19(BOSMiner):
|
||||
class BOSMinerT19(BOSMiner, T19):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.api_type = "BOSMiner"
|
||||
self.model = "T19"
|
||||
self.nominal_chips = 114
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"BOSMinerT19: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,11 +1,8 @@
|
||||
from miners.bosminer import BOSMiner
|
||||
from miners._backends import BOSMiner
|
||||
from miners._types import S9
|
||||
|
||||
|
||||
class BOSMinerS9(BOSMiner):
|
||||
class BOSMinerS9(BOSMiner, S9):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.model = "S9"
|
||||
self.api_type = "BOSMiner"
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"BOSMinerS9: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
from miners.cgminer import CGMiner
|
||||
from miners._backends import CGMiner
|
||||
from miners._types import S17
|
||||
|
||||
|
||||
class CGMinerS17(CGMiner):
|
||||
class CGMinerS17(CGMiner, S17):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.api_type = "CGMiner"
|
||||
self.model = "S17"
|
||||
self.nominal_chips = 65
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"CGMinerS17: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
from miners.cgminer import CGMiner
|
||||
from miners._backends import CGMiner
|
||||
from miners._types import S17Plus
|
||||
|
||||
|
||||
class CGMinerS17Plus(CGMiner):
|
||||
class CGMinerS17Plus(CGMiner, S17Plus):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.api_type = "CGMiner"
|
||||
self.model = "S17+"
|
||||
self.nominal_chips = 65
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"CGMinerS17+: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
from miners.cgminer import CGMiner
|
||||
from miners._backends import CGMiner
|
||||
from miners._types import S17Pro
|
||||
|
||||
|
||||
class CGMinerS17Pro(CGMiner):
|
||||
class CGMinerS17Pro(CGMiner, S17Pro):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.api_type = "CGMiner"
|
||||
self.model = "S17 Pro"
|
||||
self.nominal_chips = 65
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"CGMinerS17Pro: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
from miners.cgminer import CGMiner
|
||||
from miners._backends import CGMiner
|
||||
from miners._types import S17e
|
||||
|
||||
|
||||
class CGMinerS17e(CGMiner):
|
||||
class CGMinerS17e(CGMiner, S17e):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.api_type = "CGMiner"
|
||||
self.model = "S17e"
|
||||
self.nominal_chips = 65
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"CGMinerS17e: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
from miners.cgminer import CGMiner
|
||||
from miners._backends import CGMiner
|
||||
from miners._types import T17
|
||||
|
||||
|
||||
class CGMinerT17(CGMiner):
|
||||
class CGMinerT17(CGMiner, T17):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.api_type = "CGMiner"
|
||||
self.model = "T17"
|
||||
self.nominal_chips = 65
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"CGMinerT17: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
from miners.cgminer import CGMiner
|
||||
from miners._backends import CGMiner
|
||||
from miners._types import T17Plus
|
||||
|
||||
|
||||
class CGMinerT17Plus(CGMiner):
|
||||
class CGMinerT17Plus(CGMiner, T17Plus):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.api_type = "CGMiner"
|
||||
self.model = "T17+"
|
||||
self.nominal_chips = 65
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"CGMinerT17+: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
from miners.cgminer import CGMiner
|
||||
from miners._backends import CGMiner
|
||||
from miners._types import T17e
|
||||
|
||||
|
||||
class CGMinerT17e(CGMiner):
|
||||
class CGMinerT17e(CGMiner, T17e):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.api_type = "CGMiner"
|
||||
self.model = "T17e"
|
||||
self.nominal_chips = 65
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"CGMinerT17e: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
from miners.cgminer import CGMiner
|
||||
from miners._backends import CGMiner
|
||||
from miners._types import S19
|
||||
|
||||
|
||||
class CGMinerS19(CGMiner):
|
||||
class CGMinerS19(CGMiner, S19):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.api_type = "CGMiner"
|
||||
self.model = "S19"
|
||||
self.nominal_chips = 114
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"CGMinerS19: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
from miners.cgminer import CGMiner
|
||||
from miners._backends import CGMiner
|
||||
from miners._types import S19Pro
|
||||
|
||||
|
||||
class CGMinerS19Pro(CGMiner):
|
||||
class CGMinerS19Pro(CGMiner, S19Pro):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.api_type = "CGMiner"
|
||||
self.model = "S19 Pro"
|
||||
self.nominal_chips = 114
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"CGMinerS19Pro: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
from miners.cgminer import CGMiner
|
||||
from miners._backends import CGMiner
|
||||
from miners._types import S19j
|
||||
|
||||
|
||||
class CGMinerS19j(CGMiner):
|
||||
class CGMinerS19j(CGMiner, S19j):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.api_type = "CGMiner"
|
||||
self.model = "S19j"
|
||||
self.nominal_chips = 114
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"CGMinerS19j: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
from miners.cgminer import CGMiner
|
||||
from miners._backends import CGMiner
|
||||
from miners._types import S19jPro
|
||||
|
||||
|
||||
class CGMinerS19jPro(CGMiner):
|
||||
class CGMinerS19jPro(CGMiner, S19jPro):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.api_type = "CGMiner"
|
||||
self.model = "S19j Pro"
|
||||
self.nominal_chips = 114
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"CGMinerS19jPro: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
from miners.cgminer import CGMiner
|
||||
from miners._backends import CGMiner
|
||||
from miners._types import T19
|
||||
|
||||
|
||||
class CGMinerT19(CGMiner):
|
||||
class CGMinerT19(CGMiner, T19):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.api_type = "CGMiner"
|
||||
self.model = "T19"
|
||||
self.nominal_chips = 114
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"CGMinerT19: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,11 +1,8 @@
|
||||
from miners.cgminer import CGMiner
|
||||
from miners._backends import CGMiner
|
||||
from miners._types import S9
|
||||
|
||||
|
||||
class CGMinerS9(CGMiner):
|
||||
class CGMinerS9(CGMiner, S9):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.model = "S9"
|
||||
self.api_type = "CGMiner"
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"CGMinerS9: {str(self.ip)}"
|
||||
self.ip = ip
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
from miners.cgminer import CGMiner
|
||||
from miners._backends.cgminer import CGMiner
|
||||
|
||||
|
||||
class CGMinerT9(CGMiner):
|
||||
|
||||
@@ -1,2 +1 @@
|
||||
from .S9 import CGMinerS9
|
||||
from .T9 import CGMinerT9
|
||||
|
||||
@@ -1,49 +1,8 @@
|
||||
from miners.bmminer import BMMiner
|
||||
from miners._backends import Hiveon
|
||||
from miners._types import T9
|
||||
|
||||
|
||||
class HiveonT9(BMMiner):
|
||||
class HiveonT9(Hiveon, T9):
|
||||
def __init__(self, ip: str) -> None:
|
||||
super().__init__(ip)
|
||||
self.model = "T9"
|
||||
self.api_type = "Hiveon"
|
||||
self.nominal_chips = 54
|
||||
|
||||
def __repr__(self) -> str:
|
||||
return f"HiveonT9: {str(self.ip)}"
|
||||
|
||||
async def get_board_info(self) -> dict:
|
||||
"""Gets data on each board and chain in the miner."""
|
||||
board_stats = await self.api.stats()
|
||||
stats = board_stats["STATS"][1]
|
||||
boards = {}
|
||||
board_chains = {0: [2, 9, 10], 1: [3, 11, 12], 2: [4, 13, 14]}
|
||||
for idx, board in enumerate(board_chains):
|
||||
boards[board] = []
|
||||
for chain in board_chains[board]:
|
||||
count = stats[f"chain_acn{chain}"]
|
||||
chips = stats[f"chain_acs{chain}"].replace(" ", "")
|
||||
if not count == 18 or "x" in chips:
|
||||
nominal = False
|
||||
else:
|
||||
nominal = True
|
||||
boards[board].append(
|
||||
{
|
||||
"chain": chain,
|
||||
"chip_count": count,
|
||||
"chip_status": chips,
|
||||
"nominal": nominal,
|
||||
}
|
||||
)
|
||||
return boards
|
||||
|
||||
async def get_bad_boards(self) -> dict:
|
||||
"""Checks for and provides list of non working boards."""
|
||||
boards = await self.get_board_info()
|
||||
bad_boards = {}
|
||||
for board in boards.keys():
|
||||
for chain in boards[board]:
|
||||
if not chain["chip_count"] == 18 or "x" in chain["chip_status"]:
|
||||
if board not in bad_boards.keys():
|
||||
bad_boards[board] = []
|
||||
bad_boards[board].append(chain)
|
||||
return bad_boards
|
||||
self.ip = ip
|
||||
|
||||
Reference in New Issue
Block a user