Compare commits

...

8 Commits

Author SHA1 Message Date
Upstream Data
17eae253e6 version: bump version number 2024-12-10 11:08:22 -07:00
Upstream Data
ab30988614 bug: fix incorrect scrypt unit base type 2024-12-10 11:08:03 -07:00
Upstream Data
9b8e547f86 version: bump version number 2024-12-10 11:02:24 -07:00
Upstream Data
3b8cbb9ff1 feature: add support for antminer L9 2024-12-10 11:02:02 -07:00
Upstream Data
d39d278296 version: bump version number 2024-12-10 10:51:58 -07:00
Upstream Data
ea8b922367 bug: fix hive default password 2024-12-10 10:51:46 -07:00
Upstream Data
0d1c8d80e0 version: bump version number 2024-12-10 10:46:44 -07:00
Upstream Data
494d25da97 feature: add support for hiveon S19 2024-12-10 10:46:23 -07:00
12 changed files with 79 additions and 9 deletions

View File

@@ -358,13 +358,20 @@
show_root_heading: false show_root_heading: false
heading_level: 4 heading_level: 4
## S19j Pro (Stock) ## S19j Pro (Hive)
::: pyasic.miners.antminer.hiveon.X19.S19.HiveonS19jPro ::: pyasic.miners.antminer.hiveon.X19.S19.HiveonS19jPro
handler: python handler: python
options: options:
show_root_heading: false show_root_heading: false
heading_level: 4 heading_level: 4
## S19 (Hive)
::: pyasic.miners.antminer.hiveon.X19.S19.HiveonS19
handler: python
options:
show_root_heading: false
heading_level: 4
## S19 (LuxOS) ## S19 (LuxOS)
::: pyasic.miners.antminer.luxos.X19.S19.LUXMinerS19 ::: pyasic.miners.antminer.luxos.X19.S19.LUXMinerS19
handler: python handler: python

View File

@@ -43,6 +43,13 @@
show_root_heading: false show_root_heading: false
heading_level: 4 heading_level: 4
## L9 (Stock)
::: pyasic.miners.antminer.bmminer.X9.L9.BMMinerL9
handler: python
options:
show_root_heading: false
heading_level: 4
## S9 (BOS+) ## S9 (BOS+)
::: pyasic.miners.antminer.bosminer.X9.S9.BOSMinerS9 ::: pyasic.miners.antminer.bosminer.X9.S9.BOSMinerS9
handler: python handler: python
@@ -50,7 +57,7 @@
show_root_heading: false show_root_heading: false
heading_level: 4 heading_level: 4
## T9 (Stock) ## T9 (Hive)
::: pyasic.miners.antminer.hiveon.X9.T9.HiveonT9 ::: pyasic.miners.antminer.hiveon.X9.T9.HiveonT9
handler: python handler: python
options: options:

View File

