feature: add support for Vnish S19 Pro Hydro.
This commit is contained in:
@@ -24,6 +24,7 @@ from pyasic.miners.device.models import (
|
|||||||
S19jPro,
|
S19jPro,
|
||||||
S19NoPIC,
|
S19NoPIC,
|
||||||
S19Pro,
|
S19Pro,
|
||||||
|
S19ProHydro,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@@ -57,3 +58,7 @@ class VNishS19j(VNish, S19j):
|
|||||||
|
|
||||||
class VNishS19jPro(VNish, S19jPro):
|
class VNishS19jPro(VNish, S19jPro):
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
|
class VNishS19ProHydro(VNish, S19ProHydro):
|
||||||
|
pass
|
||||||
|
|||||||
@@ -22,6 +22,7 @@ from .S19 import (
|
|||||||
VNishS19jPro,
|
VNishS19jPro,
|
||||||
VNishS19NoPIC,
|
VNishS19NoPIC,
|
||||||
VNishS19Pro,
|
VNishS19Pro,
|
||||||
|
VNishS19ProHydro,
|
||||||
VNishS19XP,
|
VNishS19XP,
|
||||||
)
|
)
|
||||||
from .T19 import VNishT19
|
from .T19 import VNishT19
|
||||||
|
|||||||
@@ -17,11 +17,11 @@ from typing import List, Optional
|
|||||||
|
|
||||||
from pyasic.config import MinerConfig
|
from pyasic.config import MinerConfig
|
||||||
from pyasic.data import AlgoHashRate, Fan, HashBoard, HashUnit
|
from pyasic.data import AlgoHashRate, Fan, HashBoard, HashUnit
|
||||||
|
from pyasic.data.pools import PoolMetrics, PoolUrl
|
||||||
from pyasic.errors import APIError
|
from pyasic.errors import APIError
|
||||||
from pyasic.miners.data import DataFunction, DataLocations, DataOptions, RPCAPICommand
|
from pyasic.miners.data import DataFunction, DataLocations, DataOptions, RPCAPICommand
|
||||||
from pyasic.miners.device.firmware import LuxOSFirmware
|
from pyasic.miners.device.firmware import LuxOSFirmware
|
||||||
from pyasic.rpc.luxminer import LUXMinerRPCAPI
|
from pyasic.rpc.luxminer import LUXMinerRPCAPI
|
||||||
from pyasic.data.pools import PoolMetrics, PoolUrl
|
|
||||||
|
|
||||||
LUXMINER_DATA_LOC = DataLocations(
|
LUXMINER_DATA_LOC = DataLocations(
|
||||||
**{
|
**{
|
||||||
@@ -53,7 +53,7 @@ LUXMINER_DATA_LOC = DataLocations(
|
|||||||
"_get_uptime", [RPCAPICommand("rpc_stats", "stats")]
|
"_get_uptime", [RPCAPICommand("rpc_stats", "stats")]
|
||||||
),
|
),
|
||||||
str(DataOptions.POOLS): DataFunction(
|
str(DataOptions.POOLS): DataFunction(
|
||||||
"get_pools", [RPCAPICommand("rpc_pools", "pools")]
|
"_get_pools", [RPCAPICommand("rpc_pools", "pools")]
|
||||||
),
|
),
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -386,6 +386,7 @@ MINER_CLASSES = {
|
|||||||
"ANTMINER S19J PRO": VNishS19jPro,
|
"ANTMINER S19J PRO": VNishS19jPro,
|
||||||
"ANTMINER S19A": VNishS19a,
|
"ANTMINER S19A": VNishS19a,
|
||||||
"ANTMINER S19A PRO": VNishS19aPro,
|
"ANTMINER S19A PRO": VNishS19aPro,
|
||||||
|
"ANTMINER S19 PRO HYD.": VNishS19ProHydro,
|
||||||
"ANTMINER T19": VNishT19,
|
"ANTMINER T19": VNishT19,
|
||||||
"ANTMINER S21": VNishS21,
|
"ANTMINER S21": VNishS21,
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -15,14 +15,13 @@
|
|||||||
# ------------------------------------------------------------------------------
|
# ------------------------------------------------------------------------------
|
||||||
from __future__ import annotations
|
from __future__ import annotations
|
||||||
|
|
||||||
|
import hashlib
|
||||||
import json
|
import json
|
||||||
|
from pathlib import Path
|
||||||
from typing import Any
|
from typing import Any
|
||||||
|
|
||||||
import httpx
|
|
||||||
import aiofiles
|
import aiofiles
|
||||||
import aiohttp
|
import httpx
|
||||||
import hashlib
|
|
||||||
from pathlib import Path
|
|
||||||
|
|
||||||
from pyasic import settings
|
from pyasic import settings
|
||||||
from pyasic.errors import APIError
|
from pyasic.errors import APIError
|
||||||
@@ -52,7 +51,7 @@ class ePICWebAPI(BaseWebAPI):
|
|||||||
try:
|
try:
|
||||||
if parameters.get("form") is not None:
|
if parameters.get("form") is not None:
|
||||||
form_data = parameters["form"]
|
form_data = parameters["form"]
|
||||||
form_data.add_field('password', self.pwd)
|
form_data.add_field("password", self.pwd)
|
||||||
response = await client.post(
|
response = await client.post(
|
||||||
f"http://{self.ip}:{self.port}/{command}",
|
f"http://{self.ip}:{self.port}/{command}",
|
||||||
timeout=5,
|
timeout=5,
|
||||||
@@ -161,8 +160,8 @@ class ePICWebAPI(BaseWebAPI):
|
|||||||
|
|
||||||
# prepare the multipart/form-data request
|
# prepare the multipart/form-data request
|
||||||
form_data = aiohttp.FormData()
|
form_data = aiohttp.FormData()
|
||||||
form_data.add_field('checksum', checksum)
|
form_data.add_field("checksum", checksum)
|
||||||
form_data.add_field('keepsettings', str(keep_settings).lower())
|
form_data.add_field("keepsettings", str(keep_settings).lower())
|
||||||
form_data.add_field('update.zip', open(file, 'rb'), filename='update.zip')
|
form_data.add_field("update.zip", open(file, "rb"), filename="update.zip")
|
||||||
|
|
||||||
await self.send_command("systemupdate", form=form_data)
|
await self.send_command("systemupdate", form=form_data)
|
||||||
Reference in New Issue
Block a user