From 742dde622bd5b151d49d80ed977a36cfa96e3599 Mon Sep 17 00:00:00 2001 From: Upstream Data Date: Wed, 1 May 2024 14:16:49 -0600 Subject: [PATCH] feature: add device models. --- pyasic/device/models.py | 318 ++++++++++++++++++ pyasic/miners/models/antminer/X15/Z15.py | 6 +- pyasic/miners/models/antminer/X17/S17.py | 14 +- pyasic/miners/models/antminer/X17/T17.py | 11 +- pyasic/miners/models/antminer/X19/S19.py | 78 +++-- pyasic/miners/models/antminer/X19/T19.py | 5 +- pyasic/miners/models/antminer/X21/S21.py | 5 +- pyasic/miners/models/antminer/X21/T21.py | 5 +- pyasic/miners/models/antminer/X3/D3.py | 6 +- pyasic/miners/models/antminer/X3/HS3.py | 6 +- pyasic/miners/models/antminer/X3/L3.py | 5 +- pyasic/miners/models/antminer/X5/DR5.py | 7 +- pyasic/miners/models/antminer/X7/L7.py | 4 +- pyasic/miners/models/antminer/X9/E9.py | 5 +- pyasic/miners/models/antminer/X9/S9.py | 14 +- pyasic/miners/models/antminer/X9/T9.py | 6 +- pyasic/miners/models/auradine/AD/AD2.py | 4 +- pyasic/miners/models/auradine/AD/AD3.py | 4 +- pyasic/miners/models/auradine/AI/AI2.py | 4 +- pyasic/miners/models/auradine/AI/AI3.py | 4 +- pyasic/miners/models/auradine/AT/AT1.py | 4 +- pyasic/miners/models/auradine/AT/AT2.py | 7 +- .../miners/models/avalonminer/A10X/A1026.py | 6 +- .../miners/models/avalonminer/A10X/A1047.py | 6 +- .../miners/models/avalonminer/A10X/A1066.py | 4 +- .../miners/models/avalonminer/A11X/A1166.py | 5 +- .../miners/models/avalonminer/A12X/A1246.py | 5 +- pyasic/miners/models/avalonminer/A7X/A721.py | 5 +- pyasic/miners/models/avalonminer/A7X/A741.py | 5 +- pyasic/miners/models/avalonminer/A7X/A761.py | 5 +- pyasic/miners/models/avalonminer/A8X/A821.py | 5 +- pyasic/miners/models/avalonminer/A8X/A841.py | 5 +- pyasic/miners/models/avalonminer/A8X/A851.py | 5 +- pyasic/miners/models/avalonminer/A9X/A921.py | 5 +- .../models/epic/blockminer/blockminer.py | 7 +- pyasic/miners/models/goldshell/X5/CK5.py | 4 +- pyasic/miners/models/goldshell/X5/HS5.py | 4 +- pyasic/miners/models/goldshell/X5/KD5.py | 4 +- pyasic/miners/models/goldshell/XBox/KDBox.py | 9 +- pyasic/miners/models/goldshell/XMax/KDMax.py | 5 +- pyasic/miners/models/innosilicon/A10X/A10X.py | 3 +- pyasic/miners/models/innosilicon/T3X/T3H.py | 5 +- pyasic/miners/models/whatsminer/M2X/M20.py | 6 +- pyasic/miners/models/whatsminer/M2X/M20P.py | 10 +- pyasic/miners/models/whatsminer/M2X/M20S.py | 14 +- .../miners/models/whatsminer/M2X/M20S_Plus.py | 5 +- pyasic/miners/models/whatsminer/M2X/M21.py | 6 +- pyasic/miners/models/whatsminer/M2X/M21S.py | 14 +- .../miners/models/whatsminer/M2X/M21S_Plus.py | 5 +- pyasic/miners/models/whatsminer/M2X/M29.py | 6 +- pyasic/miners/models/whatsminer/M3X/M30.py | 10 +- pyasic/miners/models/whatsminer/M3X/M30K.py | 6 +- pyasic/miners/models/whatsminer/M3X/M30L.py | 6 +- pyasic/miners/models/whatsminer/M3X/M30S.py | 113 +++---- .../miners/models/whatsminer/M3X/M30S_Plus.py | 121 ++++--- .../models/whatsminer/M3X/M30S_Plus_Plus.py | 65 ++-- pyasic/miners/models/whatsminer/M3X/M31.py | 10 +- pyasic/miners/models/whatsminer/M3X/M31H.py | 8 +- pyasic/miners/models/whatsminer/M3X/M31L.py | 6 +- pyasic/miners/models/whatsminer/M3X/M31S.py | 48 ++- pyasic/miners/models/whatsminer/M3X/M31SE.py | 14 +- .../miners/models/whatsminer/M3X/M31S_Plus.py | 79 +++-- pyasic/miners/models/whatsminer/M3X/M32.py | 10 +- pyasic/miners/models/whatsminer/M3X/M32S.py | 6 +- pyasic/miners/models/whatsminer/M3X/M33.py | 11 +- pyasic/miners/models/whatsminer/M3X/M33S.py | 5 +- .../miners/models/whatsminer/M3X/M33S_Plus.py | 11 +- .../models/whatsminer/M3X/M33S_Plus_Plus.py | 11 +- .../miners/models/whatsminer/M3X/M34S_Plus.py | 5 +- pyasic/miners/models/whatsminer/M3X/M36S.py | 5 +- .../miners/models/whatsminer/M3X/M36S_Plus.py | 5 +- .../models/whatsminer/M3X/M36S_Plus_Plus.py | 5 +- pyasic/miners/models/whatsminer/M3X/M39.py | 11 +- pyasic/miners/models/whatsminer/M5X/M50.py | 51 ++- pyasic/miners/models/whatsminer/M5X/M50S.py | 28 +- .../miners/models/whatsminer/M5X/M50S_Plus.py | 15 +- .../models/whatsminer/M5X/M50S_Plus_Plus.py | 13 +- pyasic/miners/models/whatsminer/M5X/M53.py | 5 +- pyasic/miners/models/whatsminer/M5X/M53S.py | 8 +- .../miners/models/whatsminer/M5X/M53S_Plus.py | 5 +- .../models/whatsminer/M5X/M53S_Plus_Plus.py | 5 +- pyasic/miners/models/whatsminer/M5X/M56.py | 5 +- pyasic/miners/models/whatsminer/M5X/M56S.py | 5 +- .../miners/models/whatsminer/M5X/M56S_Plus.py | 5 +- pyasic/miners/models/whatsminer/M5X/M59.py | 5 +- pyasic/miners/models/whatsminer/M6X/M60.py | 14 +- pyasic/miners/models/whatsminer/M6X/M60S.py | 16 +- pyasic/miners/models/whatsminer/M6X/M63.py | 11 +- pyasic/miners/models/whatsminer/M6X/M63S.py | 11 +- pyasic/miners/models/whatsminer/M6X/M66.py | 8 +- pyasic/miners/models/whatsminer/M6X/M66S.py | 11 +- 91 files changed, 922 insertions(+), 560 deletions(-) create mode 100644 pyasic/device/models.py diff --git a/pyasic/device/models.py b/pyasic/device/models.py new file mode 100644 index 00000000..247deee9 --- /dev/null +++ b/pyasic/device/models.py @@ -0,0 +1,318 @@ +from enum import StrEnum + + +class AntminerModels(StrEnum): + D3 = "D3" + HS3 = "HS3" + L3Plus = "L3+" + DR5 = "DR5" + L7 = "L7" + E9Pro = "E9Pro" + S9 = "S9" + S9i = "S9i" + S9j = "S9j" + T9 = "T9" + Z15 = "Z15" + S17 = "S17" + S17Plus = "S17+" + S17Pro = "S17 Pro" + S17e = "S17e" + T17 = "T17" + T17Plus = "T17+" + T17e = "T17e" + S19 = "S19" + S19NoPIC = "S19 No PIC" + S19L = "S19L" + S19Pro = "S19 Pro" + S19j = "S19j" + S19i = "S19i" + S19Plus = "S19+" + S19jNoPIC = "S19j No PIC" + S19ProPlus = "S19 Pro+" + S19jPro = "S19j Pro" + S19jProNoPIC = "S19j Pro No PIC" + S19jProPlus = "S19j Pro+" + S19jProPlusNoPIC = "S19j Pro+ No PIC" + S19XP = "S19 XP" + S19a = "S19a" + S19aPro = "S19a Pro" + S19Hydro = "S19 Hydro" + S19ProHydro = "S19 Pro Hydro" + S19ProPlusHydro = "S19 Pro+ Hydro" + S19KPro = "S19K Pro" + S19kPro = "S19k Pro" + S19kProNoPIC = "S19k Pro No PIC" + T19 = "T19" + S21 = "S21" + T21 = "T21" + + +class WhatsminerModels(StrEnum): + M20V10 = "M20 V10" + M20SV10 = "M20S V10" + M20SV20 = "M20S V20" + M20SV30 = "M20S V30" + M20PV10 = "M20P V10" + M20PV30 = "M20P V30" + M20SPlusV30 = "M20S+ V30" + M21V10 = "M21 V10" + M21SV20 = "M21S V20" + M21SV60 = "M21S V60" + M21SV70 = "M21S V70" + M21SPlusV20 = "M21S+ V20" + M29V10 = "M29 V10" + M30V10 = "M30 V10" + M30V20 = "M30 V20" + M30KV10 = "M30K V10" + M30LV10 = "M30L V10" + M30SV10 = "M30S V10" + M30SV20 = "M30S V20" + M30SV30 = "M30S V30" + M30SV40 = "M30S V40" + M30SV50 = "M30S V50" + M30SV60 = "M30S V60" + M30SV70 = "M30S V70" + M30SV80 = "M30S V80" + M30SVE10 = "M30S VE10" + M30SVE20 = "M30S VE20" + M30SVE30 = "M30S VE30" + M30SVE40 = "M30S VE40" + M30SVE50 = "M30S VE50" + M30SVE60 = "M30S VE60" + M30SVE70 = "M30S VE70" + M30SVF10 = "M30S VF10" + M30SVF20 = "M30S VF20" + M30SVF30 = "M30S VF30" + M30SVG10 = "M30S VG10" + M30SVG20 = "M30S VG20" + M30SVG30 = "M30S VG30" + M30SVG40 = "M30S VG40" + M30SVH10 = "M30S VH10" + M30SVH20 = "M30S VH20" + M30SVH30 = "M30S VH30" + M30SVH40 = "M30S VH40" + M30SVH50 = "M30S VH50" + M30SVH60 = "M30S VH60" + M30SVI20 = "M30S VI20" + M30SPlusV10 = "M30S+ V10" + M30SPlusV20 = "M30S+ V20" + M30SPlusV30 = "M30S+ V30" + M30SPlusV40 = "M30S+ V40" + M30SPlusV50 = "M30S+ V50" + M30SPlusV60 = "M30S+ V60" + M30SPlusV70 = "M30S+ V70" + M30SPlusV80 = "M30S+ V80" + M30SPlusV90 = "M30S+ V90" + M30SPlusV100 = "M30S+ V100" + M30SPlusVE30 = "M30S+ VE30" + M30SPlusVE40 = "M30S+ VE40" + M30SPlusVE50 = "M30S+ VE50" + M30SPlusVE60 = "M30S+ VE60" + M30SPlusVE70 = "M30S+ VE70" + M30SPlusVE80 = "M30S+ VE80" + M30SPlusVE90 = "M30S+ VE90" + M30SPlusVE100 = "M30S+ VE100" + M30SPlusVF20 = "M30S+ VF20" + M30SPlusVF30 = "M30S+ VF30" + M30SPlusVG20 = "M30S+ VG20" + M30SPlusVG30 = "M30S+ VG30" + M30SPlusVG40 = "M30S+ VG40" + M30SPlusVG50 = "M30S+ VG50" + M30SPlusVG60 = "M30S+ VG60" + M30SPlusVH10 = "M30S+ VH10" + M30SPlusVH20 = "M30S+ VH20" + M30SPlusVH30 = "M30S+ VH30" + M30SPlusVH40 = "M30S+ VH40" + M30SPlusVH50 = "M30S+ VH50" + M30SPlusVH60 = "M30S+ VH60" + M30SPlusPlusV10 = "M30S++ V10" + M30SPlusPlusV20 = "M30S++ V20" + M30SPlusPlusVE30 = "M30S++ VE30" + M30SPlusPlusVE40 = "M30S++ VE40" + M30SPlusPlusVE50 = "M30S++ VE50" + M30SPlusPlusVF40 = "M30S++ VF40" + M30SPlusPlusVG30 = "M30S++ VG30" + M30SPlusPlusVG40 = "M30S++ VG40" + M30SPlusPlusVG50 = "M30S++ VG50" + M30SPlusPlusVH10 = "M30S++ VH10" + M30SPlusPlusVH20 = "M30S++ VH20" + M30SPlusPlusVH30 = "M30S++ VH30" + M30SPlusPlusVH40 = "M30S++ VH40" + M30SPlusPlusVH50 = "M30S++ VH50" + M30SPlusPlusVH60 = "M30S++ VH60" + M30SPlusPlusVH70 = "M30S++ VH70" + M30SPlusPlusVH80 = "M30S++ VH80" + M30SPlusPlusVH90 = "M30S++ VH90" + M30SPlusPlusVH100 = "M30S++ VH100" + M30SPlusPlusVJ20 = "M30S++ VJ20" + M30SPlusPlusVJ30 = "M30S++ VJ30" + M31V10 = "M31 V10" + M31V20 = "M31 V20" + M31HV10 = "M31H V10" + M31HV40 = "M31H V40" + M31LV10 = "M30L V10" + M31SV10 = "M31S V10" + M31SV20 = "M31S V20" + M31SV30 = "M31S V30" + M31SV40 = "M31S V40" + M31SV50 = "M31S V50" + M31SV60 = "M31S V60" + M31SV70 = "M31S V70" + M31SV80 = "M31S V80" + M31SV90 = "M31S V90" + M31SVE10 = "M31S VE10" + M31SVE20 = "M31S VE20" + M31SVE30 = "M31S VE30" + M31SEV10 = "M31SE V10" + M31SEV20 = "M31SE V20" + M31SEV30 = "M31SE V30" + M31SPlusV10 = "M31S+ V10" + M31SPlusV20 = "M31S+ V20" + M31SPlusV30 = "M31S+ V30" + M31SPlusV40 = "M31S+ V40" + M31SPlusV50 = "M31S+ V50" + M31SPlusV60 = "M31S+ V60" + M31SPlusV80 = "M31S+ V80" + M31SPlusV90 = "M31S+ V90" + M31SPlusV100 = "M31S+ V100" + M31SPlusVE10 = "M31S+ VE10" + M31SPlusVE20 = "M31S+ VE20" + M31SPlusVE30 = "M31S+ VE30" + M31SPlusVE40 = "M31S+ VE40" + M31SPlusVE50 = "M31S+ VE50" + M31SPlusVE60 = "M31S+ VE60" + M31SPlusVE80 = "M31S+ VE80" + M31SPlusVF20 = "M31S+ VF20" + M31SPlusVF30 = "M31S+ VF30" + M31SPlusVG20 = "M31S+ VG20" + M31SPlusVG30 = "M31S+ VG30" + M32V10 = "M32 V10" + M32V20 = "M32 V20" + M32S = "M32S" + M33V10 = "M33 V10" + M33V20 = "M33 V20" + M33V30 = "M33 V30" + M33SVG30 = "M33S VG30" + M33SPlusVG20 = "M33S+ VG20" + M33SPlusVH20 = "M33S+ VH20" + M33SPlusVH30 = "M33S+ VH30" + M33SPlusPlusVH20 = "M33S++ VH20" + M33SPlusPlusVH30 = "M33S++ VH30" + M33SPlusPlusVG40 = "M33S++ VG40" + M34SPlusVE10 = "M34S+ VE10" + M36SVE10 = "M36S VE10" + M36SPlusVG30 = "M36S+ VG30" + M36SPlusPlusVH30 = "M36S++ VH30" + M39V10 = "M39 V10" + M39V20 = "M39 V20" + M39V30 = "M39 V30" + M50VE30 = "M50 VE30" + M50VG30 = "M50 VG30" + M50VH10 = "M50 VH10" + M50VH20 = "M50 VH20" + M50VH30 = "M50 VH30" + M50VH40 = "M50 VH40" + M50VH50 = "M50 VH50" + M50VH60 = "M50 VH60" + M50VH70 = "M50 VH70" + M50VH80 = "M50 VH80" + M50VJ10 = "M50 VJ10" + M50VJ20 = "M50 VJ20" + M50VJ30 = "M50 VJ30" + M50SVJ10 = "M50S VJ10" + M50SVJ20 = "M50S VJ20" + M50SVJ30 = "M50S VJ30" + M50SVH10 = "M50S VH10" + M50SVH20 = "M50S VH20" + M50SVH30 = "M50S VH30" + M50SVH40 = "M50S VH40" + M50SVH50 = "M50S VH50" + M50SPlusVH30 = "M50S+ VH30" + M50SPlusVH40 = "M50S+ VH40" + M50SPlusVJ30 = "M50S+ VJ30" + M50SPlusVK20 = "M50S+ VK20" + M50SPlusPlusVK10 = "M50S++ VK10" + M50SPlusPlusVK20 = "M50S++ VK20" + M50SPlusPlusVK30 = "M50S++ VK30" + M53VH30 = "M53 VH30" + M53SVH30 = "M53S VH30" + M53SVJ40 = "M53S VJ40" + M53SPlusVJ30 = "M53S+ VJ30" + M53SPlusPlusVK10 = "M53S++ VK10" + M56VH30 = "M56 VH30" + M56SVH30 = "M56S VH30" + M56SPlusVJ30 = "M56S+ VJ30" + M59VH30 = "M59 VH30" + M60VK10 = "M60 VK10" + M60VK20 = "M60 VK20" + M60VK30 = "M60 VK30" + M60VK40 = "M60 VK40" + M60SVK10 = "M60S VK10" + M60SVK20 = "M60S VK20" + M60SVK30 = "M60S VK30" + M60SVK40 = "M60S VK40" + M63VK10 = "M63 VK10" + M63VK20 = "M63 VK20" + M63VK30 = "M63 VK30" + M63SVK10 = "M63S VK10" + M63SVK20 = "M63S VK20" + M63SVK30 = "M63S VK30" + M66VK20 = "M66 VK20" + M66VK30 = "M66 VK30" + M66SVK20 = "M66S VK20" + M66SVK30 = "M66S VK30" + M66SVK40 = "M66S VK40" + + +class AvalonminerModels(StrEnum): + Avalon721 = "Avalon 721" + Avalon741 = "Avalon 741" + Avalon761 = "Avalon 761" + Avalon821 = "Avalon 821" + Avalon841 = "Avalon 841" + Avalon851 = "Avalon 851" + Avalon921 = "Avalon 921" + Avalon1026 = "Avalon 1026" + Avalon1047 = "Avalon 1047" + Avalon1066 = "Avalon 1066" + Avalon1166Pro = "Avalon 1166 Pro" + Avalon1246 = "Avalon 1246" + + +class InnosiliconModels(StrEnum): + T3HPlus = "T3H+" + A10X = "A10X" + + +class GoldshellModels(StrEnum): + CK5 = "CK5" + HS5 = "HS5" + KD5 = "KD5" + KDMax = "KD Max" + KDBoxII = "KD Box II" + KDBoxPro = "KD Box Pro" + + +class ePICModels(StrEnum): + BM520i = "BlockMiner 520i" + BM720i = "BlockMiner 720i" + + +class AuradineModels(StrEnum): + AT1500 = "AT1500" + AT2860 = "AT2860" + AT2880 = "AT2880" + AI2500 = "AI2500" + AI3680 = "AI3680" + AD2500 = "AD2500" + AD3500 = "AD3500" + + +class MinerModels: + ANTMINER = AntminerModels + WHATSMINER = WhatsminerModels + AVALONMINER = AvalonminerModels + INNOSILICON = InnosiliconModels + GOLDSHELL = GoldshellModels + AURADINE = AuradineModels + EPIC = ePICModels diff --git a/pyasic/miners/models/antminer/X15/Z15.py b/pyasic/miners/models/antminer/X15/Z15.py index e5882912..dd45a389 100644 --- a/pyasic/miners/models/antminer/X15/Z15.py +++ b/pyasic/miners/models/antminer/X15/Z15.py @@ -13,11 +13,11 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import AntMinerMake class Z15(AntMinerMake): - raw_model = "Z15" + raw_model = MinerModels.ANTMINER.Z15 + expected_chips = 3 - expected_fans = 2 diff --git a/pyasic/miners/models/antminer/X17/S17.py b/pyasic/miners/models/antminer/X17/S17.py index bdfdd37c..66d319c3 100644 --- a/pyasic/miners/models/antminer/X17/S17.py +++ b/pyasic/miners/models/antminer/X17/S17.py @@ -13,29 +13,33 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import AntMinerMake class S17(AntMinerMake): - raw_model = "S17" + raw_model = MinerModels.ANTMINER.S17 + expected_chips = 48 expected_fans = 4 class S17Plus(AntMinerMake): - raw_model = "S17+" + raw_model = MinerModels.ANTMINER.S17Plus + expected_chips = 65 expected_fans = 4 class S17Pro(AntMinerMake): - raw_model = "S17 Pro" + raw_model = MinerModels.ANTMINER.S17Pro + expected_chips = 48 expected_fans = 4 class S17e(AntMinerMake): - raw_model = "S17e" + raw_model = MinerModels.ANTMINER.S17e + expected_chips = 135 expected_fans = 4 diff --git a/pyasic/miners/models/antminer/X17/T17.py b/pyasic/miners/models/antminer/X17/T17.py index ce3fbff4..ad6e4af4 100644 --- a/pyasic/miners/models/antminer/X17/T17.py +++ b/pyasic/miners/models/antminer/X17/T17.py @@ -13,23 +13,26 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import AntMinerMake class T17(AntMinerMake): - raw_model = "T17" + raw_model = MinerModels.ANTMINER.T17 + expected_chips = 30 expected_fans = 4 class T17Plus(AntMinerMake): - raw_model = "T17+" + raw_model = MinerModels.ANTMINER.T17Plus + expected_chips = 44 expected_fans = 4 class T17e(AntMinerMake): - raw_model = "T17e" + raw_model = MinerModels.ANTMINER.T17e + expected_chips = 78 expected_fans = 4 diff --git a/pyasic/miners/models/antminer/X19/S19.py b/pyasic/miners/models/antminer/X19/S19.py index 4bd91a0e..64f03698 100644 --- a/pyasic/miners/models/antminer/X19/S19.py +++ b/pyasic/miners/models/antminer/X19/S19.py @@ -13,140 +13,162 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import AntMinerMake class S19(AntMinerMake): - raw_model = "S19" + raw_model = MinerModels.ANTMINER.S19 + expected_chips = 76 expected_fans = 4 class S19NoPIC(AntMinerMake): - raw_model = "S19 No PIC" + raw_model = MinerModels.ANTMINER.S19NoPIC + expected_chips = 88 expected_fans = 4 class S19Pro(AntMinerMake): - raw_model = "S19 Pro" + raw_model = MinerModels.ANTMINER.S19Pro + expected_chips = 114 expected_fans = 4 class S19i(AntMinerMake): - raw_model = "S19i" + raw_model = MinerModels.ANTMINER.S19i + expected_chips = 80 expected_fans = 4 class S19Plus(AntMinerMake): - raw_model = "S19+" + raw_model = MinerModels.ANTMINER.S19Plus + expected_chips = 80 expected_fans = 4 class S19ProPlus(AntMinerMake): - raw_model = "S19 Pro+" + raw_model = MinerModels.ANTMINER.S19ProPlus + expected_chips = 120 expected_fans = 4 class S19XP(AntMinerMake): - raw_model = "S19 XP" + raw_model = MinerModels.ANTMINER.S19XP + expected_chips = 110 expected_fans = 4 class S19a(AntMinerMake): - raw_model = "S19a" + raw_model = MinerModels.ANTMINER.S19a + expected_chips = 72 expected_fans = 4 class S19aPro(AntMinerMake): - raw_model = "S19a Pro" + raw_model = MinerModels.ANTMINER.S19aPro + expected_chips = 100 expected_fans = 4 class S19j(AntMinerMake): - raw_model = "S19j" + raw_model = MinerModels.ANTMINER.S19j + expected_chips = 114 expected_fans = 4 class S19jNoPIC(AntMinerMake): - raw_model = "S19j No PIC" + raw_model = MinerModels.ANTMINER.S19jNoPIC + expected_chips = 88 expected_fans = 4 class S19jPro(AntMinerMake): - raw_model = "S19j Pro" + raw_model = MinerModels.ANTMINER.S19jPro + expected_chips = 126 expected_fans = 4 class S19jProNoPIC(AntMinerMake): - raw_model = "S19j Pro No PIC" + raw_model = MinerModels.ANTMINER.S19jProNoPIC + expected_chips = 126 expected_fans = 4 class S19jProPlus(AntMinerMake): - raw_model = "S19j Pro+" + raw_model = MinerModels.ANTMINER.S19jProPlus + expected_chips = 120 expected_fans = 4 class S19jProPlusNoPIC(AntMinerMake): - raw_model = "S19j Pro+ No PIC" + raw_model = MinerModels.ANTMINER.S19jProPlusNoPIC + expected_chips = 120 expected_fans = 4 class S19kPro(AntMinerMake): - raw_model = "S19k Pro" + raw_model = MinerModels.ANTMINER.S19kPro + + expected_chips = 77 + expected_fans = 4 + + +class S19kProNoPIC(AntMinerMake): + raw_model = MinerModels.ANTMINER.S19kProNoPIC + expected_chips = 77 expected_fans = 4 class S19L(AntMinerMake): - raw_model = "S19L" + raw_model = MinerModels.ANTMINER.S19L + expected_chips = 76 expected_fans = 4 -class S19kProNoPIC(AntMinerMake): - raw_model = "S19k Pro No PIC" - expected_chips = 77 - expected_fans = 4 - - class S19Hydro(AntMinerMake): - raw_model = "S19 Hydro" + raw_model = MinerModels.ANTMINER.S19Hydro + expected_chips = 104 expected_hashboards = 4 expected_fans = 0 class S19ProHydro(AntMinerMake): - raw_model = "S19 Pro Hydro" + raw_model = MinerModels.ANTMINER.S19ProHydro + expected_chips = 180 expected_hashboards = 4 expected_fans = 0 class S19ProPlusHydro(AntMinerMake): - raw_model = "S19 Pro+ Hydro" + raw_model = MinerModels.ANTMINER.S19ProPlusHydro + expected_chips = 180 expected_hashboards = 4 expected_fans = 0 class S19KPro(AntMinerMake): - raw_model = "S19K Pro" + raw_model = MinerModels.ANTMINER.S19KPro + expected_chips = 77 expected_fans = 4 diff --git a/pyasic/miners/models/antminer/X19/T19.py b/pyasic/miners/models/antminer/X19/T19.py index ceb911a1..a956a0bc 100644 --- a/pyasic/miners/models/antminer/X19/T19.py +++ b/pyasic/miners/models/antminer/X19/T19.py @@ -13,11 +13,12 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import AntMinerMake class T19(AntMinerMake): - raw_model = "T19" + raw_model = MinerModels.ANTMINER.T19 + expected_chips = 76 expected_fans = 4 diff --git a/pyasic/miners/models/antminer/X21/S21.py b/pyasic/miners/models/antminer/X21/S21.py index 941c8339..3924559d 100644 --- a/pyasic/miners/models/antminer/X21/S21.py +++ b/pyasic/miners/models/antminer/X21/S21.py @@ -13,11 +13,12 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import AntMinerMake class S21(AntMinerMake): - raw_model = "S21" + raw_model = MinerModels.ANTMINER.S21 + expected_chips = 108 expected_fans = 4 diff --git a/pyasic/miners/models/antminer/X21/T21.py b/pyasic/miners/models/antminer/X21/T21.py index 06bb7ad9..df7cb066 100644 --- a/pyasic/miners/models/antminer/X21/T21.py +++ b/pyasic/miners/models/antminer/X21/T21.py @@ -13,11 +13,12 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import AntMinerMake class T21(AntMinerMake): - raw_model = "T21" + raw_model = MinerModels.ANTMINER.T21 + expected_chips = 108 expected_fans = 4 diff --git a/pyasic/miners/models/antminer/X3/D3.py b/pyasic/miners/models/antminer/X3/D3.py index ba6d41e8..a61dfd3f 100644 --- a/pyasic/miners/models/antminer/X3/D3.py +++ b/pyasic/miners/models/antminer/X3/D3.py @@ -13,13 +13,11 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import AntMinerMake class D3(AntMinerMake): - raw_model = "D3" + raw_model = MinerModels.ANTMINER.D3 expected_chips = 60 - expected_hashboards = 3 - expected_fans = 2 diff --git a/pyasic/miners/models/antminer/X3/HS3.py b/pyasic/miners/models/antminer/X3/HS3.py index c78eb776..dc1f99a2 100644 --- a/pyasic/miners/models/antminer/X3/HS3.py +++ b/pyasic/miners/models/antminer/X3/HS3.py @@ -13,13 +13,11 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import AntMinerMake class HS3(AntMinerMake): - raw_model = "HS3" + raw_model = MinerModels.ANTMINER.HS3 expected_chips = 92 - expected_hashboards = 3 - expected_fans = 2 diff --git a/pyasic/miners/models/antminer/X3/L3.py b/pyasic/miners/models/antminer/X3/L3.py index efb89377..921dfcb8 100644 --- a/pyasic/miners/models/antminer/X3/L3.py +++ b/pyasic/miners/models/antminer/X3/L3.py @@ -13,10 +13,11 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import AntMinerMake class L3Plus(AntMinerMake): - raw_model = "L3+" + raw_model = MinerModels.ANTMINER + expected_chips = 72 - expected_fans = 2 diff --git a/pyasic/miners/models/antminer/X5/DR5.py b/pyasic/miners/models/antminer/X5/DR5.py index 2125d4eb..d5e672b7 100644 --- a/pyasic/miners/models/antminer/X5/DR5.py +++ b/pyasic/miners/models/antminer/X5/DR5.py @@ -13,12 +13,11 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import AntMinerMake class DR5(AntMinerMake): - raw_model = "DR5" + raw_model = MinerModels.ANTMINER.DR5 + expected_chips = 72 - expected_hashboards = 3 - expected_fans = 2 diff --git a/pyasic/miners/models/antminer/X7/L7.py b/pyasic/miners/models/antminer/X7/L7.py index 165781d5..bf84db6d 100644 --- a/pyasic/miners/models/antminer/X7/L7.py +++ b/pyasic/miners/models/antminer/X7/L7.py @@ -13,10 +13,12 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import AntMinerMake class L7(AntMinerMake): - raw_model = "L7" + raw_model = MinerModels.ANTMINER.L7 + expected_chips = 120 expected_fans = 4 diff --git a/pyasic/miners/models/antminer/X9/E9.py b/pyasic/miners/models/antminer/X9/E9.py index b94c7648..4df29518 100644 --- a/pyasic/miners/models/antminer/X9/E9.py +++ b/pyasic/miners/models/antminer/X9/E9.py @@ -13,12 +13,13 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import AntMinerMake class E9Pro(AntMinerMake): - raw_model = "E9Pro" + raw_model = MinerModels.ANTMINER.E9Pro + expected_chips = 8 expected_hashboards = 2 expected_fans = 4 diff --git a/pyasic/miners/models/antminer/X9/S9.py b/pyasic/miners/models/antminer/X9/S9.py index b67f02b8..a057c8f8 100644 --- a/pyasic/miners/models/antminer/X9/S9.py +++ b/pyasic/miners/models/antminer/X9/S9.py @@ -13,23 +13,23 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import AntMinerMake class S9(AntMinerMake): - raw_model = "S9" + raw_model = MinerModels.ANTMINER.S9 + expected_chips = 63 - expected_fans = 2 class S9i(AntMinerMake): - raw_model = "S9i" + raw_model = MinerModels.ANTMINER.S9i + expected_chips = 63 - expected_fans = 2 class S9j(AntMinerMake): - raw_model = "S9j" + raw_model = MinerModels.ANTMINER.S9j + expected_chips = 63 - expected_fans = 2 diff --git a/pyasic/miners/models/antminer/X9/T9.py b/pyasic/miners/models/antminer/X9/T9.py index 9bcdb071..b095a787 100644 --- a/pyasic/miners/models/antminer/X9/T9.py +++ b/pyasic/miners/models/antminer/X9/T9.py @@ -13,11 +13,11 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import AntMinerMake class T9(AntMinerMake): - raw_model = "T9" + raw_model = MinerModels.ANTMINER.T9 + expected_chips = 54 - expected_fans = 2 diff --git a/pyasic/miners/models/auradine/AD/AD2.py b/pyasic/miners/models/auradine/AD/AD2.py index d1061396..11ee863c 100644 --- a/pyasic/miners/models/auradine/AD/AD2.py +++ b/pyasic/miners/models/auradine/AD/AD2.py @@ -1,6 +1,8 @@ +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import AuradineMake class AuradineAD2500(AuradineMake): - raw_model = "AD2500" + raw_model = MinerModels.AURADINE.AD2500 + expected_fans = 0 diff --git a/pyasic/miners/models/auradine/AD/AD3.py b/pyasic/miners/models/auradine/AD/AD3.py index c2e9a6a4..3a876127 100644 --- a/pyasic/miners/models/auradine/AD/AD3.py +++ b/pyasic/miners/models/auradine/AD/AD3.py @@ -1,6 +1,8 @@ +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import AuradineMake class AuradineAD3500(AuradineMake): - raw_model = "AD3500" + raw_model = MinerModels.AURADINE.AD3500 + expected_fans = 0 diff --git a/pyasic/miners/models/auradine/AI/AI2.py b/pyasic/miners/models/auradine/AI/AI2.py index 5292e6ec..eecf806c 100644 --- a/pyasic/miners/models/auradine/AI/AI2.py +++ b/pyasic/miners/models/auradine/AI/AI2.py @@ -1,6 +1,8 @@ +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import AuradineMake class AuradineAI2500(AuradineMake): - raw_model = "AI2500" + raw_model = MinerModels.AURADINE.AI2500 + expected_fans = 0 diff --git a/pyasic/miners/models/auradine/AI/AI3.py b/pyasic/miners/models/auradine/AI/AI3.py index 0a03a51f..e7dc87cb 100644 --- a/pyasic/miners/models/auradine/AI/AI3.py +++ b/pyasic/miners/models/auradine/AI/AI3.py @@ -1,6 +1,8 @@ +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import AuradineMake class AuradineAI3680(AuradineMake): - raw_model = "AI3680" + raw_model = MinerModels.AURADINE.AI3680 + expected_fans = 0 diff --git a/pyasic/miners/models/auradine/AT/AT1.py b/pyasic/miners/models/auradine/AT/AT1.py index 4ad15fad..7f659ca7 100644 --- a/pyasic/miners/models/auradine/AT/AT1.py +++ b/pyasic/miners/models/auradine/AT/AT1.py @@ -1,7 +1,9 @@ +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import AuradineMake class AuradineAT1500(AuradineMake): - raw_model = "AT1500" + raw_model = MinerModels.AURADINE.AT1500 + expected_chips = 132 expected_fans = 4 diff --git a/pyasic/miners/models/auradine/AT/AT2.py b/pyasic/miners/models/auradine/AT/AT2.py index af7e516f..4b3477dd 100644 --- a/pyasic/miners/models/auradine/AT/AT2.py +++ b/pyasic/miners/models/auradine/AT/AT2.py @@ -1,11 +1,14 @@ +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import AuradineMake class AuradineAT2860(AuradineMake): - raw_model = "AT2860" + raw_model = MinerModels.AURADINE.AT2860 + expected_fans = 4 class AuradineAT2880(AuradineMake): - raw_model = "AT2880" + raw_model = MinerModels.AURADINE.AT2880 + expected_fans = 4 diff --git a/pyasic/miners/models/avalonminer/A10X/A1026.py b/pyasic/miners/models/avalonminer/A10X/A1026.py index 46cdfced..cb26d40b 100644 --- a/pyasic/miners/models/avalonminer/A10X/A1026.py +++ b/pyasic/miners/models/avalonminer/A10X/A1026.py @@ -13,11 +13,11 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import AvalonMinerMake class Avalon1026(AvalonMinerMake): - raw_model = "Avalon 1026" + raw_model = MinerModels.AVALONMINER.Avalon1026 + expected_chips = 80 - expected_fans = 2 diff --git a/pyasic/miners/models/avalonminer/A10X/A1047.py b/pyasic/miners/models/avalonminer/A10X/A1047.py index ac588796..c8113061 100644 --- a/pyasic/miners/models/avalonminer/A10X/A1047.py +++ b/pyasic/miners/models/avalonminer/A10X/A1047.py @@ -13,11 +13,11 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import AvalonMinerMake class Avalon1047(AvalonMinerMake): - raw_model = "Avalon 1047" + raw_model = MinerModels.AVALONMINER.Avalon1047 + expected_chips = 80 - expected_fans = 2 diff --git a/pyasic/miners/models/avalonminer/A10X/A1066.py b/pyasic/miners/models/avalonminer/A10X/A1066.py index 03eaab22..7324d8cf 100644 --- a/pyasic/miners/models/avalonminer/A10X/A1066.py +++ b/pyasic/miners/models/avalonminer/A10X/A1066.py @@ -13,11 +13,11 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import AvalonMinerMake class Avalon1066(AvalonMinerMake): - raw_model = "Avalon 1066" + raw_model = MinerModels.AVALONMINER.Avalon1066 expected_chips = 114 expected_fans = 4 diff --git a/pyasic/miners/models/avalonminer/A11X/A1166.py b/pyasic/miners/models/avalonminer/A11X/A1166.py index b2be56ea..8fc6a35b 100644 --- a/pyasic/miners/models/avalonminer/A11X/A1166.py +++ b/pyasic/miners/models/avalonminer/A11X/A1166.py @@ -13,11 +13,12 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import AvalonMinerMake class Avalon1166Pro(AvalonMinerMake): - raw_model = "Avalon 1166 Pro" + raw_model = MinerModels.AVALONMINER.Avalon1166Pro + expected_chips = 120 expected_fans = 4 diff --git a/pyasic/miners/models/avalonminer/A12X/A1246.py b/pyasic/miners/models/avalonminer/A12X/A1246.py index 2f5ae23a..1a22fd04 100644 --- a/pyasic/miners/models/avalonminer/A12X/A1246.py +++ b/pyasic/miners/models/avalonminer/A12X/A1246.py @@ -13,11 +13,12 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import AvalonMinerMake class Avalon1246(AvalonMinerMake): - raw_model = "Avalon 1246" + raw_model = MinerModels.AVALONMINER.Avalon1246 + expected_chips = 120 expected_fans = 4 diff --git a/pyasic/miners/models/avalonminer/A7X/A721.py b/pyasic/miners/models/avalonminer/A7X/A721.py index c217990f..6eaa1e85 100644 --- a/pyasic/miners/models/avalonminer/A7X/A721.py +++ b/pyasic/miners/models/avalonminer/A7X/A721.py @@ -13,12 +13,13 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import AvalonMinerMake class Avalon721(AvalonMinerMake): - raw_model = "Avalon 721" + raw_model = MinerModels.AVALONMINER.Avalon721 + expected_hashboards = 4 expected_chips = 18 expected_fans = 1 diff --git a/pyasic/miners/models/avalonminer/A7X/A741.py b/pyasic/miners/models/avalonminer/A7X/A741.py index 464e8c5c..5b6e9d7b 100644 --- a/pyasic/miners/models/avalonminer/A7X/A741.py +++ b/pyasic/miners/models/avalonminer/A7X/A741.py @@ -13,12 +13,13 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import AvalonMinerMake class Avalon741(AvalonMinerMake): - raw_model = "Avalon 741" + raw_model = MinerModels.AVALONMINER.Avalon741 + expected_hashboards = 4 expected_chips = 22 expected_fans = 1 diff --git a/pyasic/miners/models/avalonminer/A7X/A761.py b/pyasic/miners/models/avalonminer/A7X/A761.py index 4cc890b7..c3b20408 100644 --- a/pyasic/miners/models/avalonminer/A7X/A761.py +++ b/pyasic/miners/models/avalonminer/A7X/A761.py @@ -13,12 +13,13 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import AvalonMinerMake class Avalon761(AvalonMinerMake): - raw_model = "Avalon 761" + raw_model = MinerModels.AVALONMINER.Avalon761 + expected_hashboards = 4 expected_chips = 18 expected_fans = 1 diff --git a/pyasic/miners/models/avalonminer/A8X/A821.py b/pyasic/miners/models/avalonminer/A8X/A821.py index 9f2579f0..fc25ff1d 100644 --- a/pyasic/miners/models/avalonminer/A8X/A821.py +++ b/pyasic/miners/models/avalonminer/A8X/A821.py @@ -13,12 +13,13 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import AvalonMinerMake class Avalon821(AvalonMinerMake): - raw_model = "Avalon 821" + raw_model = MinerModels.AVALONMINER.Avalon821 + expected_hashboards = 4 expected_chips = 26 expected_fans = 1 diff --git a/pyasic/miners/models/avalonminer/A8X/A841.py b/pyasic/miners/models/avalonminer/A8X/A841.py index 3efb6c4e..d67d9fc7 100644 --- a/pyasic/miners/models/avalonminer/A8X/A841.py +++ b/pyasic/miners/models/avalonminer/A8X/A841.py @@ -13,12 +13,13 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import AvalonMinerMake class Avalon841(AvalonMinerMake): - raw_model = "Avalon 841" + raw_model = MinerModels.AVALONMINER.Avalon841 + expected_hashboards = 4 expected_chips = 26 expected_fans = 1 diff --git a/pyasic/miners/models/avalonminer/A8X/A851.py b/pyasic/miners/models/avalonminer/A8X/A851.py index a14ff621..8110be0e 100644 --- a/pyasic/miners/models/avalonminer/A8X/A851.py +++ b/pyasic/miners/models/avalonminer/A8X/A851.py @@ -13,12 +13,13 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import AvalonMinerMake class Avalon851(AvalonMinerMake): - raw_model = "Avalon 851" + raw_model = MinerModels.AVALONMINER.Avalon851 + expected_hashboards = 4 expected_chips = 26 expected_fans = 1 diff --git a/pyasic/miners/models/avalonminer/A9X/A921.py b/pyasic/miners/models/avalonminer/A9X/A921.py index 1ed8169b..fc7d088f 100644 --- a/pyasic/miners/models/avalonminer/A9X/A921.py +++ b/pyasic/miners/models/avalonminer/A9X/A921.py @@ -13,12 +13,13 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import AvalonMinerMake class Avalon921(AvalonMinerMake): - raw_model = "Avalon 921" + raw_model = MinerModels.AVALONMINER.Avalon921 + expected_hashboards = 4 expected_chips = 26 expected_fans = 1 diff --git a/pyasic/miners/models/epic/blockminer/blockminer.py b/pyasic/miners/models/epic/blockminer/blockminer.py index cba11f8a..c6745daf 100644 --- a/pyasic/miners/models/epic/blockminer/blockminer.py +++ b/pyasic/miners/models/epic/blockminer/blockminer.py @@ -1,13 +1,16 @@ +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import ePICMake class BlockMiner520i(ePICMake): - raw_model = "BlockMiner 520i" + raw_model = MinerModels.EPIC.BM520i + expected_chips = 124 expected_fans = 4 class BlockMiner720i(ePICMake): - raw_model = "BlockMiner 720i" + raw_model = MinerModels.EPIC.BM720i + expected_chips = 180 expected_fans = 4 diff --git a/pyasic/miners/models/goldshell/X5/CK5.py b/pyasic/miners/models/goldshell/X5/CK5.py index 9ea7fb43..0dddc4e0 100644 --- a/pyasic/miners/models/goldshell/X5/CK5.py +++ b/pyasic/miners/models/goldshell/X5/CK5.py @@ -13,11 +13,13 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import GoldshellMake class CK5(GoldshellMake): - raw_model = "CK5" + raw_model = MinerModels.GOLDSHELL.CK5 + expected_hashboards = 4 expected_chips = 46 expected_fans = 4 diff --git a/pyasic/miners/models/goldshell/X5/HS5.py b/pyasic/miners/models/goldshell/X5/HS5.py index 4410ec3e..21631574 100644 --- a/pyasic/miners/models/goldshell/X5/HS5.py +++ b/pyasic/miners/models/goldshell/X5/HS5.py @@ -13,11 +13,13 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import GoldshellMake class HS5(GoldshellMake): - raw_model = "HS5" + raw_model = MinerModels.GOLDSHELL.HS5 + expected_hashboards = 4 expected_chips = 46 expected_fans = 4 diff --git a/pyasic/miners/models/goldshell/X5/KD5.py b/pyasic/miners/models/goldshell/X5/KD5.py index 08ad823b..4f0b06b1 100644 --- a/pyasic/miners/models/goldshell/X5/KD5.py +++ b/pyasic/miners/models/goldshell/X5/KD5.py @@ -13,11 +13,13 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import GoldshellMake class KD5(GoldshellMake): - raw_model = "KD5" + raw_model = MinerModels.GOLDSHELL.KD5 + expected_hashboards = 4 expected_chips = 46 expected_fans = 4 diff --git a/pyasic/miners/models/goldshell/XBox/KDBox.py b/pyasic/miners/models/goldshell/XBox/KDBox.py index df9de377..d8674ff3 100644 --- a/pyasic/miners/models/goldshell/XBox/KDBox.py +++ b/pyasic/miners/models/goldshell/XBox/KDBox.py @@ -13,18 +13,19 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import GoldshellMake class KDBoxII(GoldshellMake): - raw_model = "KD Box II" + raw_model = MinerModels.GOLDSHELL.KDBoxII + expected_chips = 36 - expected_fans = 2 expected_hashboards = 1 class KDBoxPro(GoldshellMake): - raw_model = "KD Box Pro" + raw_model = MinerModels.GOLDSHELL.KDBoxPro + expected_chips = 16 - expected_fans = 2 expected_hashboards = 1 diff --git a/pyasic/miners/models/goldshell/XMax/KDMax.py b/pyasic/miners/models/goldshell/XMax/KDMax.py index bed6007b..c4c586fe 100644 --- a/pyasic/miners/models/goldshell/XMax/KDMax.py +++ b/pyasic/miners/models/goldshell/XMax/KDMax.py @@ -13,11 +13,12 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import GoldshellMake class KDMax(GoldshellMake): - raw_model = "KD Max" - expected_hashboards = 3 + raw_model = MinerModels.GOLDSHELL.KDMax + expected_chips = 84 expected_fans = 4 diff --git a/pyasic/miners/models/innosilicon/A10X/A10X.py b/pyasic/miners/models/innosilicon/A10X/A10X.py index 99bc686f..53df2039 100644 --- a/pyasic/miners/models/innosilicon/A10X/A10X.py +++ b/pyasic/miners/models/innosilicon/A10X/A10X.py @@ -13,8 +13,9 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import InnosiliconMake class A10X(InnosiliconMake): - raw_model = "A10X" + raw_model = MinerModels.INNOSILICON.A10X diff --git a/pyasic/miners/models/innosilicon/T3X/T3H.py b/pyasic/miners/models/innosilicon/T3X/T3H.py index 311e11a1..22be6208 100644 --- a/pyasic/miners/models/innosilicon/T3X/T3H.py +++ b/pyasic/miners/models/innosilicon/T3X/T3H.py @@ -13,11 +13,12 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import InnosiliconMake class T3HPlus(InnosiliconMake): - raw_model = "T3H+" + raw_model = MinerModels.INNOSILICON.T3HPlus + expected_chips = 114 expected_fans = 4 diff --git a/pyasic/miners/models/whatsminer/M2X/M20.py b/pyasic/miners/models/whatsminer/M2X/M20.py index b40fd45d..60baea06 100644 --- a/pyasic/miners/models/whatsminer/M2X/M20.py +++ b/pyasic/miners/models/whatsminer/M2X/M20.py @@ -13,11 +13,11 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M20V10(WhatsMinerMake): - raw_model = "M20 V10" + raw_model = MinerModels.WHATSMINER.M20V10 + expected_chips = 70 - expected_fans = 2 diff --git a/pyasic/miners/models/whatsminer/M2X/M20P.py b/pyasic/miners/models/whatsminer/M2X/M20P.py index 20768296..4faa5f65 100644 --- a/pyasic/miners/models/whatsminer/M2X/M20P.py +++ b/pyasic/miners/models/whatsminer/M2X/M20P.py @@ -13,17 +13,17 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M20PV10(WhatsMinerMake): - raw_model = "M20P V10" + raw_model = MinerModels.WHATSMINER.M20PV10 + expected_chips = 156 - expected_fans = 2 class M20PV30(WhatsMinerMake): - raw_model = "M20P V30" + raw_model = MinerModels.WHATSMINER.M20PV30 + expected_chips = 148 - expected_fans = 2 diff --git a/pyasic/miners/models/whatsminer/M2X/M20S.py b/pyasic/miners/models/whatsminer/M2X/M20S.py index 2ccae274..0f22a1db 100644 --- a/pyasic/miners/models/whatsminer/M2X/M20S.py +++ b/pyasic/miners/models/whatsminer/M2X/M20S.py @@ -13,23 +13,23 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M20SV10(WhatsMinerMake): - raw_model = "M20S V10" + raw_model = MinerModels.WHATSMINER.M20SV10 + expected_chips = 105 - expected_fans = 2 class M20SV20(WhatsMinerMake): - raw_model = "M20S V20" + raw_model = MinerModels.WHATSMINER.M20SV20 + expected_chips = 111 - expected_fans = 2 class M20SV30(WhatsMinerMake): - raw_model = "M20S V30" + raw_model = MinerModels.WHATSMINER.M20SV30 + expected_chips = 140 - expected_fans = 2 diff --git a/pyasic/miners/models/whatsminer/M2X/M20S_Plus.py b/pyasic/miners/models/whatsminer/M2X/M20S_Plus.py index bf7ef5fb..6b5b1ae8 100644 --- a/pyasic/miners/models/whatsminer/M2X/M20S_Plus.py +++ b/pyasic/miners/models/whatsminer/M2X/M20S_Plus.py @@ -13,10 +13,9 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M20SPlusV30(WhatsMinerMake): - raw_model = "M20S+ V30" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M20SPlusV30 diff --git a/pyasic/miners/models/whatsminer/M2X/M21.py b/pyasic/miners/models/whatsminer/M2X/M21.py index 133041ac..e35e753c 100644 --- a/pyasic/miners/models/whatsminer/M2X/M21.py +++ b/pyasic/miners/models/whatsminer/M2X/M21.py @@ -13,11 +13,11 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M21V10(WhatsMinerMake): - raw_model = "M21 V10" + raw_model = MinerModels.WHATSMINER.M21V10 + expected_chips = 33 - expected_fans = 2 diff --git a/pyasic/miners/models/whatsminer/M2X/M21S.py b/pyasic/miners/models/whatsminer/M2X/M21S.py index b40a31fc..a6169965 100644 --- a/pyasic/miners/models/whatsminer/M2X/M21S.py +++ b/pyasic/miners/models/whatsminer/M2X/M21S.py @@ -13,23 +13,23 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M21SV20(WhatsMinerMake): - raw_model = "M21S V20" + raw_model = MinerModels.WHATSMINER.M21SV20 + expected_chips = 66 - expected_fans = 2 class M21SV60(WhatsMinerMake): - raw_model = "M21S V60" + raw_model = MinerModels.WHATSMINER.M21SV60 + expected_chips = 105 - expected_fans = 2 class M21SV70(WhatsMinerMake): - raw_model = "M21S V70" + raw_model = MinerModels.WHATSMINER.M21SV70 + expected_chips = 111 - expected_fans = 2 diff --git a/pyasic/miners/models/whatsminer/M2X/M21S_Plus.py b/pyasic/miners/models/whatsminer/M2X/M21S_Plus.py index 3f517a25..1e6881b5 100644 --- a/pyasic/miners/models/whatsminer/M2X/M21S_Plus.py +++ b/pyasic/miners/models/whatsminer/M2X/M21S_Plus.py @@ -13,10 +13,9 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M21SPlusV20(WhatsMinerMake): - raw_model = "M21S+ V20" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M21SPlusV20 diff --git a/pyasic/miners/models/whatsminer/M2X/M29.py b/pyasic/miners/models/whatsminer/M2X/M29.py index 41663319..68cce556 100644 --- a/pyasic/miners/models/whatsminer/M2X/M29.py +++ b/pyasic/miners/models/whatsminer/M2X/M29.py @@ -13,11 +13,11 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M29V10(WhatsMinerMake): - raw_model = "M29 V10" + raw_model = MinerModels.WHATSMINER.M29V10 + expected_chips = 50 - expected_fans = 2 diff --git a/pyasic/miners/models/whatsminer/M3X/M30.py b/pyasic/miners/models/whatsminer/M3X/M30.py index 5b7d9eee..3821ba03 100644 --- a/pyasic/miners/models/whatsminer/M3X/M30.py +++ b/pyasic/miners/models/whatsminer/M3X/M30.py @@ -13,17 +13,17 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M30V10(WhatsMinerMake): - raw_model = "M30 V10" + raw_model = MinerModels.WHATSMINER.M30V10 + expected_chips = 105 - expected_fans = 2 class M30V20(WhatsMinerMake): - raw_model = "M30 V20" + raw_model = MinerModels.WHATSMINER.M30V20 + expected_chips = 111 - expected_fans = 2 diff --git a/pyasic/miners/models/whatsminer/M3X/M30K.py b/pyasic/miners/models/whatsminer/M3X/M30K.py index d28b1d40..42d2c327 100644 --- a/pyasic/miners/models/whatsminer/M3X/M30K.py +++ b/pyasic/miners/models/whatsminer/M3X/M30K.py @@ -13,12 +13,12 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M30KV10(WhatsMinerMake): - raw_model = "M30K V10" + raw_model = MinerModels.WHATSMINER.M30KV10 + expected_hashboards = 4 expected_chips = 240 - expected_fans = 2 diff --git a/pyasic/miners/models/whatsminer/M3X/M30L.py b/pyasic/miners/models/whatsminer/M3X/M30L.py index 18655218..e95c2228 100644 --- a/pyasic/miners/models/whatsminer/M3X/M30L.py +++ b/pyasic/miners/models/whatsminer/M3X/M30L.py @@ -13,12 +13,12 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M30LV10(WhatsMinerMake): - raw_model = "M30L V10" + raw_model = MinerModels.WHATSMINER.M30LV10 + board_num = 4 expected_chips = 144 - expected_fans = 2 diff --git a/pyasic/miners/models/whatsminer/M3X/M30S.py b/pyasic/miners/models/whatsminer/M3X/M30S.py index 6629e84d..f2b82a34 100644 --- a/pyasic/miners/models/whatsminer/M3X/M30S.py +++ b/pyasic/miners/models/whatsminer/M3X/M30S.py @@ -13,174 +13,169 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M30SV10(WhatsMinerMake): - raw_model = "M30S V10" + raw_model = MinerModels.WHATSMINER.M30SV10 + expected_chips = 148 - expected_fans = 2 class M30SV20(WhatsMinerMake): - raw_model = "M30S V20" + raw_model = MinerModels.WHATSMINER.M30SV20 + expected_chips = 156 - expected_fans = 2 class M30SV30(WhatsMinerMake): - raw_model = "M30S V30" + raw_model = MinerModels.WHATSMINER.M30SV30 + expected_chips = 164 - expected_fans = 2 class M30SV40(WhatsMinerMake): - raw_model = "M30S V40" + raw_model = MinerModels.WHATSMINER.M30SV40 + expected_chips = 172 - expected_fans = 2 class M30SV50(WhatsMinerMake): - raw_model = "M30S V50" + raw_model = MinerModels.WHATSMINER.M30SV50 + expected_chips = 156 - expected_fans = 2 class M30SV60(WhatsMinerMake): - raw_model = "M30S V60" + raw_model = MinerModels.WHATSMINER.M30SV60 + expected_chips = 164 - expected_fans = 2 class M30SV70(WhatsMinerMake): - raw_model = "M30S V70" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M30SV70 class M30SV80(WhatsMinerMake): - raw_model = "M30S V80" + raw_model = MinerModels.WHATSMINER.M30SV80 + expected_chips = 129 - expected_fans = 2 class M30SVE10(WhatsMinerMake): - raw_model = "M30S VE10" + raw_model = MinerModels.WHATSMINER.M30SVE10 + expected_chips = 105 - expected_fans = 2 class M30SVE20(WhatsMinerMake): - raw_model = "M30S VE20" + raw_model = MinerModels.WHATSMINER.M30SVE20 + expected_chips = 111 - expected_fans = 2 class M30SVE30(WhatsMinerMake): - raw_model = "M30S VE30" + raw_model = MinerModels.WHATSMINER.M30SVE30 + expected_chips = 117 - expected_fans = 2 class M30SVE40(WhatsMinerMake): - raw_model = "M30S VE40" + raw_model = MinerModels.WHATSMINER.M30SVE40 + expected_chips = 123 - expected_fans = 2 class M30SVE50(WhatsMinerMake): - raw_model = "M30S VE50" + raw_model = MinerModels.WHATSMINER.M30SVE50 + expected_chips = 129 - expected_fans = 2 class M30SVE60(WhatsMinerMake): - raw_model = "M30S VE60" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M30SVE60 class M30SVE70(WhatsMinerMake): - raw_model = "M30S VE70" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M30SVE70 class M30SVF10(WhatsMinerMake): - raw_model = "M30S VF10" + raw_model = MinerModels.WHATSMINER.M30SVF10 + expected_chips = 70 - expected_fans = 2 class M30SVF20(WhatsMinerMake): - raw_model = "M30S VF20" + raw_model = MinerModels.WHATSMINER.M30SVF20 + expected_chips = 74 - expected_fans = 2 class M30SVF30(WhatsMinerMake): - raw_model = "M30S VF30" + raw_model = MinerModels.WHATSMINER.M30SVF30 + expected_chips = 78 - expected_fans = 2 class M30SVG10(WhatsMinerMake): - raw_model = "M30S VG10" + raw_model = MinerModels.WHATSMINER.M30SVG10 + expected_chips = 66 - expected_fans = 2 class M30SVG20(WhatsMinerMake): - raw_model = "M30S VG20" + raw_model = MinerModels.WHATSMINER.M30SVG20 + expected_chips = 70 - expected_fans = 2 class M30SVG30(WhatsMinerMake): - raw_model = "M30S VG30" + raw_model = MinerModels.WHATSMINER.M30SVG30 + expected_chips = 74 - expected_fans = 2 class M30SVG40(WhatsMinerMake): - raw_model = "M30S VG40" + raw_model = MinerModels.WHATSMINER.M30SVG40 + expected_chips = 78 - expected_fans = 2 class M30SVH10(WhatsMinerMake): - raw_model = "M30S VH10" + raw_model = MinerModels.WHATSMINER.M30SVH10 + expected_chips = 64 - expected_fans = 2 class M30SVH20(WhatsMinerMake): - raw_model = "M30S VH20" + raw_model = MinerModels.WHATSMINER.M30SVH20 + expected_chips = 66 - expected_fans = 2 class M30SVH30(WhatsMinerMake): - raw_model = "M30S VH30" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M30SVH30 class M30SVH40(WhatsMinerMake): - raw_model = "M30S VH40" + raw_model = MinerModels.WHATSMINER.M30SVH40 + expected_chips = 64 - expected_fans = 2 class M30SVH50(WhatsMinerMake): - raw_model = "M30S VH50" + raw_model = MinerModels.WHATSMINER.M30SVH50 + expected_chips = 66 - expected_fans = 2 class M30SVH60(WhatsMinerMake): - raw_model = "M30S VH60" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M30SVH60 class M30SVI20(WhatsMinerMake): - raw_model = "M30S VI20" + raw_model = MinerModels.WHATSMINER.M30SVI20 + expected_chips = 70 - expected_fans = 2 diff --git a/pyasic/miners/models/whatsminer/M3X/M30S_Plus.py b/pyasic/miners/models/whatsminer/M3X/M30S_Plus.py index 216a42ff..03200e15 100644 --- a/pyasic/miners/models/whatsminer/M3X/M30S_Plus.py +++ b/pyasic/miners/models/whatsminer/M3X/M30S_Plus.py @@ -13,186 +13,181 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M30SPlusV10(WhatsMinerMake): - raw_model = "M30S+ V10" + raw_model = MinerModels.WHATSMINER.M30SPlusV10 + expected_chips = 215 - expected_fans = 2 class M30SPlusV20(WhatsMinerMake): - raw_model = "M30S+ V20" + raw_model = MinerModels.WHATSMINER.M30SPlusV20 + expected_chips = 255 - expected_fans = 2 class M30SPlusV30(WhatsMinerMake): - raw_model = "M30S+ V30" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M30SPlusV30 class M30SPlusV40(WhatsMinerMake): - raw_model = "M30S+ V40" + raw_model = MinerModels.WHATSMINER.M30SPlusV40 + expected_chips = 235 - expected_fans = 2 class M30SPlusV50(WhatsMinerMake): - raw_model = "M30S+ V50" + raw_model = MinerModels.WHATSMINER.M30SPlusV50 + expected_chips = 225 - expected_fans = 2 class M30SPlusV60(WhatsMinerMake): - raw_model = "M30S+ V60" + raw_model = MinerModels.WHATSMINER.M30SPlusV60 + expected_chips = 245 - expected_fans = 2 class M30SPlusV70(WhatsMinerMake): - raw_model = "M30S+ V70" + raw_model = MinerModels.WHATSMINER.M30SPlusV70 + expected_chips = 235 - expected_fans = 2 class M30SPlusV80(WhatsMinerMake): - raw_model = "M30S+ V80" + raw_model = MinerModels.WHATSMINER.M30SPlusV80 + expected_chips = 245 - expected_fans = 2 class M30SPlusV90(WhatsMinerMake): - raw_model = "M30S+ V90" + raw_model = MinerModels.WHATSMINER.M30SPlusV90 + expected_chips = 225 - expected_fans = 2 class M30SPlusV100(WhatsMinerMake): - raw_model = "M30S+ V100" + raw_model = MinerModels.WHATSMINER.M30SPlusV100 + expected_chips = 215 - expected_fans = 2 class M30SPlusVE30(WhatsMinerMake): - raw_model = "M30S+ VE30" + raw_model = MinerModels.WHATSMINER.M30SPlusVE30 + expected_chips = 148 - expected_fans = 2 class M30SPlusVE40(WhatsMinerMake): - raw_model = "M30S+ VE40" + raw_model = MinerModels.WHATSMINER.M30SPlusVE40 + expected_chips = 156 - expected_fans = 2 class M30SPlusVE50(WhatsMinerMake): - raw_model = "M30S+ VE50" + raw_model = MinerModels.WHATSMINER.M30SPlusVE50 + expected_chips = 164 - expected_fans = 2 class M30SPlusVE60(WhatsMinerMake): - raw_model = "M30S+ VE60" + raw_model = MinerModels.WHATSMINER.M30SPlusVE60 + expected_chips = 172 - expected_fans = 2 class M30SPlusVE70(WhatsMinerMake): - raw_model = "M30S+ VE70" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M30SPlusVE70 class M30SPlusVE80(WhatsMinerMake): - raw_model = "M30S+ VE80" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M30SPlusVE80 class M30SPlusVE90(WhatsMinerMake): - raw_model = "M30S+ VE90" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M30SPlusVE90 class M30SPlusVE100(WhatsMinerMake): - raw_model = "M30S+ VE100" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M30SPlusVE100 class M30SPlusVF20(WhatsMinerMake): - raw_model = "M30S+ VF20" + raw_model = MinerModels.WHATSMINER.M30SPlusVF20 + expected_chips = 111 - expected_fans = 2 class M30SPlusVF30(WhatsMinerMake): - raw_model = "M30S+ VF30" + raw_model = MinerModels.WHATSMINER.M30SPlusVF30 + expected_chips = 117 - expected_fans = 2 class M30SPlusVG20(WhatsMinerMake): - raw_model = "M30S+ VG20" + raw_model = MinerModels.WHATSMINER.M30SPlusVG20 + expected_chips = 82 - expected_fans = 2 class M30SPlusVG30(WhatsMinerMake): - raw_model = "M30S+ VG30" + raw_model = MinerModels.WHATSMINER.M30SPlusVG30 + expected_chips = 78 - expected_fans = 2 class M30SPlusVG40(WhatsMinerMake): - raw_model = "M30S+ VG40" + raw_model = MinerModels.WHATSMINER.M30SPlusVG40 + expected_chips = 105 - expected_fans = 2 class M30SPlusVG50(WhatsMinerMake): - raw_model = "M30S+ VG50" + raw_model = MinerModels.WHATSMINER.M30SPlusVG50 + expected_chips = 111 - expected_fans = 2 class M30SPlusVG60(WhatsMinerMake): - raw_model = "M30S+ VG60" + raw_model = MinerModels.WHATSMINER.M30SPlusVG60 + expected_chips = 86 - expected_fans = 2 class M30SPlusVH10(WhatsMinerMake): - raw_model = "M30S+ VH10" + raw_model = MinerModels.WHATSMINER.M30SPlusVH10 + expected_chips = 64 - expected_fans = 2 class M30SPlusVH20(WhatsMinerMake): - raw_model = "M30S+ VH20" + raw_model = MinerModels.WHATSMINER.M30SPlusVH20 + expected_chips = 66 - expected_fans = 2 class M30SPlusVH30(WhatsMinerMake): - raw_model = "M30S+ VH30" + raw_model = MinerModels.WHATSMINER.M30SPlusVH30 + expected_chips = 70 - expected_fans = 2 class M30SPlusVH40(WhatsMinerMake): - raw_model = "M30S+ VH40" + raw_model = MinerModels.WHATSMINER.M30SPlusVH40 + expected_chips = 74 - expected_fans = 2 class M30SPlusVH50(WhatsMinerMake): - raw_model = "M30S+ VH50" + raw_model = MinerModels.WHATSMINER.M30SPlusVH50 + expected_chips = 64 - expected_fans = 2 class M30SPlusVH60(WhatsMinerMake): - raw_model = "M30S+ VH60" + raw_model = MinerModels.WHATSMINER.M30SPlusVH60 + expected_chips = 66 - expected_fans = 2 diff --git a/pyasic/miners/models/whatsminer/M3X/M30S_Plus_Plus.py b/pyasic/miners/models/whatsminer/M3X/M30S_Plus_Plus.py index 20b09704..57dd51ae 100644 --- a/pyasic/miners/models/whatsminer/M3X/M30S_Plus_Plus.py +++ b/pyasic/miners/models/whatsminer/M3X/M30S_Plus_Plus.py @@ -13,130 +13,109 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M30SPlusPlusV10(WhatsMinerMake): - raw_model = "M30S++ V10" + raw_model = MinerModels.WHATSMINER.M30SPlusPlusV10 expected_hashboards = 4 expected_chips = 255 - expected_fans = 2 class M30SPlusPlusV20(WhatsMinerMake): - raw_model = "M30S++ V20" + raw_model = MinerModels.WHATSMINER.M30SPlusPlusV20 expected_hashboards = 4 expected_chips = 255 - expected_fans = 2 class M30SPlusPlusVE30(WhatsMinerMake): - raw_model = "M30S++ VE30" + raw_model = MinerModels.WHATSMINER.M30SPlusPlusVE30 expected_chips = 215 - expected_fans = 2 class M30SPlusPlusVE40(WhatsMinerMake): - raw_model = "M30S++ VE40" + raw_model = MinerModels.WHATSMINER.M30SPlusPlusVE40 expected_chips = 225 - expected_fans = 2 class M30SPlusPlusVE50(WhatsMinerMake): - raw_model = "M30S++ VE50" + raw_model = MinerModels.WHATSMINER.M30SPlusPlusVE50 expected_chips = 235 - expected_fans = 2 class M30SPlusPlusVF40(WhatsMinerMake): - raw_model = "M30S++ VF40" + raw_model = MinerModels.WHATSMINER.M30SPlusPlusVF40 expected_chips = 156 - expected_fans = 2 class M30SPlusPlusVG30(WhatsMinerMake): - raw_model = "M30S++ VG30" + raw_model = MinerModels.WHATSMINER.M30SPlusPlusVG30 expected_chips = 111 - expected_fans = 2 class M30SPlusPlusVG40(WhatsMinerMake): - raw_model = "M30S++ VG40" + raw_model = MinerModels.WHATSMINER.M30SPlusPlusVG40 expected_chips = 117 - expected_fans = 2 class M30SPlusPlusVG50(WhatsMinerMake): - raw_model = "M30S++ VG50" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M30SPlusPlusVG50 class M30SPlusPlusVH10(WhatsMinerMake): - raw_model = "M30S++ VH10" + raw_model = MinerModels.WHATSMINER.M30SPlusPlusVH10 expected_chips = 82 - expected_fans = 2 class M30SPlusPlusVH20(WhatsMinerMake): - raw_model = "M30S++ VH20" + raw_model = MinerModels.WHATSMINER.M30SPlusPlusVH20 expected_chips = 86 - expected_fans = 2 class M30SPlusPlusVH30(WhatsMinerMake): - raw_model = "M30S++ VH30" + raw_model = MinerModels.WHATSMINER.M30SPlusPlusVH30 expected_chips = 111 - expected_fans = 2 class M30SPlusPlusVH40(WhatsMinerMake): - raw_model = "M30S++ VH40" + raw_model = MinerModels.WHATSMINER.M30SPlusPlusVH40 expected_chips = 70 - expected_fans = 2 class M30SPlusPlusVH50(WhatsMinerMake): - raw_model = "M30S++ VH50" + raw_model = MinerModels.WHATSMINER.M30SPlusPlusVH50 expected_chips = 74 - expected_fans = 2 class M30SPlusPlusVH60(WhatsMinerMake): - raw_model = "M30S++ VH60" + raw_model = MinerModels.WHATSMINER.M30SPlusPlusVH60 expected_chips = 78 - expected_fans = 2 class M30SPlusPlusVH70(WhatsMinerMake): - raw_model = "M30S++ VH70" + raw_model = MinerModels.WHATSMINER.M30SPlusPlusVH70 expected_chips = 70 - expected_fans = 2 class M30SPlusPlusVH80(WhatsMinerMake): - raw_model = "M30S++ VH80" + raw_model = MinerModels.WHATSMINER.M30SPlusPlusVH80 expected_chips = 74 - expected_fans = 2 class M30SPlusPlusVH90(WhatsMinerMake): - raw_model = "M30S++ VH90" + raw_model = MinerModels.WHATSMINER.M30SPlusPlusVH90 expected_chips = 78 - expected_fans = 2 class M30SPlusPlusVH100(WhatsMinerMake): - raw_model = "M30S++ VH100" + raw_model = MinerModels.WHATSMINER.M30SPlusPlusVH100 expected_chips = 82 - expected_fans = 2 class M30SPlusPlusVJ20(WhatsMinerMake): - raw_model = "M30S++ VJ20" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M30SPlusPlusVJ20 class M30SPlusPlusVJ30(WhatsMinerMake): - raw_model = "M30S++ VJ30" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M30SPlusPlusVJ30 diff --git a/pyasic/miners/models/whatsminer/M3X/M31.py b/pyasic/miners/models/whatsminer/M3X/M31.py index 27685ad0..ba2af7dc 100644 --- a/pyasic/miners/models/whatsminer/M3X/M31.py +++ b/pyasic/miners/models/whatsminer/M3X/M31.py @@ -13,17 +13,17 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M31V10(WhatsMinerMake): - raw_model = "M31 V10" + raw_model = MinerModels.WHATSMINER.M31V10 + expected_chips = 70 - expected_fans = 2 class M31V20(WhatsMinerMake): - raw_model = "M31 V20" + raw_model = MinerModels.WHATSMINER.M31V20 + expected_chips = 74 - expected_fans = 2 diff --git a/pyasic/miners/models/whatsminer/M3X/M31H.py b/pyasic/miners/models/whatsminer/M3X/M31H.py index ff2b8766..340ac996 100644 --- a/pyasic/miners/models/whatsminer/M3X/M31H.py +++ b/pyasic/miners/models/whatsminer/M3X/M31H.py @@ -13,18 +13,20 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M31HV10(WhatsMinerMake): - raw_model = "M31H V10" + raw_model = MinerModels.WHATSMINER.M31HV10 + expected_chips = 114 expected_fans = 0 class M31HV40(WhatsMinerMake): - raw_model = "M31H V40" + raw_model = MinerModels.WHATSMINER.M31HV40 + expected_hashboards = 4 expected_chips = 136 expected_fans = 0 diff --git a/pyasic/miners/models/whatsminer/M3X/M31L.py b/pyasic/miners/models/whatsminer/M3X/M31L.py index f5454402..40aa9a68 100644 --- a/pyasic/miners/models/whatsminer/M3X/M31L.py +++ b/pyasic/miners/models/whatsminer/M3X/M31L.py @@ -13,11 +13,11 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M31LV10(WhatsMinerMake): - raw_model = "M31L V10" + raw_model = MinerModels.WHATSMINER.M31LV10 + expected_chips = 114 - expected_fans = 2 diff --git a/pyasic/miners/models/whatsminer/M3X/M31S.py b/pyasic/miners/models/whatsminer/M3X/M31S.py index 6bf0c38f..e481f59c 100644 --- a/pyasic/miners/models/whatsminer/M3X/M31S.py +++ b/pyasic/miners/models/whatsminer/M3X/M31S.py @@ -13,75 +13,73 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M31SV10(WhatsMinerMake): - raw_model = "M31S V10" + raw_model = MinerModels.WHATSMINER.M31SV10 + expected_chips = 105 - expected_fans = 2 class M31SV20(WhatsMinerMake): - raw_model = "M31S V20" + raw_model = MinerModels.WHATSMINER.M31SV20 + expected_chips = 111 - expected_fans = 2 class M31SV30(WhatsMinerMake): - raw_model = "M31S V30" + raw_model = MinerModels.WHATSMINER.M31SV30 + expected_chips = 117 - expected_fans = 2 class M31SV40(WhatsMinerMake): - raw_model = "M31S V40" + raw_model = MinerModels.WHATSMINER.M31SV40 + expected_chips = 123 - expected_fans = 2 class M31SV50(WhatsMinerMake): - raw_model = "M31S V50" + raw_model = MinerModels.WHATSMINER.M31SV50 + expected_chips = 78 - expected_fans = 2 class M31SV60(WhatsMinerMake): - raw_model = "M31S V60" + raw_model = MinerModels.WHATSMINER.M31SV60 + expected_chips = 105 - expected_fans = 2 class M31SV70(WhatsMinerMake): - raw_model = "M31S V70" + raw_model = MinerModels.WHATSMINER.M31SV70 + expected_chips = 111 - expected_fans = 2 class M31SV80(WhatsMinerMake): - raw_model = "M31S V80" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M31SV80 class M31SV90(WhatsMinerMake): - raw_model = "M31S V90" + raw_model = MinerModels.WHATSMINER.M31SV90 + expected_chips = 117 - expected_fans = 2 class M31SVE10(WhatsMinerMake): - raw_model = "M31S VE10" + raw_model = MinerModels.WHATSMINER.M31SVE10 + expected_chips = 70 - expected_fans = 2 class M31SVE20(WhatsMinerMake): - raw_model = "M31S VE20" + raw_model = MinerModels.WHATSMINER.M31SVE20 + expected_chips = 74 - expected_fans = 2 class M31SVE30(WhatsMinerMake): - raw_model = "M31S VE30" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M31SVE30 diff --git a/pyasic/miners/models/whatsminer/M3X/M31SE.py b/pyasic/miners/models/whatsminer/M3X/M31SE.py index b8e26eea..662d0315 100644 --- a/pyasic/miners/models/whatsminer/M3X/M31SE.py +++ b/pyasic/miners/models/whatsminer/M3X/M31SE.py @@ -13,23 +13,23 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M31SEV10(WhatsMinerMake): - raw_model = "M31SE V10" + raw_model = MinerModels.WHATSMINER.M31SEV10 + expected_chips = 82 - expected_fans = 2 class M31SEV20(WhatsMinerMake): - raw_model = "M31SE V20" + raw_model = MinerModels.WHATSMINER.M31SEV20 + expected_chips = 78 - expected_fans = 2 class M31SEV30(WhatsMinerMake): - raw_model = "M31SE V30" + raw_model = MinerModels.WHATSMINER.M31SEV30 + expected_chips = 78 - expected_fans = 2 diff --git a/pyasic/miners/models/whatsminer/M3X/M31S_Plus.py b/pyasic/miners/models/whatsminer/M3X/M31S_Plus.py index 3b5f72d7..caa62b64 100644 --- a/pyasic/miners/models/whatsminer/M3X/M31S_Plus.py +++ b/pyasic/miners/models/whatsminer/M3X/M31S_Plus.py @@ -13,122 +13,119 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M31SPlusV10(WhatsMinerMake): - raw_model = "M31S+ V10" + raw_model = MinerModels.WHATSMINER.M31SPlusV10 + expected_chips = 105 - expected_fans = 2 class M31SPlusV20(WhatsMinerMake): - raw_model = "M31S+ V20" + raw_model = MinerModels.WHATSMINER.M31SPlusV20 + expected_chips = 111 - expected_fans = 2 class M31SPlusV30(WhatsMinerMake): - raw_model = "M31S+ V30" + raw_model = MinerModels.WHATSMINER.M31SPlusV30 + expected_chips = 117 - expected_fans = 2 class M31SPlusV40(WhatsMinerMake): - raw_model = "M31S+ V40" + raw_model = MinerModels.WHATSMINER.M31SPlusV40 + expected_chips = 123 - expected_fans = 2 class M31SPlusV50(WhatsMinerMake): - raw_model = "M31S+ V50" + raw_model = MinerModels.WHATSMINER.M31SPlusV50 + expected_chips = 148 - expected_fans = 2 class M31SPlusV60(WhatsMinerMake): - raw_model = "M31S+ V60" + raw_model = MinerModels.WHATSMINER.M31SPlusV60 + expected_chips = 156 - expected_fans = 2 class M31SPlusV80(WhatsMinerMake): - raw_model = "M31S+ V80" + raw_model = MinerModels.WHATSMINER.M31SPlusV80 + expected_chips = 129 - expected_fans = 2 class M31SPlusV90(WhatsMinerMake): - raw_model = "M31S+ V90" + raw_model = MinerModels.WHATSMINER.M31SPlusV90 + expected_chips = 117 - expected_fans = 2 class M31SPlusV100(WhatsMinerMake): - raw_model = "M31S+ V100" + raw_model = MinerModels.WHATSMINER.M31SPlusV100 + expected_chips = 111 - expected_fans = 2 class M31SPlusVE10(WhatsMinerMake): - raw_model = "M31S+ VE10" + raw_model = MinerModels.WHATSMINER.M31SPlusVE10 + expected_chips = 82 - expected_fans = 2 class M31SPlusVE20(WhatsMinerMake): - raw_model = "M31S+ VE20" + raw_model = MinerModels.WHATSMINER.M31SPlusVE20 + expected_chips = 78 - expected_fans = 2 class M31SPlusVE30(WhatsMinerMake): - raw_model = "M31S+ VE30" + raw_model = MinerModels.WHATSMINER.M31SPlusVE30 + expected_chips = 105 - expected_fans = 2 class M31SPlusVE40(WhatsMinerMake): - raw_model = "M31S+ VE40" + raw_model = MinerModels.WHATSMINER.M31SPlusVE40 + expected_chips = 111 - expected_fans = 2 class M31SPlusVE50(WhatsMinerMake): - raw_model = "M31S+ VE50" + raw_model = MinerModels.WHATSMINER.M31SPlusVE50 + expected_chips = 117 - expected_fans = 2 class M31SPlusVE60(WhatsMinerMake): - raw_model = "M31S+ VE60" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M31SPlusVE60 class M31SPlusVE80(WhatsMinerMake): - raw_model = "M31S+ VE80" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M31SPlusVE80 class M31SPlusVF20(WhatsMinerMake): - raw_model = "M31S+ VF20" + raw_model = MinerModels.WHATSMINER.M31SPlusVF20 + expected_chips = 66 - expected_fans = 2 class M31SPlusVF30(WhatsMinerMake): - raw_model = "M31S+ VF30" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M31SPlusVF30 class M31SPlusVG20(WhatsMinerMake): - raw_model = "M31S+ VG20" + raw_model = MinerModels.WHATSMINER.M31SPlusVG20 + expected_chips = 66 - expected_fans = 2 class M31SPlusVG30(WhatsMinerMake): - raw_model = "M31S+ VG30" + raw_model = MinerModels.WHATSMINER.M31SPlusVG30 + expected_chips = 70 - expected_fans = 2 diff --git a/pyasic/miners/models/whatsminer/M3X/M32.py b/pyasic/miners/models/whatsminer/M3X/M32.py index 06cb3861..879452db 100644 --- a/pyasic/miners/models/whatsminer/M3X/M32.py +++ b/pyasic/miners/models/whatsminer/M3X/M32.py @@ -13,17 +13,17 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M32V10(WhatsMinerMake): - raw_model = "M32 V10" + raw_model = MinerModels.WHATSMINER.M32V10 + expected_chips = 78 - expected_fans = 2 class M32V20(WhatsMinerMake): - raw_model = "M32 V20" + raw_model = MinerModels.WHATSMINER.M32V20 + expected_chips = 74 - expected_fans = 2 diff --git a/pyasic/miners/models/whatsminer/M3X/M32S.py b/pyasic/miners/models/whatsminer/M3X/M32S.py index b88f6790..19c9d481 100644 --- a/pyasic/miners/models/whatsminer/M3X/M32S.py +++ b/pyasic/miners/models/whatsminer/M3X/M32S.py @@ -13,11 +13,11 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M32S(WhatsMinerMake): - raw_model = "M32S" + raw_model = MinerModels.WHATSMINER.M32S + expected_chips = 78 - expected_fans = 2 diff --git a/pyasic/miners/models/whatsminer/M3X/M33.py b/pyasic/miners/models/whatsminer/M3X/M33.py index e16301fa..40851b44 100644 --- a/pyasic/miners/models/whatsminer/M3X/M33.py +++ b/pyasic/miners/models/whatsminer/M3X/M33.py @@ -13,23 +13,26 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M33V10(WhatsMinerMake): - raw_model = "M33 V10" + raw_model = MinerModels.WHATSMINER.M33V10 + expected_chips = 33 expected_fans = 0 class M33V20(WhatsMinerMake): - raw_model = "M33 V20" + raw_model = MinerModels.WHATSMINER.M33V20 + expected_chips = 62 expected_fans = 0 class M33V30(WhatsMinerMake): - raw_model = "M33 V30" + raw_model = MinerModels.WHATSMINER.M33V30 + expected_chips = 66 expected_fans = 0 diff --git a/pyasic/miners/models/whatsminer/M3X/M33S.py b/pyasic/miners/models/whatsminer/M3X/M33S.py index c598bbe3..47ff467b 100644 --- a/pyasic/miners/models/whatsminer/M3X/M33S.py +++ b/pyasic/miners/models/whatsminer/M3X/M33S.py @@ -13,12 +13,13 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M33SVG30(WhatsMinerMake): - raw_model = "M33S VG30" + raw_model = MinerModels.WHATSMINER.M33SVG30 + expected_hashboards = 4 expected_chips = 116 expected_fans = 0 diff --git a/pyasic/miners/models/whatsminer/M3X/M33S_Plus.py b/pyasic/miners/models/whatsminer/M3X/M33S_Plus.py index 1a53bf2c..87416459 100644 --- a/pyasic/miners/models/whatsminer/M3X/M33S_Plus.py +++ b/pyasic/miners/models/whatsminer/M3X/M33S_Plus.py @@ -13,25 +13,28 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M33SPlusVG20(WhatsMinerMake): - raw_model = "M33S+ VG20" + raw_model = MinerModels.WHATSMINER.M33SPlusVG20 + expected_hashboards = 4 expected_chips = 112 expected_fans = 0 class M33SPlusVH20(WhatsMinerMake): - raw_model = "M33S+ VH20" + raw_model = MinerModels.WHATSMINER.M33SPlusVH20 + expected_hashboards = 4 expected_chips = 100 expected_fans = 0 class M33SPlusVH30(WhatsMinerMake): - raw_model = "M33S+ VH30" + raw_model = MinerModels.WHATSMINER.M33SPlusVH30 + expected_hashboards = 4 expected_fans = 0 diff --git a/pyasic/miners/models/whatsminer/M3X/M33S_Plus_Plus.py b/pyasic/miners/models/whatsminer/M3X/M33S_Plus_Plus.py index 74e74d19..417457e8 100644 --- a/pyasic/miners/models/whatsminer/M3X/M33S_Plus_Plus.py +++ b/pyasic/miners/models/whatsminer/M3X/M33S_Plus_Plus.py @@ -13,25 +13,28 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M33SPlusPlusVH20(WhatsMinerMake): - raw_model = "M33S++ VH20" + raw_model = MinerModels.WHATSMINER.M33SPlusPlusVH20 + expected_hashboards = 4 expected_chips = 112 expected_fans = 0 class M33SPlusPlusVH30(WhatsMinerMake): - raw_model = "M33S++ VH30" + raw_model = MinerModels.WHATSMINER.M33SPlusPlusVH30 + expected_hashboards = 4 expected_fans = 0 class M33SPlusPlusVG40(WhatsMinerMake): - raw_model = "M33S++ VG40" + raw_model = MinerModels.WHATSMINER.M33SPlusPlusVG40 + expected_hashboards = 4 expected_chips = 174 expected_fans = 0 diff --git a/pyasic/miners/models/whatsminer/M3X/M34S_Plus.py b/pyasic/miners/models/whatsminer/M3X/M34S_Plus.py index af2d3f93..7afe5fa0 100644 --- a/pyasic/miners/models/whatsminer/M3X/M34S_Plus.py +++ b/pyasic/miners/models/whatsminer/M3X/M34S_Plus.py @@ -13,12 +13,13 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M34SPlusVE10(WhatsMinerMake): - raw_model = "M34S+ VE10" + raw_model = MinerModels.WHATSMINER.M34SPlusVE10 + expected_hashboards = 4 expected_chips = 116 expected_fans = 0 diff --git a/pyasic/miners/models/whatsminer/M3X/M36S.py b/pyasic/miners/models/whatsminer/M3X/M36S.py index c8211242..e8a050ff 100644 --- a/pyasic/miners/models/whatsminer/M3X/M36S.py +++ b/pyasic/miners/models/whatsminer/M3X/M36S.py @@ -13,12 +13,13 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M36SVE10(WhatsMinerMake): - raw_model = "M36S VE10" + raw_model = MinerModels.WHATSMINER.M36SVE10 + expected_hashboards = 4 expected_chips = 114 expected_fans = 0 diff --git a/pyasic/miners/models/whatsminer/M3X/M36S_Plus.py b/pyasic/miners/models/whatsminer/M3X/M36S_Plus.py index 4681592b..965c0fc4 100644 --- a/pyasic/miners/models/whatsminer/M3X/M36S_Plus.py +++ b/pyasic/miners/models/whatsminer/M3X/M36S_Plus.py @@ -13,12 +13,13 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M36SPlusVG30(WhatsMinerMake): - raw_model = "M36S+ VG30" + raw_model = MinerModels.WHATSMINER.M36SPlusVG30 + expected_hashboards = 4 expected_chips = 108 expected_fans = 0 diff --git a/pyasic/miners/models/whatsminer/M3X/M36S_Plus_Plus.py b/pyasic/miners/models/whatsminer/M3X/M36S_Plus_Plus.py index 120bb71a..30ca3739 100644 --- a/pyasic/miners/models/whatsminer/M3X/M36S_Plus_Plus.py +++ b/pyasic/miners/models/whatsminer/M3X/M36S_Plus_Plus.py @@ -13,12 +13,13 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M36SPlusPlusVH30(WhatsMinerMake): - raw_model = "M36S++ VH30" + raw_model = MinerModels.WHATSMINER.M36SPlusPlusVH30 + expected_hashboards = 4 expected_chips = 80 expected_fans = 0 diff --git a/pyasic/miners/models/whatsminer/M3X/M39.py b/pyasic/miners/models/whatsminer/M3X/M39.py index f4077a96..7982fb95 100644 --- a/pyasic/miners/models/whatsminer/M3X/M39.py +++ b/pyasic/miners/models/whatsminer/M3X/M39.py @@ -13,23 +13,26 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M39V10(WhatsMinerMake): - raw_model = "M39 V10" + raw_model = MinerModels.WHATSMINER.M39V10 + expected_chips = 50 expected_fans = 0 class M39V20(WhatsMinerMake): - raw_model = "M39 V20" + raw_model = MinerModels.WHATSMINER.M39V20 + expected_chips = 54 expected_fans = 0 class M39V30(WhatsMinerMake): - raw_model = "M39 V30" + raw_model = MinerModels.WHATSMINER.M39V30 + expected_chips = 68 expected_fans = 0 diff --git a/pyasic/miners/models/whatsminer/M5X/M50.py b/pyasic/miners/models/whatsminer/M5X/M50.py index 9f9c407f..80369ecf 100644 --- a/pyasic/miners/models/whatsminer/M5X/M50.py +++ b/pyasic/miners/models/whatsminer/M5X/M50.py @@ -13,81 +13,76 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M50VE30(WhatsMinerMake): - raw_model = "M50 VE30" + raw_model = MinerModels.WHATSMINER.M50VE30 + expected_hashboards = 4 expected_chips = 255 - expected_fans = 2 class M50VG30(WhatsMinerMake): - raw_model = "M50 VG30" + raw_model = MinerModels.WHATSMINER.M50VG30 + expected_chips = 156 - expected_fans = 2 class M50VH10(WhatsMinerMake): - raw_model = "M50 VH10" + raw_model = MinerModels.WHATSMINER.M50VH10 + expected_chips = 86 - expected_fans = 2 class M50VH20(WhatsMinerMake): - raw_model = "M50 VH20" + raw_model = MinerModels.WHATSMINER.M50VH20 + expected_chips = 111 - expected_fans = 2 class M50VH30(WhatsMinerMake): - raw_model = "M50 VH30" + raw_model = MinerModels.WHATSMINER.M50VH30 + expected_chips = 117 - expected_fans = 2 class M50VH40(WhatsMinerMake): - raw_model = "M50 VH40" + raw_model = MinerModels.WHATSMINER.M50VH40 + expected_chips = 84 - expected_fans = 2 class M50VH50(WhatsMinerMake): - raw_model = "M50 VH50" + raw_model = MinerModels.WHATSMINER.M50VH50 + expected_chips = 105 - expected_fans = 2 class M50VH60(WhatsMinerMake): - raw_model = "M50 VH60" + raw_model = MinerModels.WHATSMINER.M50VH60 + expected_chips = 84 - expected_fans = 2 class M50VH70(WhatsMinerMake): - raw_model = "M50 VH70" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M50VH70 class M50VH80(WhatsMinerMake): - raw_model = "M50 VH80" + raw_model = MinerModels.WHATSMINER.M50VH80 + expected_chips = 111 - expected_fans = 2 class M50VJ10(WhatsMinerMake): - raw_model = "M50 VJ10" - expected_chips = 0 - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M50VJ10 class M50VJ20(WhatsMinerMake): - raw_model = "M50 VJ20" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M50VJ20 class M50VJ30(WhatsMinerMake): - raw_model = "M50 VJ30" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M50VJ30 diff --git a/pyasic/miners/models/whatsminer/M5X/M50S.py b/pyasic/miners/models/whatsminer/M5X/M50S.py index 5a5d7ce5..7db6975e 100644 --- a/pyasic/miners/models/whatsminer/M5X/M50S.py +++ b/pyasic/miners/models/whatsminer/M5X/M50S.py @@ -13,47 +13,41 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M50SVJ10(WhatsMinerMake): - raw_model = "M50S VJ10" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M50SVJ10 class M50SVJ20(WhatsMinerMake): - raw_model = "M50S VJ20" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M50SVJ20 class M50SVJ30(WhatsMinerMake): - raw_model = "M50S VJ30" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M50SVJ30 class M50SVH10(WhatsMinerMake): - raw_model = "M50S VH10" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M50SVH10 class M50SVH20(WhatsMinerMake): - raw_model = "M50S VH20" + raw_model = MinerModels.WHATSMINER.M50SVH20 + expected_chips = 135 - expected_fans = 2 class M50SVH30(WhatsMinerMake): - raw_model = "M50S VH30" + raw_model = MinerModels.WHATSMINER.M50SVH30 + expected_chips = 156 - expected_fans = 2 class M50SVH40(WhatsMinerMake): - raw_model = "M50S VH40" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M50SVH40 class M50SVH50(WhatsMinerMake): - raw_model = "M50S VH50" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M50SVH50 diff --git a/pyasic/miners/models/whatsminer/M5X/M50S_Plus.py b/pyasic/miners/models/whatsminer/M5X/M50S_Plus.py index 9ff3b1dc..43573a10 100644 --- a/pyasic/miners/models/whatsminer/M5X/M50S_Plus.py +++ b/pyasic/miners/models/whatsminer/M5X/M50S_Plus.py @@ -13,26 +13,23 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M50SPlusVH30(WhatsMinerMake): - raw_model = "M50S+ VH30" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M50SPlusVH30 class M50SPlusVH40(WhatsMinerMake): - raw_model = "M50S+ VH40" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M50SPlusVH40 class M50SPlusVJ30(WhatsMinerMake): - raw_model = "M50S+ VJ30" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M50SPlusVJ30 class M50SPlusVK20(WhatsMinerMake): - raw_model = "M50S+ VK20" + raw_model = MinerModels.WHATSMINER.M50SPlusVK20 + expected_chips = 117 - expected_fans = 2 diff --git a/pyasic/miners/models/whatsminer/M5X/M50S_Plus_Plus.py b/pyasic/miners/models/whatsminer/M5X/M50S_Plus_Plus.py index cb0658cd..e8657907 100644 --- a/pyasic/miners/models/whatsminer/M5X/M50S_Plus_Plus.py +++ b/pyasic/miners/models/whatsminer/M5X/M50S_Plus_Plus.py @@ -13,22 +13,21 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M50SPlusPlusVK10(WhatsMinerMake): - raw_model = "M50S++ VK10" + raw_model = MinerModels.WHATSMINER.M50SPlusPlusVK10 + expected_chips = 117 - expected_fans = 2 class M50SPlusPlusVK20(WhatsMinerMake): - raw_model = "M50S++ VK20" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M50SPlusPlusVK20 class M50SPlusPlusVK30(WhatsMinerMake): - raw_model = "M50S++ VK30" + raw_model = MinerModels.WHATSMINER.M50SPlusPlusVK30 + expected_chips = 76 - expected_fans = 2 diff --git a/pyasic/miners/models/whatsminer/M5X/M53.py b/pyasic/miners/models/whatsminer/M5X/M53.py index a5d91eb6..faf0c2bd 100644 --- a/pyasic/miners/models/whatsminer/M5X/M53.py +++ b/pyasic/miners/models/whatsminer/M5X/M53.py @@ -13,12 +13,13 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M53VH30(WhatsMinerMake): - raw_model = "M53 VH30" + raw_model = MinerModels.WHATSMINER.M53VH30 + expected_hashboards = 4 expected_chips = 128 expected_fans = 0 diff --git a/pyasic/miners/models/whatsminer/M5X/M53S.py b/pyasic/miners/models/whatsminer/M5X/M53S.py index f4f4829b..406e6b9d 100644 --- a/pyasic/miners/models/whatsminer/M5X/M53S.py +++ b/pyasic/miners/models/whatsminer/M5X/M53S.py @@ -13,15 +13,17 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M53SVH30(WhatsMinerMake): - raw_model = "M53S VH30" + raw_model = MinerModels.WHATSMINER.M53SVH30 + expected_fans = 0 class M53SVJ40(WhatsMinerMake): - raw_model = "M53S VJ40" + raw_model = MinerModels.WHATSMINER.M53SVJ40 + expected_fans = 0 diff --git a/pyasic/miners/models/whatsminer/M5X/M53S_Plus.py b/pyasic/miners/models/whatsminer/M5X/M53S_Plus.py index 54633e2e..b3692f08 100644 --- a/pyasic/miners/models/whatsminer/M5X/M53S_Plus.py +++ b/pyasic/miners/models/whatsminer/M5X/M53S_Plus.py @@ -13,10 +13,11 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M53SPlusVJ30(WhatsMinerMake): - raw_model = "M53S+ VJ30" + raw_model = MinerModels.WHATSMINER.M53SPlusVJ30 + expected_fans = 0 diff --git a/pyasic/miners/models/whatsminer/M5X/M53S_Plus_Plus.py b/pyasic/miners/models/whatsminer/M5X/M53S_Plus_Plus.py index faa4910c..65bff356 100644 --- a/pyasic/miners/models/whatsminer/M5X/M53S_Plus_Plus.py +++ b/pyasic/miners/models/whatsminer/M5X/M53S_Plus_Plus.py @@ -13,10 +13,11 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M53SPlusPlusVK10(WhatsMinerMake): - raw_model = "M53S++ VK10" + raw_model = MinerModels.WHATSMINER.M53SPlusPlusVK10 + expected_fans = 0 diff --git a/pyasic/miners/models/whatsminer/M5X/M56.py b/pyasic/miners/models/whatsminer/M5X/M56.py index 0896be53..51bbeac2 100644 --- a/pyasic/miners/models/whatsminer/M5X/M56.py +++ b/pyasic/miners/models/whatsminer/M5X/M56.py @@ -13,12 +13,13 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M56VH30(WhatsMinerMake): - raw_model = "M56 VH30" + raw_model = MinerModels.WHATSMINER.M56VH30 + expected_hashboards = 4 expected_chips = 108 expected_fans = 0 diff --git a/pyasic/miners/models/whatsminer/M5X/M56S.py b/pyasic/miners/models/whatsminer/M5X/M56S.py index 5cf3ab4e..6ab6d5d9 100644 --- a/pyasic/miners/models/whatsminer/M5X/M56S.py +++ b/pyasic/miners/models/whatsminer/M5X/M56S.py @@ -13,10 +13,11 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M56SVH30(WhatsMinerMake): - raw_model = "M56S VH30" + raw_model = MinerModels.WHATSMINER.M56SVH30 + expected_fans = 0 diff --git a/pyasic/miners/models/whatsminer/M5X/M56S_Plus.py b/pyasic/miners/models/whatsminer/M5X/M56S_Plus.py index f28f1d3d..1155e1ad 100644 --- a/pyasic/miners/models/whatsminer/M5X/M56S_Plus.py +++ b/pyasic/miners/models/whatsminer/M5X/M56S_Plus.py @@ -13,10 +13,11 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M56SPlusVJ30(WhatsMinerMake): - raw_model = "M56S+ VJ30" + raw_model = MinerModels.WHATSMINER.M56SPlusVJ30 + expected_fans = 0 diff --git a/pyasic/miners/models/whatsminer/M5X/M59.py b/pyasic/miners/models/whatsminer/M5X/M59.py index 2d814fc5..e4f971e3 100644 --- a/pyasic/miners/models/whatsminer/M5X/M59.py +++ b/pyasic/miners/models/whatsminer/M5X/M59.py @@ -13,10 +13,11 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M59VH30(WhatsMinerMake): - raw_model = "M59 VH30" + raw_model = MinerModels.WHATSMINER.M59VH30 + expected_fans = 0 diff --git a/pyasic/miners/models/whatsminer/M6X/M60.py b/pyasic/miners/models/whatsminer/M6X/M60.py index 01db5641..b6902df9 100644 --- a/pyasic/miners/models/whatsminer/M6X/M60.py +++ b/pyasic/miners/models/whatsminer/M6X/M60.py @@ -13,25 +13,21 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M60VK10(WhatsMinerMake): - raw_model = "M60 VK10" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M60VK10 class M60VK20(WhatsMinerMake): - raw_model = "M60 VK20" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M60VK20 class M60VK30(WhatsMinerMake): - raw_model = "M60 VK30" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M60VK30 class M60VK40(WhatsMinerMake): - raw_model = "M60 VK40" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M60VK40 diff --git a/pyasic/miners/models/whatsminer/M6X/M60S.py b/pyasic/miners/models/whatsminer/M6X/M60S.py index e5c3987f..4efdd0a5 100644 --- a/pyasic/miners/models/whatsminer/M6X/M60S.py +++ b/pyasic/miners/models/whatsminer/M6X/M60S.py @@ -13,27 +13,23 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M60SVK10(WhatsMinerMake): - raw_model = "M60S VK10" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M60SVK10 class M60SVK20(WhatsMinerMake): - raw_model = "M60S VK20" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M60SVK20 class M60SVK30(WhatsMinerMake): - raw_model = "M60S VK30" - expected_hashboards = 3 + raw_model = MinerModels.WHATSMINER.M60SVK30 + expected_chips = 78 - expected_fans = 2 class M60SVK40(WhatsMinerMake): - raw_model = "M60S VK40" - expected_fans = 2 + raw_model = MinerModels.WHATSMINER.M60SVK40 diff --git a/pyasic/miners/models/whatsminer/M6X/M63.py b/pyasic/miners/models/whatsminer/M6X/M63.py index e7ca7338..5c4fb493 100644 --- a/pyasic/miners/models/whatsminer/M6X/M63.py +++ b/pyasic/miners/models/whatsminer/M6X/M63.py @@ -13,22 +13,25 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M63VK10(WhatsMinerMake): - raw_model = "M63 VK10" + raw_model = MinerModels.WHATSMINER.M63VK10 + expected_fans = 0 class M63VK20(WhatsMinerMake): - raw_model = "M63 VK20" + raw_model = MinerModels.WHATSMINER.M63VK20 + expected_fans = 0 class M63VK30(WhatsMinerMake): - raw_model = "M63 VK30" + raw_model = MinerModels.WHATSMINER.M63VK30 + expected_chips = 68 expected_hashboards = 4 expected_fans = 0 diff --git a/pyasic/miners/models/whatsminer/M6X/M63S.py b/pyasic/miners/models/whatsminer/M6X/M63S.py index 658bd058..49ad3a4d 100644 --- a/pyasic/miners/models/whatsminer/M6X/M63S.py +++ b/pyasic/miners/models/whatsminer/M6X/M63S.py @@ -13,20 +13,23 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M63SVK10(WhatsMinerMake): - raw_model = "M63S VK10" + raw_model = MinerModels.WHATSMINER.M63SVK10 + expected_fans = 0 class M63SVK20(WhatsMinerMake): - raw_model = "M63S VK20" + raw_model = MinerModels.WHATSMINER.M63SVK20 + expected_fans = 0 class M63SVK30(WhatsMinerMake): - raw_model = "M63S VK30" + raw_model = MinerModels.WHATSMINER.M63SVK30 + expected_fans = 0 diff --git a/pyasic/miners/models/whatsminer/M6X/M66.py b/pyasic/miners/models/whatsminer/M6X/M66.py index e4920ad0..5912fe0b 100644 --- a/pyasic/miners/models/whatsminer/M6X/M66.py +++ b/pyasic/miners/models/whatsminer/M6X/M66.py @@ -13,15 +13,17 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M66VK20(WhatsMinerMake): - raw_model = "M66 VK20" + raw_model = MinerModels.WHATSMINER.M66VK20 + expected_fans = 0 class M66VK30(WhatsMinerMake): - raw_model = "M66 VK30" + raw_model = MinerModels.WHATSMINER.M66VK30 + expected_fans = 0 diff --git a/pyasic/miners/models/whatsminer/M6X/M66S.py b/pyasic/miners/models/whatsminer/M6X/M66S.py index 3e26e9a9..0284d5a8 100644 --- a/pyasic/miners/models/whatsminer/M6X/M66S.py +++ b/pyasic/miners/models/whatsminer/M6X/M66S.py @@ -13,22 +13,25 @@ # See the License for the specific language governing permissions and - # limitations under the License. - # ------------------------------------------------------------------------------ - +from pyasic.device.models import MinerModels from pyasic.miners.device.makes import WhatsMinerMake class M66SVK20(WhatsMinerMake): - raw_model = "M66S VK20" + raw_model = MinerModels.WHATSMINER.M66SVK20 + expected_fans = 0 class M66SVK30(WhatsMinerMake): - raw_model = "M66S VK30" + raw_model = MinerModels.WHATSMINER.M66SVK30 + expected_chips = 96 expected_hashboards = 4 expected_fans = 0 class M66SVK40(WhatsMinerMake): - raw_model = "M66S VK40" + raw_model = MinerModels.WHATSMINER.M66SVK40 + expected_fans = 0