@@ -49,6 +49,7 @@ details {
<li><a href="../antminer/X9#s9i-stock">S9i (Stock)</a></li> <li><a href="../antminer/X9#s9i-stock">S9i (Stock)</a></li>
<li><a href="../antminer/X9#s9j-stock">S9j (Stock)</a></li> <li><a href="../antminer/X9#s9j-stock">S9j (Stock)</a></li>
<li><a href="../antminer/X9#t9-stock">T9 (Stock)</a></li> <li><a href="../antminer/X9#t9-stock">T9 (Stock)</a></li>
<li><a href="../antminer/X9#l9-stock">L9 (Stock)</a></li>
</ul> </ul>
</details> </details>
<details> <details>
@@ -580,13 +581,14 @@ details {
<details> <details>
<summary>X9 Series:</summary> <summary>X9 Series:</summary>
<ul> <ul>
<li><a href="../antminer/X9#t9-stock">T9 (Stock)</a></li> <li><a href="../antminer/X9#t9-hive">T9 (Hive)</a></li>
</ul> </ul>
</details> </details>
<details> <details>
<summary>X19 Series:</summary> <summary>X19 Series:</summary>
<ul> <ul>
<li><a href="../antminer/X19#s19j-pro-stock">S19j Pro (Stock)</a></li> <li><a href="../antminer/X19#s19j-pro-hive">S19j Pro (Hive)</a></li>
<li><a href="../antminer/X19#s19-hive">S19 (Hive)</a></li>
</ul> </ul>
</details> </details>
</ul> </ul>

View File

@@ -1,9 +1,9 @@
from __future__ import annotations from __future__ import annotations
from enum import IntEnum from .base import AlgoHashRateUnitType
class ScryptUnit(IntEnum): class ScryptUnit(AlgoHashRateUnitType):
H = 1 H = 1
KH = int(H) * 1000 KH = int(H) * 1000
MH = int(KH) * 1000 MH = int(KH) * 1000

View File

@@ -22,6 +22,7 @@ class AntminerModels(MinerModelType):
S9j = "S9j" S9j = "S9j"
T9 = "T9" T9 = "T9"
D9 = "D9" D9 = "D9"
L9 = "L9"
Z15 = "Z15" Z15 = "Z15"
Z15Pro = "Z15 Pro" Z15Pro = "Z15 Pro"
S17 = "S17" S17 = "S17"

View File

@@ -0,0 +1,22 @@
# ------------------------------------------------------------------------------
# Copyright 2022 Upstream Data Inc -
# -
# Licensed under the Apache License, Version 2.0 (the "License"); -
# you may not use this file except in compliance with the License. -
# You may obtain a copy of the License at -
# -
# http://www.apache.org/licenses/LICENSE-2.0 -
# -
# Unless required by applicable law or agreed to in writing, software -
# distributed under the License is distributed on an "AS IS" BASIS, -
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -
# See the License for the specific language governing permissions and -
# limitations under the License. -
# ------------------------------------------------------------------------------
from pyasic.miners.backends import AntminerModern
from pyasic.miners.device.models import L9
class BMMinerL9(AntminerModern, L9):
pass

View File

@@ -16,5 +16,6 @@
from .D9 import BMMinerD9 from .D9 import BMMinerD9
from .E9 import BMMinerE9Pro from .E9 import BMMinerE9Pro
from .L9 import BMMinerL9
from .S9 import BMMinerS9, BMMinerS9i, BMMinerS9j from .S9 import BMMinerS9, BMMinerS9i, BMMinerS9j
from .T9 import BMMinerT9 from .T9 import BMMinerT9

View File

@@ -0,0 +1,27 @@
# ------------------------------------------------------------------------------
# Copyright 2022 Upstream Data Inc -
# -
# Licensed under the Apache License, Version 2.0 (the "License"); -
# you may not use this file except in compliance with the License. -
# You may obtain a copy of the License at -
# -
# http://www.apache.org/licenses/LICENSE-2.0 -
# -
# Unless required by applicable law or agreed to in writing, software -
# distributed under the License is distributed on an "AS IS" BASIS, -
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -
# See the License for the specific language governing permissions and -
# limitations under the License. -
# ------------------------------------------------------------------------------
from pyasic.device.algorithm import MinerAlgo
from pyasic.device.models import MinerModel
from pyasic.miners.device.makes import AntMinerMake
class L9(AntMinerMake):
raw_model = MinerModel.ANTMINER.L9
expected_chips = 110
expected_hashboards = 3
expected_fans = 4
algo = MinerAlgo.SCRYPT

View File

@@ -16,5 +16,6 @@
from .D9 import D9 from .D9 import D9
from .E9 import E9Pro from .E9 import E9Pro
from .L9 import L9
from .S9 import S9, S9i, S9j from .S9 import S9, S9i, S9j
from .T9 import T9 from .T9 import T9

View File

@@ -80,6 +80,7 @@ MINER_CLASSES = {
"ANTMINER S9I": BMMinerS9i, "ANTMINER S9I": BMMinerS9i,
"ANTMINER S9J": BMMinerS9j, "ANTMINER S9J": BMMinerS9j,
"ANTMINER T9": BMMinerT9, "ANTMINER T9": BMMinerT9,
"ANTMINER L9": BMMinerL9,
"ANTMINER Z15": CGMinerZ15, "ANTMINER Z15": CGMinerZ15,
"ANTMINER Z15 PRO": BMMinerZ15Pro, "ANTMINER Z15 PRO": BMMinerZ15Pro,
"ANTMINER S17": BMMinerS17, "ANTMINER S17": BMMinerS17,
@@ -427,6 +428,7 @@ MINER_CLASSES = {
None: HiveonModern, None: HiveonModern,
"ANTMINER T9": HiveonT9, "ANTMINER T9": HiveonT9,
"ANTMINER S19JPRO": HiveonS19jPro, "ANTMINER S19JPRO": HiveonS19jPro,
"ANTMINER S19": HiveonS19,
}, },
MinerTypes.LUX_OS: { MinerTypes.LUX_OS: {
None: LUXMiner, None: LUXMiner,
@@ -873,7 +875,7 @@ class MinerFactory:
if miner_type in MINER_CLASSES: if miner_type in MINER_CLASSES:
if miner_model is not None: if miner_model is not None:
warnings.warn( warnings.warn(
f"Partially supported miner found: {miner_model}, please open an issue with miner data " f"Partially supported miner found: {miner_model}, type: {miner_type}, please open an issue with miner data "
f"and this model on GitHub (https://github.com/UpstreamData/pyasic/issues)." f"and this model on GitHub (https://github.com/UpstreamData/pyasic/issues)."
) )
return MINER_CLASSES[miner_type][None](ip) return MINER_CLASSES[miner_type][None](ip)

View File

@@ -37,7 +37,7 @@ _settings = { # defaults
"default_goldshell_web_password": "123456789", "default_goldshell_web_password": "123456789",
"default_auradine_web_password": "admin", "default_auradine_web_password": "admin",
"default_epic_web_password": "letmein", "default_epic_web_password": "letmein",
"default_hive_web_password": "admin", "default_hive_web_password": "root",
"default_iceriver_web_password": "12345678", "default_iceriver_web_password": "12345678",
"default_antminer_ssh_password": "miner", "default_antminer_ssh_password": "miner",
"default_bosminer_ssh_password": "root", "default_bosminer_ssh_password": "root",

View File

@@ -1,6 +1,6 @@
[tool.poetry] [tool.poetry]
name = "pyasic" name = "pyasic"
version = "0.65.1" version = "0.65.5"
description = "A simplified and standardized interface for Bitcoin ASICs." description = "A simplified and standardized interface for Bitcoin ASICs."
authors = ["UpstreamData <brett@upstreamdata.ca>"] authors = ["UpstreamData <brett@upstreamdata.ca>"]
repository = "https://github.com/UpstreamData/pyasic" repository = "https://github.com/UpstreamData/pyasic"