From 5f76cb9f0a0a06f1095e375a57e2e97d3c76a514 Mon Sep 17 00:00:00 2001 From: Upstream Data Date: Wed, 1 May 2024 11:36:28 -0600 Subject: [PATCH] feature: create device_info field for MinerData. --- pyasic/data/__init__.py | 4 +- pyasic/data/device.py | 11 +++++ pyasic/device/__init__.py | 0 pyasic/device/firmware.py | 27 +++++++++++ pyasic/miners/backends/antminer.py | 1 + pyasic/miners/backends/auradine.py | 3 +- pyasic/miners/backends/avalonminer.py | 1 + pyasic/miners/backends/bfgminer.py | 3 +- pyasic/miners/backends/bmminer.py | 3 +- pyasic/miners/backends/braiins_os.py | 9 ++-- pyasic/miners/backends/btminer.py | 3 +- pyasic/miners/backends/cgminer.py | 3 +- pyasic/miners/backends/epic.py | 5 +- pyasic/miners/backends/goldshell.py | 1 + pyasic/miners/backends/hiveon.py | 5 +- pyasic/miners/backends/innosilicon.py | 1 + pyasic/miners/backends/luxminer.py | 5 +- pyasic/miners/backends/marathon.py | 5 +- pyasic/miners/backends/vnish.py | 5 +- pyasic/miners/base.py | 22 +++++++-- pyasic/miners/device/__init__.py | 0 pyasic/miners/device/firmware.py | 46 +++++++++++++++++++ pyasic/miners/factory.py | 2 +- pyasic/miners/models/antminer/X15/Z15.py | 2 +- pyasic/miners/models/antminer/X17/S17.py | 2 +- pyasic/miners/models/antminer/X17/T17.py | 2 +- pyasic/miners/models/antminer/X19/S19.py | 2 +- pyasic/miners/models/antminer/X19/T19.py | 2 +- pyasic/miners/models/antminer/X21/S21.py | 2 +- pyasic/miners/models/antminer/X21/T21.py | 2 +- pyasic/miners/models/antminer/X3/D3.py | 2 +- pyasic/miners/models/antminer/X3/HS3.py | 2 +- pyasic/miners/models/antminer/X3/L3.py | 2 +- pyasic/miners/models/antminer/X5/DR5.py | 2 +- pyasic/miners/models/antminer/X7/L7.py | 2 +- pyasic/miners/models/antminer/X9/E9.py | 2 +- pyasic/miners/models/antminer/X9/S9.py | 2 +- pyasic/miners/models/antminer/X9/T9.py | 2 +- pyasic/miners/models/auradine/AD/AD2.py | 2 +- pyasic/miners/models/auradine/AD/AD3.py | 2 +- pyasic/miners/models/auradine/AI/AI2.py | 2 +- pyasic/miners/models/auradine/AI/AI3.py | 2 +- pyasic/miners/models/auradine/AT/AT1.py | 2 +- pyasic/miners/models/auradine/AT/AT2.py | 2 +- .../miners/models/avalonminer/A10X/A1026.py | 2 +- .../miners/models/avalonminer/A10X/A1047.py | 2 +- .../miners/models/avalonminer/A10X/A1066.py | 2 +- .../miners/models/avalonminer/A11X/A1166.py | 2 +- .../miners/models/avalonminer/A12X/A1246.py | 2 +- pyasic/miners/models/avalonminer/A7X/A721.py | 2 +- pyasic/miners/models/avalonminer/A7X/A741.py | 2 +- pyasic/miners/models/avalonminer/A7X/A761.py | 2 +- pyasic/miners/models/avalonminer/A8X/A821.py | 2 +- pyasic/miners/models/avalonminer/A8X/A841.py | 2 +- pyasic/miners/models/avalonminer/A8X/A851.py | 2 +- pyasic/miners/models/avalonminer/A9X/A921.py | 2 +- .../models/epic/blockminer/blockminer.py | 2 +- pyasic/miners/models/goldshell/X5/CK5.py | 2 +- pyasic/miners/models/goldshell/X5/HS5.py | 2 +- pyasic/miners/models/goldshell/X5/KD5.py | 2 +- pyasic/miners/models/goldshell/XBox/KDBox.py | 2 +- pyasic/miners/models/goldshell/XMax/KDMax.py | 2 +- pyasic/miners/models/innosilicon/A10X/A10X.py | 2 +- pyasic/miners/models/innosilicon/T3X/T3H.py | 2 +- pyasic/miners/models/whatsminer/M2X/M20.py | 2 +- pyasic/miners/models/whatsminer/M2X/M20P.py | 2 +- pyasic/miners/models/whatsminer/M2X/M20S.py | 2 +- .../miners/models/whatsminer/M2X/M20S_Plus.py | 2 +- pyasic/miners/models/whatsminer/M2X/M21.py | 2 +- pyasic/miners/models/whatsminer/M2X/M21S.py | 2 +- .../miners/models/whatsminer/M2X/M21S_Plus.py | 2 +- pyasic/miners/models/whatsminer/M2X/M29.py | 2 +- pyasic/miners/models/whatsminer/M3X/M30.py | 2 +- pyasic/miners/models/whatsminer/M3X/M30K.py | 2 +- pyasic/miners/models/whatsminer/M3X/M30L.py | 2 +- pyasic/miners/models/whatsminer/M3X/M30S.py | 2 +- .../miners/models/whatsminer/M3X/M30S_Plus.py | 2 +- .../models/whatsminer/M3X/M30S_Plus_Plus.py | 2 +- pyasic/miners/models/whatsminer/M3X/M31.py | 2 +- pyasic/miners/models/whatsminer/M3X/M31H.py | 2 +- pyasic/miners/models/whatsminer/M3X/M31L.py | 2 +- pyasic/miners/models/whatsminer/M3X/M31S.py | 2 +- pyasic/miners/models/whatsminer/M3X/M31SE.py | 2 +- .../miners/models/whatsminer/M3X/M31S_Plus.py | 2 +- pyasic/miners/models/whatsminer/M3X/M32.py | 2 +- pyasic/miners/models/whatsminer/M3X/M32S.py | 2 +- pyasic/miners/models/whatsminer/M3X/M33.py | 2 +- pyasic/miners/models/whatsminer/M3X/M33S.py | 2 +- .../miners/models/whatsminer/M3X/M33S_Plus.py | 2 +- .../models/whatsminer/M3X/M33S_Plus_Plus.py | 2 +- .../miners/models/whatsminer/M3X/M34S_Plus.py | 2 +- pyasic/miners/models/whatsminer/M3X/M36S.py | 2 +- .../miners/models/whatsminer/M3X/M36S_Plus.py | 2 +- .../models/whatsminer/M3X/M36S_Plus_Plus.py | 2 +- pyasic/miners/models/whatsminer/M3X/M39.py | 2 +- pyasic/miners/models/whatsminer/M5X/M50.py | 2 +- pyasic/miners/models/whatsminer/M5X/M50S.py | 2 +- .../miners/models/whatsminer/M5X/M50S_Plus.py | 2 +- .../models/whatsminer/M5X/M50S_Plus_Plus.py | 2 +- pyasic/miners/models/whatsminer/M5X/M53.py | 2 +- pyasic/miners/models/whatsminer/M5X/M53S.py | 2 +- .../miners/models/whatsminer/M5X/M53S_Plus.py | 2 +- .../models/whatsminer/M5X/M53S_Plus_Plus.py | 2 +- pyasic/miners/models/whatsminer/M5X/M56.py | 2 +- pyasic/miners/models/whatsminer/M5X/M56S.py | 2 +- .../miners/models/whatsminer/M5X/M56S_Plus.py | 2 +- pyasic/miners/models/whatsminer/M5X/M59.py | 2 +- pyasic/miners/models/whatsminer/M6X/M60.py | 2 +- pyasic/miners/models/whatsminer/M6X/M60S.py | 2 +- pyasic/miners/models/whatsminer/M6X/M63.py | 2 +- pyasic/miners/models/whatsminer/M6X/M63S.py | 2 +- pyasic/miners/models/whatsminer/M6X/M66.py | 2 +- pyasic/miners/models/whatsminer/M6X/M66S.py | 2 +- 113 files changed, 223 insertions(+), 122 deletions(-) create mode 100644 pyasic/data/device.py create mode 100644 pyasic/device/__init__.py create mode 100644 pyasic/device/firmware.py create mode 100644 pyasic/miners/device/__init__.py create mode 100644 pyasic/miners/device/firmware.py diff --git a/pyasic/data/__init__.py b/pyasic/data/__init__.py index fbed312c..1be7277a 100644 --- a/pyasic/data/__init__.py +++ b/pyasic/data/__init__.py @@ -25,6 +25,7 @@ from pyasic.config import MinerConfig from pyasic.config.mining import MiningModePowerTune from .boards import HashBoard +from .device import DeviceInfo from .error_codes import BraiinsOSError, InnosiliconError, WhatsminerError, X19Error from .fans import Fan @@ -71,9 +72,8 @@ class MinerData: datetime: str = field(init=False) timestamp: int = field(init=False) uptime: int = None + device_info: DeviceInfo = None mac: str = None - model: str = None - make: str = None api_ver: str = None fw_ver: str = None hostname: str = None diff --git a/pyasic/data/device.py b/pyasic/data/device.py new file mode 100644 index 00000000..01ac56b4 --- /dev/null +++ b/pyasic/data/device.py @@ -0,0 +1,11 @@ +from dataclasses import dataclass + +from pyasic.device.firmware import MinerFirmware +from pyasic.device.makes import MinerMake + + +@dataclass +class DeviceInfo: + make: MinerMake = None + model: str = None + firmware: MinerFirmware = None diff --git a/pyasic/device/__init__.py b/pyasic/device/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/pyasic/device/firmware.py b/pyasic/device/firmware.py new file mode 100644 index 00000000..a489c499 --- /dev/null +++ b/pyasic/device/firmware.py @@ -0,0 +1,27 @@ +# ------------------------------------------------------------------------------ +# Copyright 2022 Upstream Data Inc - +# - +# Licensed under the Apache License, Version 2.0 (the "License"); - +# you may not use this file except in compliance with the License. - +# You may obtain a copy of the License at - +# - +# http://www.apache.org/licenses/LICENSE-2.0 - +# - +# Unless required by applicable law or agreed to in writing, software - +# distributed under the License is distributed on an "AS IS" BASIS, - +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - +# See the License for the specific language governing permissions and - +# limitations under the License. - +# ------------------------------------------------------------------------------ + +from enum import StrEnum + + +class MinerFirmware(StrEnum): + STOCK = "Stock" + BRAIINS_OS = "BOS+" + VNISH = "VNish" + EPIC = "ePIC" + HIVEON = "Hive" + LUXOS = "LuxOS" + MARATHON = "MaraFW" diff --git a/pyasic/miners/backends/antminer.py b/pyasic/miners/backends/antminer.py index b9164c9c..6a2532d2 100644 --- a/pyasic/miners/backends/antminer.py +++ b/pyasic/miners/backends/antminer.py @@ -30,6 +30,7 @@ from pyasic.miners.data import ( RPCAPICommand, WebAPICommand, ) +from pyasic.miners.device.firmware import StockFirmware from pyasic.rpc.antminer import AntminerRPCAPI from pyasic.ssh.antminer import AntminerModernSSH from pyasic.web.antminer import AntminerModernWebAPI, AntminerOldWebAPI diff --git a/pyasic/miners/backends/auradine.py b/pyasic/miners/backends/auradine.py index 793e9c82..c0585146 100644 --- a/pyasic/miners/backends/auradine.py +++ b/pyasic/miners/backends/auradine.py @@ -28,6 +28,7 @@ from pyasic.miners.data import ( RPCAPICommand, WebAPICommand, ) +from pyasic.miners.device.firmware import StockFirmware from pyasic.rpc.gcminer import GCMinerRPCAPI from pyasic.web.auradine import AuradineWebAPI @@ -113,7 +114,7 @@ class AuradineLEDCodes(Enum): return self.value -class Auradine(BaseMiner): +class Auradine(StockFirmware): """Base handler for Auradine miners""" _rpc_cls = GCMinerRPCAPI diff --git a/pyasic/miners/backends/avalonminer.py b/pyasic/miners/backends/avalonminer.py index 58e11acf..47d0b4d2 100644 --- a/pyasic/miners/backends/avalonminer.py +++ b/pyasic/miners/backends/avalonminer.py @@ -21,6 +21,7 @@ from pyasic.data import Fan, HashBoard from pyasic.errors import APIError from pyasic.miners.backends.cgminer import CGMiner from pyasic.miners.data import DataFunction, DataLocations, DataOptions, RPCAPICommand +from pyasic.miners.device.firmware import StockFirmware AVALON_DATA_LOC = DataLocations( **{ diff --git a/pyasic/miners/backends/bfgminer.py b/pyasic/miners/backends/bfgminer.py index 250031a2..56f9ad84 100644 --- a/pyasic/miners/backends/bfgminer.py +++ b/pyasic/miners/backends/bfgminer.py @@ -21,6 +21,7 @@ from pyasic.data import Fan, HashBoard from pyasic.errors import APIError from pyasic.miners.base import BaseMiner from pyasic.miners.data import DataFunction, DataLocations, DataOptions, RPCAPICommand +from pyasic.miners.device.firmware import StockFirmware from pyasic.rpc.bfgminer import BFGMinerRPCAPI BFGMINER_DATA_LOC = DataLocations( @@ -53,7 +54,7 @@ BFGMINER_DATA_LOC = DataLocations( ) -class BFGMiner(BaseMiner): +class BFGMiner(StockFirmware): """Base handler for BFGMiner based miners.""" _rpc_cls = BFGMinerRPCAPI diff --git a/pyasic/miners/backends/bmminer.py b/pyasic/miners/backends/bmminer.py index ce2a6a49..8ade648e 100644 --- a/pyasic/miners/backends/bmminer.py +++ b/pyasic/miners/backends/bmminer.py @@ -21,6 +21,7 @@ from pyasic.data import Fan, HashBoard from pyasic.errors import APIError from pyasic.miners.base import BaseMiner from pyasic.miners.data import DataFunction, DataLocations, DataOptions, RPCAPICommand +from pyasic.miners.device.firmware import StockFirmware from pyasic.rpc.bmminer import BMMinerRPCAPI BMMINER_DATA_LOC = DataLocations( @@ -57,7 +58,7 @@ BMMINER_DATA_LOC = DataLocations( ) -class BMMiner(BaseMiner): +class BMMiner(StockFirmware): """Base handler for BMMiner based miners.""" _rpc_cls = BMMinerRPCAPI diff --git a/pyasic/miners/backends/braiins_os.py b/pyasic/miners/backends/braiins_os.py index 763bdd94..66a017cc 100644 --- a/pyasic/miners/backends/braiins_os.py +++ b/pyasic/miners/backends/braiins_os.py @@ -32,6 +32,7 @@ from pyasic.miners.data import ( RPCAPICommand, WebAPICommand, ) +from pyasic.miners.device.firmware import BraiinsOSFirmware from pyasic.rpc.bosminer import BOSMinerRPCAPI from pyasic.ssh.braiins_os import BOSMinerSSH from pyasic.web.braiins_os import BOSerWebAPI, BOSMinerWebAPI @@ -95,7 +96,7 @@ BOSMINER_DATA_LOC = DataLocations( ) -class BOSMiner(BaseMiner): +class BOSMiner(BraiinsOSFirmware): """Handler for old versions of BraiinsOS+ (pre-gRPC)""" _rpc_cls = BOSMinerRPCAPI @@ -105,8 +106,6 @@ class BOSMiner(BaseMiner): _ssh_cls = BOSMinerSSH ssh: BOSMinerSSH - firmware = "BOS+" - data_locations = BOSMINER_DATA_LOC supports_shutdown = True @@ -634,7 +633,7 @@ BOSER_DATA_LOC = DataLocations( ) -class BOSer(BaseMiner): +class BOSer(BraiinsOSFirmware): """Handler for new versions of BraiinsOS+ (post-gRPC)""" _rpc_cls = BOSMinerRPCAPI @@ -642,8 +641,6 @@ class BOSer(BaseMiner): _web_cls = BOSerWebAPI web: BOSerWebAPI - firmware = "BOS+" - data_locations = BOSER_DATA_LOC supports_autotuning = True diff --git a/pyasic/miners/backends/btminer.py b/pyasic/miners/backends/btminer.py index 2ab45270..83adf27a 100644 --- a/pyasic/miners/backends/btminer.py +++ b/pyasic/miners/backends/btminer.py @@ -23,6 +23,7 @@ from pyasic.data.error_codes import MinerErrorData, WhatsminerError from pyasic.errors import APIError from pyasic.miners.base import BaseMiner from pyasic.miners.data import DataFunction, DataLocations, DataOptions, RPCAPICommand +from pyasic.miners.device.firmware import StockFirmware from pyasic.rpc.btminer import BTMinerRPCAPI BTMINER_DATA_LOC = DataLocations( @@ -110,7 +111,7 @@ BTMINER_DATA_LOC = DataLocations( ) -class BTMiner(BaseMiner): +class BTMiner(StockFirmware): """Base handler for BTMiner based miners.""" _rpc_cls = BTMinerRPCAPI diff --git a/pyasic/miners/backends/cgminer.py b/pyasic/miners/backends/cgminer.py index 95d1a9a2..8005bf6a 100644 --- a/pyasic/miners/backends/cgminer.py +++ b/pyasic/miners/backends/cgminer.py @@ -20,6 +20,7 @@ from pyasic.config import MinerConfig from pyasic.errors import APIError from pyasic.miners.base import BaseMiner from pyasic.miners.data import DataFunction, DataLocations, DataOptions, RPCAPICommand +from pyasic.miners.device.firmware import StockFirmware from pyasic.rpc.cgminer import CGMinerRPCAPI CGMINER_DATA_LOC = DataLocations( @@ -56,7 +57,7 @@ CGMINER_DATA_LOC = DataLocations( ) -class CGMiner(BaseMiner): +class CGMiner(StockFirmware): """Base handler for CGMiner based miners""" _rpc_cls = CGMinerRPCAPI diff --git a/pyasic/miners/backends/epic.py b/pyasic/miners/backends/epic.py index ff74e135..19448cf6 100644 --- a/pyasic/miners/backends/epic.py +++ b/pyasic/miners/backends/epic.py @@ -23,6 +23,7 @@ from pyasic.errors import APIError from pyasic.logger import logger from pyasic.miners.base import BaseMiner from pyasic.miners.data import DataFunction, DataLocations, DataOptions, WebAPICommand +from pyasic.miners.device.firmware import ePICFirmware from pyasic.web.epic import ePICWebAPI EPIC_DATA_LOC = DataLocations( @@ -82,14 +83,12 @@ EPIC_DATA_LOC = DataLocations( ) -class ePIC(BaseMiner): +class ePIC(ePICFirmware): """Handler for miners with the ePIC board""" _web_cls = ePICWebAPI web: ePICWebAPI - firmware = "ePIC" - data_locations = EPIC_DATA_LOC supports_shutdown = True diff --git a/pyasic/miners/backends/goldshell.py b/pyasic/miners/backends/goldshell.py index c6159db3..a37eed42 100644 --- a/pyasic/miners/backends/goldshell.py +++ b/pyasic/miners/backends/goldshell.py @@ -27,6 +27,7 @@ from pyasic.miners.data import ( RPCAPICommand, WebAPICommand, ) +from pyasic.miners.device.firmware import StockFirmware from pyasic.web.goldshell import GoldshellWebAPI GOLDSHELL_DATA_LOC = DataLocations( diff --git a/pyasic/miners/backends/hiveon.py b/pyasic/miners/backends/hiveon.py index 8680d3b3..272214a0 100644 --- a/pyasic/miners/backends/hiveon.py +++ b/pyasic/miners/backends/hiveon.py @@ -15,7 +15,8 @@ # ------------------------------------------------------------------------------ from pyasic.miners.backends import BMMiner +from pyasic.miners.device.firmware import HiveonFirmware -class Hiveon(BMMiner): - firmware = "Hive" +class Hiveon(BMMiner, HiveonFirmware): + pass diff --git a/pyasic/miners/backends/innosilicon.py b/pyasic/miners/backends/innosilicon.py index d806aa15..858a8ba0 100644 --- a/pyasic/miners/backends/innosilicon.py +++ b/pyasic/miners/backends/innosilicon.py @@ -28,6 +28,7 @@ from pyasic.miners.data import ( RPCAPICommand, WebAPICommand, ) +from pyasic.miners.device.firmware import StockFirmware from pyasic.web.innosilicon import InnosiliconWebAPI INNOSILICON_DATA_LOC = DataLocations( diff --git a/pyasic/miners/backends/luxminer.py b/pyasic/miners/backends/luxminer.py index 7b6e542f..eb8fdfbd 100644 --- a/pyasic/miners/backends/luxminer.py +++ b/pyasic/miners/backends/luxminer.py @@ -20,6 +20,7 @@ from pyasic.data import Fan, HashBoard from pyasic.errors import APIError from pyasic.miners.base import BaseMiner from pyasic.miners.data import DataFunction, DataLocations, DataOptions, RPCAPICommand +from pyasic.miners.device.firmware import LuxOSFirmware from pyasic.rpc.luxminer import LUXMinerRPCAPI LUXMINER_DATA_LOC = DataLocations( @@ -55,14 +56,12 @@ LUXMINER_DATA_LOC = DataLocations( ) -class LUXMiner(BaseMiner): +class LUXMiner(LuxOSFirmware): """Handler for LuxOS miners""" _rpc_cls = LUXMinerRPCAPI rpc: LUXMinerRPCAPI - firmware = "LuxOS" - data_locations = LUXMINER_DATA_LOC async def _get_session(self) -> Optional[str]: diff --git a/pyasic/miners/backends/marathon.py b/pyasic/miners/backends/marathon.py index 99c59a32..97ec25ec 100644 --- a/pyasic/miners/backends/marathon.py +++ b/pyasic/miners/backends/marathon.py @@ -6,6 +6,7 @@ from pyasic.data import Fan, HashBoard from pyasic.errors import APIError from pyasic.miners.base import BaseMiner from pyasic.miners.data import DataFunction, DataLocations, DataOptions, WebAPICommand +from pyasic.miners.device.firmware import MaraFirmware, StockFirmware from pyasic.misc import merge_dicts from pyasic.web.marathon import MaraWebAPI @@ -63,14 +64,12 @@ MARA_DATA_LOC = DataLocations( ) -class MaraMiner(BaseMiner): +class MaraMiner(MaraFirmware): _web_cls = MaraWebAPI web: MaraWebAPI data_locations = MARA_DATA_LOC - firmware = "MaraFW" - async def fault_light_off(self) -> bool: res = await self.web.set_locate_miner(blinking=False) return res.get("blinking") is False diff --git a/pyasic/miners/backends/vnish.py b/pyasic/miners/backends/vnish.py index 15c60f41..da690362 100644 --- a/pyasic/miners/backends/vnish.py +++ b/pyasic/miners/backends/vnish.py @@ -26,6 +26,7 @@ from pyasic.miners.data import ( RPCAPICommand, WebAPICommand, ) +from pyasic.miners.device.firmware import VNishFirmware from pyasic.web.vnish import VNishWebAPI VNISH_DATA_LOC = DataLocations( @@ -82,7 +83,7 @@ VNISH_DATA_LOC = DataLocations( ) -class VNish(BMMiner): +class VNish(BMMiner, VNishFirmware): """Handler for VNish miners""" _web_cls = VNishWebAPI @@ -90,8 +91,6 @@ class VNish(BMMiner): supports_shutdown = True - firmware = "VNish" - data_locations = VNISH_DATA_LOC async def restart_backend(self) -> bool: diff --git a/pyasic/miners/base.py b/pyasic/miners/base.py index 0126b59c..adfe1100 100644 --- a/pyasic/miners/base.py +++ b/pyasic/miners/base.py @@ -20,7 +20,10 @@ from typing import List, Optional, Protocol, Tuple, Type, TypeVar, Union from pyasic.config import MinerConfig from pyasic.data import Fan, HashBoard, MinerData +from pyasic.data.device import DeviceInfo from pyasic.data.error_codes import MinerErrorData +from pyasic.device.firmware import MinerFirmware +from pyasic.device.makes import MinerMake from pyasic.errors import APIError from pyasic.logger import logger from pyasic.miners.data import DataLocations, DataOptions, RPCAPICommand, WebAPICommand @@ -36,9 +39,9 @@ class MinerProtocol(Protocol): web: _web_cls = None ssh: _ssh_cls = None - make: str = None + make: MinerMake = None raw_model: str = None - firmware: str = None + firmware: MinerFirmware = None expected_hashboards: int = 3 expected_chips: int = None @@ -79,6 +82,10 @@ class MinerProtocol(Protocol): model_data.append(f"({self.firmware})") return " ".join(model_data) + @property + def device_info(self) -> DeviceInfo: + return DeviceInfo(make=self.make, model=self.raw_model, firmware=self.firmware) + @property def api(self): return self.rpc @@ -183,6 +190,14 @@ class MinerProtocol(Protocol): """ return self.model + async def get_device_info(self) -> Optional[DeviceInfo]: + """Get device information, including model, make, and firmware. + + Returns: + A dataclass containing device information. + """ + return self.device_info + async def get_api_ver(self) -> Optional[str]: """Get the API version of the miner and is as a string. @@ -465,8 +480,7 @@ class MinerProtocol(Protocol): """ data = MinerData( ip=str(self.ip), - make=self.make, - model=self.model, + device_info=self.device_info, expected_chips=( self.expected_chips * self.expected_hashboards if self.expected_chips is not None diff --git a/pyasic/miners/device/__init__.py b/pyasic/miners/device/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/pyasic/miners/device/firmware.py b/pyasic/miners/device/firmware.py new file mode 100644 index 00000000..efd2b974 --- /dev/null +++ b/pyasic/miners/device/firmware.py @@ -0,0 +1,46 @@ +# ------------------------------------------------------------------------------ +# Copyright 2022 Upstream Data Inc - +# - +# Licensed under the Apache License, Version 2.0 (the "License"); - +# you may not use this file except in compliance with the License. - +# You may obtain a copy of the License at - +# - +# http://www.apache.org/licenses/LICENSE-2.0 - +# - +# Unless required by applicable law or agreed to in writing, software - +# distributed under the License is distributed on an "AS IS" BASIS, - +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - +# See the License for the specific language governing permissions and - +# limitations under the License. - +# ------------------------------------------------------------------------------ + +from pyasic.device.firmware import MinerFirmware +from pyasic.miners.base import BaseMiner + + +class StockFirmware(BaseMiner): + firmware = MinerFirmware.STOCK + + +class BraiinsOSFirmware(BaseMiner): + firmware = MinerFirmware.BRAIINS_OS + + +class VNishFirmware(BaseMiner): + firmware = MinerFirmware.VNISH + + +class ePICFirmware(BaseMiner): + firmware = MinerFirmware.EPIC + + +class HiveonFirmware(BaseMiner): + firmware = MinerFirmware.HIVEON + + +class LuxOSFirmware(BaseMiner): + firmware = MinerFirmware.LUXOS + + +class MaraFirmware(BaseMiner): + firmware = MinerFirmware.MARATHON diff --git a/pyasic/miners/factory.py b/pyasic/miners/factory.py index da0ac719..8e3f1e40 100644 --- a/pyasic/miners/factory.py +++ b/pyasic/miners/factory.py @@ -34,9 +34,9 @@ from pyasic.miners.backends import * from pyasic.miners.backends.unknown import UnknownMiner from pyasic.miners.base import AnyMiner from pyasic.miners.blockminer import * +from pyasic.miners.device.makes import * from pyasic.miners.goldshell import * from pyasic.miners.innosilicon import * -from pyasic.miners.makes import * from pyasic.miners.whatsminer import * diff --git a/pyasic/miners/models/antminer/X15/Z15.py b/pyasic/miners/models/antminer/X15/Z15.py index 0dbfd21a..e5882912 100644 --- a/pyasic/miners/models/antminer/X15/Z15.py +++ b/pyasic/miners/models/antminer/X15/Z15.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import AntMinerMake +from pyasic.miners.device.makes import AntMinerMake class Z15(AntMinerMake): diff --git a/pyasic/miners/models/antminer/X17/S17.py b/pyasic/miners/models/antminer/X17/S17.py index f2a4dd6b..bdfdd37c 100644 --- a/pyasic/miners/models/antminer/X17/S17.py +++ b/pyasic/miners/models/antminer/X17/S17.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import AntMinerMake +from pyasic.miners.device.makes import AntMinerMake class S17(AntMinerMake): diff --git a/pyasic/miners/models/antminer/X17/T17.py b/pyasic/miners/models/antminer/X17/T17.py index d4175abc..ce3fbff4 100644 --- a/pyasic/miners/models/antminer/X17/T17.py +++ b/pyasic/miners/models/antminer/X17/T17.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import AntMinerMake +from pyasic.miners.device.makes import AntMinerMake class T17(AntMinerMake): diff --git a/pyasic/miners/models/antminer/X19/S19.py b/pyasic/miners/models/antminer/X19/S19.py index ff17014d..4bd91a0e 100644 --- a/pyasic/miners/models/antminer/X19/S19.py +++ b/pyasic/miners/models/antminer/X19/S19.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import AntMinerMake +from pyasic.miners.device.makes import AntMinerMake class S19(AntMinerMake): diff --git a/pyasic/miners/models/antminer/X19/T19.py b/pyasic/miners/models/antminer/X19/T19.py index 5f3aea39..ceb911a1 100644 --- a/pyasic/miners/models/antminer/X19/T19.py +++ b/pyasic/miners/models/antminer/X19/T19.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import AntMinerMake +from pyasic.miners.device.makes import AntMinerMake class T19(AntMinerMake): diff --git a/pyasic/miners/models/antminer/X21/S21.py b/pyasic/miners/models/antminer/X21/S21.py index a6c53bc2..941c8339 100644 --- a/pyasic/miners/models/antminer/X21/S21.py +++ b/pyasic/miners/models/antminer/X21/S21.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import AntMinerMake +from pyasic.miners.device.makes import AntMinerMake class S21(AntMinerMake): diff --git a/pyasic/miners/models/antminer/X21/T21.py b/pyasic/miners/models/antminer/X21/T21.py index 698347a2..06bb7ad9 100644 --- a/pyasic/miners/models/antminer/X21/T21.py +++ b/pyasic/miners/models/antminer/X21/T21.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import AntMinerMake +from pyasic.miners.device.makes import AntMinerMake class T21(AntMinerMake): diff --git a/pyasic/miners/models/antminer/X3/D3.py b/pyasic/miners/models/antminer/X3/D3.py index d1ca16cc..ba6d41e8 100644 --- a/pyasic/miners/models/antminer/X3/D3.py +++ b/pyasic/miners/models/antminer/X3/D3.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import AntMinerMake +from pyasic.miners.device.makes import AntMinerMake class D3(AntMinerMake): diff --git a/pyasic/miners/models/antminer/X3/HS3.py b/pyasic/miners/models/antminer/X3/HS3.py index 4086e9e5..c78eb776 100644 --- a/pyasic/miners/models/antminer/X3/HS3.py +++ b/pyasic/miners/models/antminer/X3/HS3.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import AntMinerMake +from pyasic.miners.device.makes import AntMinerMake class HS3(AntMinerMake): diff --git a/pyasic/miners/models/antminer/X3/L3.py b/pyasic/miners/models/antminer/X3/L3.py index a8829a61..efb89377 100644 --- a/pyasic/miners/models/antminer/X3/L3.py +++ b/pyasic/miners/models/antminer/X3/L3.py @@ -13,7 +13,7 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import AntMinerMake +from pyasic.miners.device.makes import AntMinerMake class L3Plus(AntMinerMake): diff --git a/pyasic/miners/models/antminer/X5/DR5.py b/pyasic/miners/models/antminer/X5/DR5.py index 6f51af80..2125d4eb 100644 --- a/pyasic/miners/models/antminer/X5/DR5.py +++ b/pyasic/miners/models/antminer/X5/DR5.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import AntMinerMake +from pyasic.miners.device.makes import AntMinerMake class DR5(AntMinerMake): diff --git a/pyasic/miners/models/antminer/X7/L7.py b/pyasic/miners/models/antminer/X7/L7.py index 0f68626b..165781d5 100644 --- a/pyasic/miners/models/antminer/X7/L7.py +++ b/pyasic/miners/models/antminer/X7/L7.py @@ -13,7 +13,7 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import AntMinerMake +from pyasic.miners.device.makes import AntMinerMake class L7(AntMinerMake): diff --git a/pyasic/miners/models/antminer/X9/E9.py b/pyasic/miners/models/antminer/X9/E9.py index 5d7d5c58..b94c7648 100644 --- a/pyasic/miners/models/antminer/X9/E9.py +++ b/pyasic/miners/models/antminer/X9/E9.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import AntMinerMake +from pyasic.miners.device.makes import AntMinerMake class E9Pro(AntMinerMake): diff --git a/pyasic/miners/models/antminer/X9/S9.py b/pyasic/miners/models/antminer/X9/S9.py index b6f75951..b67f02b8 100644 --- a/pyasic/miners/models/antminer/X9/S9.py +++ b/pyasic/miners/models/antminer/X9/S9.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import AntMinerMake +from pyasic.miners.device.makes import AntMinerMake class S9(AntMinerMake): diff --git a/pyasic/miners/models/antminer/X9/T9.py b/pyasic/miners/models/antminer/X9/T9.py index fc56bc70..9bcdb071 100644 --- a/pyasic/miners/models/antminer/X9/T9.py +++ b/pyasic/miners/models/antminer/X9/T9.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import AntMinerMake +from pyasic.miners.device.makes import AntMinerMake class T9(AntMinerMake): diff --git a/pyasic/miners/models/auradine/AD/AD2.py b/pyasic/miners/models/auradine/AD/AD2.py index a3e704b4..d1061396 100644 --- a/pyasic/miners/models/auradine/AD/AD2.py +++ b/pyasic/miners/models/auradine/AD/AD2.py @@ -1,4 +1,4 @@ -from pyasic.miners.makes import AuradineMake +from pyasic.miners.device.makes import AuradineMake class AuradineAD2500(AuradineMake): diff --git a/pyasic/miners/models/auradine/AD/AD3.py b/pyasic/miners/models/auradine/AD/AD3.py index e3b04add..c2e9a6a4 100644 --- a/pyasic/miners/models/auradine/AD/AD3.py +++ b/pyasic/miners/models/auradine/AD/AD3.py @@ -1,4 +1,4 @@ -from pyasic.miners.makes import AuradineMake +from pyasic.miners.device.makes import AuradineMake class AuradineAD3500(AuradineMake): diff --git a/pyasic/miners/models/auradine/AI/AI2.py b/pyasic/miners/models/auradine/AI/AI2.py index 8cb05218..5292e6ec 100644 --- a/pyasic/miners/models/auradine/AI/AI2.py +++ b/pyasic/miners/models/auradine/AI/AI2.py @@ -1,4 +1,4 @@ -from pyasic.miners.makes import AuradineMake +from pyasic.miners.device.makes import AuradineMake class AuradineAI2500(AuradineMake): diff --git a/pyasic/miners/models/auradine/AI/AI3.py b/pyasic/miners/models/auradine/AI/AI3.py index 05a6bf0e..0a03a51f 100644 --- a/pyasic/miners/models/auradine/AI/AI3.py +++ b/pyasic/miners/models/auradine/AI/AI3.py @@ -1,4 +1,4 @@ -from pyasic.miners.makes import AuradineMake +from pyasic.miners.device.makes import AuradineMake class AuradineAI3680(AuradineMake): diff --git a/pyasic/miners/models/auradine/AT/AT1.py b/pyasic/miners/models/auradine/AT/AT1.py index 1e8c84ad..4ad15fad 100644 --- a/pyasic/miners/models/auradine/AT/AT1.py +++ b/pyasic/miners/models/auradine/AT/AT1.py @@ -1,4 +1,4 @@ -from pyasic.miners.makes import AuradineMake +from pyasic.miners.device.makes import AuradineMake class AuradineAT1500(AuradineMake): diff --git a/pyasic/miners/models/auradine/AT/AT2.py b/pyasic/miners/models/auradine/AT/AT2.py index 6ce2bc64..af7e516f 100644 --- a/pyasic/miners/models/auradine/AT/AT2.py +++ b/pyasic/miners/models/auradine/AT/AT2.py @@ -1,4 +1,4 @@ -from pyasic.miners.makes import AuradineMake +from pyasic.miners.device.makes import AuradineMake class AuradineAT2860(AuradineMake): diff --git a/pyasic/miners/models/avalonminer/A10X/A1026.py b/pyasic/miners/models/avalonminer/A10X/A1026.py index 8404fb16..46cdfced 100644 --- a/pyasic/miners/models/avalonminer/A10X/A1026.py +++ b/pyasic/miners/models/avalonminer/A10X/A1026.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import AvalonMinerMake +from pyasic.miners.device.makes import AvalonMinerMake class Avalon1026(AvalonMinerMake): diff --git a/pyasic/miners/models/avalonminer/A10X/A1047.py b/pyasic/miners/models/avalonminer/A10X/A1047.py index c86c3264..ac588796 100644 --- a/pyasic/miners/models/avalonminer/A10X/A1047.py +++ b/pyasic/miners/models/avalonminer/A10X/A1047.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import AvalonMinerMake +from pyasic.miners.device.makes import AvalonMinerMake class Avalon1047(AvalonMinerMake): diff --git a/pyasic/miners/models/avalonminer/A10X/A1066.py b/pyasic/miners/models/avalonminer/A10X/A1066.py index 1a2daef5..03eaab22 100644 --- a/pyasic/miners/models/avalonminer/A10X/A1066.py +++ b/pyasic/miners/models/avalonminer/A10X/A1066.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import AvalonMinerMake +from pyasic.miners.device.makes import AvalonMinerMake class Avalon1066(AvalonMinerMake): diff --git a/pyasic/miners/models/avalonminer/A11X/A1166.py b/pyasic/miners/models/avalonminer/A11X/A1166.py index fb5117cb..b2be56ea 100644 --- a/pyasic/miners/models/avalonminer/A11X/A1166.py +++ b/pyasic/miners/models/avalonminer/A11X/A1166.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import AvalonMinerMake +from pyasic.miners.device.makes import AvalonMinerMake class Avalon1166Pro(AvalonMinerMake): diff --git a/pyasic/miners/models/avalonminer/A12X/A1246.py b/pyasic/miners/models/avalonminer/A12X/A1246.py index 30c426b9..2f5ae23a 100644 --- a/pyasic/miners/models/avalonminer/A12X/A1246.py +++ b/pyasic/miners/models/avalonminer/A12X/A1246.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import AvalonMinerMake +from pyasic.miners.device.makes import AvalonMinerMake class Avalon1246(AvalonMinerMake): diff --git a/pyasic/miners/models/avalonminer/A7X/A721.py b/pyasic/miners/models/avalonminer/A7X/A721.py index 5983fe77..c217990f 100644 --- a/pyasic/miners/models/avalonminer/A7X/A721.py +++ b/pyasic/miners/models/avalonminer/A7X/A721.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import AvalonMinerMake +from pyasic.miners.device.makes import AvalonMinerMake class Avalon721(AvalonMinerMake): diff --git a/pyasic/miners/models/avalonminer/A7X/A741.py b/pyasic/miners/models/avalonminer/A7X/A741.py index 8e9750e9..464e8c5c 100644 --- a/pyasic/miners/models/avalonminer/A7X/A741.py +++ b/pyasic/miners/models/avalonminer/A7X/A741.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import AvalonMinerMake +from pyasic.miners.device.makes import AvalonMinerMake class Avalon741(AvalonMinerMake): diff --git a/pyasic/miners/models/avalonminer/A7X/A761.py b/pyasic/miners/models/avalonminer/A7X/A761.py index f4f9c45f..4cc890b7 100644 --- a/pyasic/miners/models/avalonminer/A7X/A761.py +++ b/pyasic/miners/models/avalonminer/A7X/A761.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import AvalonMinerMake +from pyasic.miners.device.makes import AvalonMinerMake class Avalon761(AvalonMinerMake): diff --git a/pyasic/miners/models/avalonminer/A8X/A821.py b/pyasic/miners/models/avalonminer/A8X/A821.py index 81af5605..9f2579f0 100644 --- a/pyasic/miners/models/avalonminer/A8X/A821.py +++ b/pyasic/miners/models/avalonminer/A8X/A821.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import AvalonMinerMake +from pyasic.miners.device.makes import AvalonMinerMake class Avalon821(AvalonMinerMake): diff --git a/pyasic/miners/models/avalonminer/A8X/A841.py b/pyasic/miners/models/avalonminer/A8X/A841.py index 3cb18ad6..3efb6c4e 100644 --- a/pyasic/miners/models/avalonminer/A8X/A841.py +++ b/pyasic/miners/models/avalonminer/A8X/A841.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import AvalonMinerMake +from pyasic.miners.device.makes import AvalonMinerMake class Avalon841(AvalonMinerMake): diff --git a/pyasic/miners/models/avalonminer/A8X/A851.py b/pyasic/miners/models/avalonminer/A8X/A851.py index d43f4724..a14ff621 100644 --- a/pyasic/miners/models/avalonminer/A8X/A851.py +++ b/pyasic/miners/models/avalonminer/A8X/A851.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import AvalonMinerMake +from pyasic.miners.device.makes import AvalonMinerMake class Avalon851(AvalonMinerMake): diff --git a/pyasic/miners/models/avalonminer/A9X/A921.py b/pyasic/miners/models/avalonminer/A9X/A921.py index f37250e9..1ed8169b 100644 --- a/pyasic/miners/models/avalonminer/A9X/A921.py +++ b/pyasic/miners/models/avalonminer/A9X/A921.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import AvalonMinerMake +from pyasic.miners.device.makes import AvalonMinerMake class Avalon921(AvalonMinerMake): diff --git a/pyasic/miners/models/epic/blockminer/blockminer.py b/pyasic/miners/models/epic/blockminer/blockminer.py index 8fca89d7..cba11f8a 100644 --- a/pyasic/miners/models/epic/blockminer/blockminer.py +++ b/pyasic/miners/models/epic/blockminer/blockminer.py @@ -1,4 +1,4 @@ -from pyasic.miners.makes import ePICMake +from pyasic.miners.device.makes import ePICMake class BlockMiner520i(ePICMake): diff --git a/pyasic/miners/models/goldshell/X5/CK5.py b/pyasic/miners/models/goldshell/X5/CK5.py index e0a0e409..9ea7fb43 100644 --- a/pyasic/miners/models/goldshell/X5/CK5.py +++ b/pyasic/miners/models/goldshell/X5/CK5.py @@ -13,7 +13,7 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import GoldshellMake +from pyasic.miners.device.makes import GoldshellMake class CK5(GoldshellMake): diff --git a/pyasic/miners/models/goldshell/X5/HS5.py b/pyasic/miners/models/goldshell/X5/HS5.py index 5994191e..4410ec3e 100644 --- a/pyasic/miners/models/goldshell/X5/HS5.py +++ b/pyasic/miners/models/goldshell/X5/HS5.py @@ -13,7 +13,7 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import GoldshellMake +from pyasic.miners.device.makes import GoldshellMake class HS5(GoldshellMake): diff --git a/pyasic/miners/models/goldshell/X5/KD5.py b/pyasic/miners/models/goldshell/X5/KD5.py index f302ad83..08ad823b 100644 --- a/pyasic/miners/models/goldshell/X5/KD5.py +++ b/pyasic/miners/models/goldshell/X5/KD5.py @@ -13,7 +13,7 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import GoldshellMake +from pyasic.miners.device.makes import GoldshellMake class KD5(GoldshellMake): diff --git a/pyasic/miners/models/goldshell/XBox/KDBox.py b/pyasic/miners/models/goldshell/XBox/KDBox.py index 709dd40d..df9de377 100644 --- a/pyasic/miners/models/goldshell/XBox/KDBox.py +++ b/pyasic/miners/models/goldshell/XBox/KDBox.py @@ -13,7 +13,7 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import GoldshellMake +from pyasic.miners.device.makes import GoldshellMake class KDBoxII(GoldshellMake): diff --git a/pyasic/miners/models/goldshell/XMax/KDMax.py b/pyasic/miners/models/goldshell/XMax/KDMax.py index ef91b6ae..bed6007b 100644 --- a/pyasic/miners/models/goldshell/XMax/KDMax.py +++ b/pyasic/miners/models/goldshell/XMax/KDMax.py @@ -13,7 +13,7 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import GoldshellMake +from pyasic.miners.device.makes import GoldshellMake class KDMax(GoldshellMake): diff --git a/pyasic/miners/models/innosilicon/A10X/A10X.py b/pyasic/miners/models/innosilicon/A10X/A10X.py index 2cbb9fda..99bc686f 100644 --- a/pyasic/miners/models/innosilicon/A10X/A10X.py +++ b/pyasic/miners/models/innosilicon/A10X/A10X.py @@ -13,7 +13,7 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import InnosiliconMake +from pyasic.miners.device.makes import InnosiliconMake class A10X(InnosiliconMake): diff --git a/pyasic/miners/models/innosilicon/T3X/T3H.py b/pyasic/miners/models/innosilicon/T3X/T3H.py index b1347572..311e11a1 100644 --- a/pyasic/miners/models/innosilicon/T3X/T3H.py +++ b/pyasic/miners/models/innosilicon/T3X/T3H.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import InnosiliconMake +from pyasic.miners.device.makes import InnosiliconMake class T3HPlus(InnosiliconMake): diff --git a/pyasic/miners/models/whatsminer/M2X/M20.py b/pyasic/miners/models/whatsminer/M2X/M20.py index 9660edd1..b40fd45d 100644 --- a/pyasic/miners/models/whatsminer/M2X/M20.py +++ b/pyasic/miners/models/whatsminer/M2X/M20.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M20V10(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M2X/M20P.py b/pyasic/miners/models/whatsminer/M2X/M20P.py index b298e3d5..20768296 100644 --- a/pyasic/miners/models/whatsminer/M2X/M20P.py +++ b/pyasic/miners/models/whatsminer/M2X/M20P.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M20PV10(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M2X/M20S.py b/pyasic/miners/models/whatsminer/M2X/M20S.py index e5f23899..2ccae274 100644 --- a/pyasic/miners/models/whatsminer/M2X/M20S.py +++ b/pyasic/miners/models/whatsminer/M2X/M20S.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M20SV10(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M2X/M20S_Plus.py b/pyasic/miners/models/whatsminer/M2X/M20S_Plus.py index e1a9bb6d..bf7ef5fb 100644 --- a/pyasic/miners/models/whatsminer/M2X/M20S_Plus.py +++ b/pyasic/miners/models/whatsminer/M2X/M20S_Plus.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M20SPlusV30(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M2X/M21.py b/pyasic/miners/models/whatsminer/M2X/M21.py index d506042b..133041ac 100644 --- a/pyasic/miners/models/whatsminer/M2X/M21.py +++ b/pyasic/miners/models/whatsminer/M2X/M21.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M21V10(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M2X/M21S.py b/pyasic/miners/models/whatsminer/M2X/M21S.py index c1cc41b2..b40a31fc 100644 --- a/pyasic/miners/models/whatsminer/M2X/M21S.py +++ b/pyasic/miners/models/whatsminer/M2X/M21S.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M21SV20(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M2X/M21S_Plus.py b/pyasic/miners/models/whatsminer/M2X/M21S_Plus.py index 946a817a..3f517a25 100644 --- a/pyasic/miners/models/whatsminer/M2X/M21S_Plus.py +++ b/pyasic/miners/models/whatsminer/M2X/M21S_Plus.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M21SPlusV20(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M2X/M29.py b/pyasic/miners/models/whatsminer/M2X/M29.py index 1e46e903..41663319 100644 --- a/pyasic/miners/models/whatsminer/M2X/M29.py +++ b/pyasic/miners/models/whatsminer/M2X/M29.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M29V10(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M3X/M30.py b/pyasic/miners/models/whatsminer/M3X/M30.py index c8e02dce..5b7d9eee 100644 --- a/pyasic/miners/models/whatsminer/M3X/M30.py +++ b/pyasic/miners/models/whatsminer/M3X/M30.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M30V10(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M3X/M30K.py b/pyasic/miners/models/whatsminer/M3X/M30K.py index 62a92a65..d28b1d40 100644 --- a/pyasic/miners/models/whatsminer/M3X/M30K.py +++ b/pyasic/miners/models/whatsminer/M3X/M30K.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M30KV10(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M3X/M30L.py b/pyasic/miners/models/whatsminer/M3X/M30L.py index 626381b8..18655218 100644 --- a/pyasic/miners/models/whatsminer/M3X/M30L.py +++ b/pyasic/miners/models/whatsminer/M3X/M30L.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M30LV10(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M3X/M30S.py b/pyasic/miners/models/whatsminer/M3X/M30S.py index 3743f78f..6629e84d 100644 --- a/pyasic/miners/models/whatsminer/M3X/M30S.py +++ b/pyasic/miners/models/whatsminer/M3X/M30S.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M30SV10(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M3X/M30S_Plus.py b/pyasic/miners/models/whatsminer/M3X/M30S_Plus.py index 16345eb5..216a42ff 100644 --- a/pyasic/miners/models/whatsminer/M3X/M30S_Plus.py +++ b/pyasic/miners/models/whatsminer/M3X/M30S_Plus.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M30SPlusV10(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M3X/M30S_Plus_Plus.py b/pyasic/miners/models/whatsminer/M3X/M30S_Plus_Plus.py index e955a637..20b09704 100644 --- a/pyasic/miners/models/whatsminer/M3X/M30S_Plus_Plus.py +++ b/pyasic/miners/models/whatsminer/M3X/M30S_Plus_Plus.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M30SPlusPlusV10(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M3X/M31.py b/pyasic/miners/models/whatsminer/M3X/M31.py index 20cafd08..27685ad0 100644 --- a/pyasic/miners/models/whatsminer/M3X/M31.py +++ b/pyasic/miners/models/whatsminer/M3X/M31.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M31V10(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M3X/M31H.py b/pyasic/miners/models/whatsminer/M3X/M31H.py index 2a03ef74..ff2b8766 100644 --- a/pyasic/miners/models/whatsminer/M3X/M31H.py +++ b/pyasic/miners/models/whatsminer/M3X/M31H.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M31HV10(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M3X/M31L.py b/pyasic/miners/models/whatsminer/M3X/M31L.py index 64338f6c..f5454402 100644 --- a/pyasic/miners/models/whatsminer/M3X/M31L.py +++ b/pyasic/miners/models/whatsminer/M3X/M31L.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M31LV10(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M3X/M31S.py b/pyasic/miners/models/whatsminer/M3X/M31S.py index 8d93d005..6bf0c38f 100644 --- a/pyasic/miners/models/whatsminer/M3X/M31S.py +++ b/pyasic/miners/models/whatsminer/M3X/M31S.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M31SV10(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M3X/M31SE.py b/pyasic/miners/models/whatsminer/M3X/M31SE.py index 0fa5f971..b8e26eea 100644 --- a/pyasic/miners/models/whatsminer/M3X/M31SE.py +++ b/pyasic/miners/models/whatsminer/M3X/M31SE.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M31SEV10(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M3X/M31S_Plus.py b/pyasic/miners/models/whatsminer/M3X/M31S_Plus.py index 726f2d9e..3b5f72d7 100644 --- a/pyasic/miners/models/whatsminer/M3X/M31S_Plus.py +++ b/pyasic/miners/models/whatsminer/M3X/M31S_Plus.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M31SPlusV10(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M3X/M32.py b/pyasic/miners/models/whatsminer/M3X/M32.py index 4d69a66f..06cb3861 100644 --- a/pyasic/miners/models/whatsminer/M3X/M32.py +++ b/pyasic/miners/models/whatsminer/M3X/M32.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M32V10(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M3X/M32S.py b/pyasic/miners/models/whatsminer/M3X/M32S.py index 4009a33e..b88f6790 100644 --- a/pyasic/miners/models/whatsminer/M3X/M32S.py +++ b/pyasic/miners/models/whatsminer/M3X/M32S.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M32S(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M3X/M33.py b/pyasic/miners/models/whatsminer/M3X/M33.py index 2d8da74a..e16301fa 100644 --- a/pyasic/miners/models/whatsminer/M3X/M33.py +++ b/pyasic/miners/models/whatsminer/M3X/M33.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M33V10(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M3X/M33S.py b/pyasic/miners/models/whatsminer/M3X/M33S.py index e88ff200..c598bbe3 100644 --- a/pyasic/miners/models/whatsminer/M3X/M33S.py +++ b/pyasic/miners/models/whatsminer/M3X/M33S.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M33SVG30(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M3X/M33S_Plus.py b/pyasic/miners/models/whatsminer/M3X/M33S_Plus.py index 3bdd93ea..1a53bf2c 100644 --- a/pyasic/miners/models/whatsminer/M3X/M33S_Plus.py +++ b/pyasic/miners/models/whatsminer/M3X/M33S_Plus.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M33SPlusVG20(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M3X/M33S_Plus_Plus.py b/pyasic/miners/models/whatsminer/M3X/M33S_Plus_Plus.py index 33c50385..74e74d19 100644 --- a/pyasic/miners/models/whatsminer/M3X/M33S_Plus_Plus.py +++ b/pyasic/miners/models/whatsminer/M3X/M33S_Plus_Plus.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M33SPlusPlusVH20(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M3X/M34S_Plus.py b/pyasic/miners/models/whatsminer/M3X/M34S_Plus.py index e41a49a6..af2d3f93 100644 --- a/pyasic/miners/models/whatsminer/M3X/M34S_Plus.py +++ b/pyasic/miners/models/whatsminer/M3X/M34S_Plus.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M34SPlusVE10(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M3X/M36S.py b/pyasic/miners/models/whatsminer/M3X/M36S.py index b9f2231b..c8211242 100644 --- a/pyasic/miners/models/whatsminer/M3X/M36S.py +++ b/pyasic/miners/models/whatsminer/M3X/M36S.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M36SVE10(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M3X/M36S_Plus.py b/pyasic/miners/models/whatsminer/M3X/M36S_Plus.py index 954a88fe..4681592b 100644 --- a/pyasic/miners/models/whatsminer/M3X/M36S_Plus.py +++ b/pyasic/miners/models/whatsminer/M3X/M36S_Plus.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M36SPlusVG30(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M3X/M36S_Plus_Plus.py b/pyasic/miners/models/whatsminer/M3X/M36S_Plus_Plus.py index 9a1a06fd..120bb71a 100644 --- a/pyasic/miners/models/whatsminer/M3X/M36S_Plus_Plus.py +++ b/pyasic/miners/models/whatsminer/M3X/M36S_Plus_Plus.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M36SPlusPlusVH30(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M3X/M39.py b/pyasic/miners/models/whatsminer/M3X/M39.py index c235f430..f4077a96 100644 --- a/pyasic/miners/models/whatsminer/M3X/M39.py +++ b/pyasic/miners/models/whatsminer/M3X/M39.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M39V10(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M5X/M50.py b/pyasic/miners/models/whatsminer/M5X/M50.py index 8e807584..9f9c407f 100644 --- a/pyasic/miners/models/whatsminer/M5X/M50.py +++ b/pyasic/miners/models/whatsminer/M5X/M50.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M50VE30(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M5X/M50S.py b/pyasic/miners/models/whatsminer/M5X/M50S.py index 01479066..5a5d7ce5 100644 --- a/pyasic/miners/models/whatsminer/M5X/M50S.py +++ b/pyasic/miners/models/whatsminer/M5X/M50S.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M50SVJ10(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M5X/M50S_Plus.py b/pyasic/miners/models/whatsminer/M5X/M50S_Plus.py index 7e4278a3..9ff3b1dc 100644 --- a/pyasic/miners/models/whatsminer/M5X/M50S_Plus.py +++ b/pyasic/miners/models/whatsminer/M5X/M50S_Plus.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M50SPlusVH30(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M5X/M50S_Plus_Plus.py b/pyasic/miners/models/whatsminer/M5X/M50S_Plus_Plus.py index e0abaca1..cb0658cd 100644 --- a/pyasic/miners/models/whatsminer/M5X/M50S_Plus_Plus.py +++ b/pyasic/miners/models/whatsminer/M5X/M50S_Plus_Plus.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M50SPlusPlusVK10(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M5X/M53.py b/pyasic/miners/models/whatsminer/M5X/M53.py index 1fb07b3a..a5d91eb6 100644 --- a/pyasic/miners/models/whatsminer/M5X/M53.py +++ b/pyasic/miners/models/whatsminer/M5X/M53.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M53VH30(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M5X/M53S.py b/pyasic/miners/models/whatsminer/M5X/M53S.py index 8c86f25e..f4f4829b 100644 --- a/pyasic/miners/models/whatsminer/M5X/M53S.py +++ b/pyasic/miners/models/whatsminer/M5X/M53S.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M53SVH30(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M5X/M53S_Plus.py b/pyasic/miners/models/whatsminer/M5X/M53S_Plus.py index 7ea09739..54633e2e 100644 --- a/pyasic/miners/models/whatsminer/M5X/M53S_Plus.py +++ b/pyasic/miners/models/whatsminer/M5X/M53S_Plus.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M53SPlusVJ30(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M5X/M53S_Plus_Plus.py b/pyasic/miners/models/whatsminer/M5X/M53S_Plus_Plus.py index eb54a1bd..faa4910c 100644 --- a/pyasic/miners/models/whatsminer/M5X/M53S_Plus_Plus.py +++ b/pyasic/miners/models/whatsminer/M5X/M53S_Plus_Plus.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M53SPlusPlusVK10(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M5X/M56.py b/pyasic/miners/models/whatsminer/M5X/M56.py index e6708dd0..0896be53 100644 --- a/pyasic/miners/models/whatsminer/M5X/M56.py +++ b/pyasic/miners/models/whatsminer/M5X/M56.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M56VH30(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M5X/M56S.py b/pyasic/miners/models/whatsminer/M5X/M56S.py index ecd7f0a9..5cf3ab4e 100644 --- a/pyasic/miners/models/whatsminer/M5X/M56S.py +++ b/pyasic/miners/models/whatsminer/M5X/M56S.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M56SVH30(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M5X/M56S_Plus.py b/pyasic/miners/models/whatsminer/M5X/M56S_Plus.py index 59c4a361..f28f1d3d 100644 --- a/pyasic/miners/models/whatsminer/M5X/M56S_Plus.py +++ b/pyasic/miners/models/whatsminer/M5X/M56S_Plus.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M56SPlusVJ30(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M5X/M59.py b/pyasic/miners/models/whatsminer/M5X/M59.py index cf685ad8..2d814fc5 100644 --- a/pyasic/miners/models/whatsminer/M5X/M59.py +++ b/pyasic/miners/models/whatsminer/M5X/M59.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M59VH30(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M6X/M60.py b/pyasic/miners/models/whatsminer/M6X/M60.py index 9640ce64..01db5641 100644 --- a/pyasic/miners/models/whatsminer/M6X/M60.py +++ b/pyasic/miners/models/whatsminer/M6X/M60.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M60VK10(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M6X/M60S.py b/pyasic/miners/models/whatsminer/M6X/M60S.py index 86ddc2c4..e5c3987f 100644 --- a/pyasic/miners/models/whatsminer/M6X/M60S.py +++ b/pyasic/miners/models/whatsminer/M6X/M60S.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M60SVK10(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M6X/M63.py b/pyasic/miners/models/whatsminer/M6X/M63.py index f9840ad4..e7ca7338 100644 --- a/pyasic/miners/models/whatsminer/M6X/M63.py +++ b/pyasic/miners/models/whatsminer/M6X/M63.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M63VK10(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M6X/M63S.py b/pyasic/miners/models/whatsminer/M6X/M63S.py index b38e775d..658bd058 100644 --- a/pyasic/miners/models/whatsminer/M6X/M63S.py +++ b/pyasic/miners/models/whatsminer/M6X/M63S.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M63SVK10(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M6X/M66.py b/pyasic/miners/models/whatsminer/M6X/M66.py index 3910aff8..e4920ad0 100644 --- a/pyasic/miners/models/whatsminer/M6X/M66.py +++ b/pyasic/miners/models/whatsminer/M6X/M66.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M66VK20(WhatsMinerMake): diff --git a/pyasic/miners/models/whatsminer/M6X/M66S.py b/pyasic/miners/models/whatsminer/M6X/M66S.py index 57abdf0d..3e26e9a9 100644 --- a/pyasic/miners/models/whatsminer/M6X/M66S.py +++ b/pyasic/miners/models/whatsminer/M6X/M66S.py @@ -14,7 +14,7 @@ # limitations under the License. - # ------------------------------------------------------------------------------ -from pyasic.miners.makes import WhatsMinerMake +from pyasic.miners.device.makes import WhatsMinerMake class M66SVK20(WhatsMinerMake):