feature: add mining mode preset option to config

This commit is contained in:
Upstream Data
2024-12-04 08:20:51 -07:00
committed by Brett Rowan
parent 97c20dae0a
commit 7f74b083d3
2 changed files with 25 additions and 0 deletions

View File

@@ -36,6 +36,7 @@ from pyasic.web.braiins_os.proto.braiins.bos.v1 import (
)
from .algo import TunerAlgo, TunerAlgoType
from .presets import MiningPreset
from .scaling import ScalingConfig
@@ -344,6 +345,14 @@ class MiningModeHashrateTune(MinerConfigValue):
return {"autotunerset": {"enabled": True}}
class MiningModePreset(MinerConfigValue):
active_preset: MiningPreset
available_presets: list[MiningPreset] = field(default_factory=list)
def as_vnish(self) -> dict:
return {"overclock": {**self.active_preset.as_vnish()}}
class ManualBoardSettings(MinerConfigValue):
freq: float
volt: float
@@ -444,6 +453,7 @@ class MiningModeConfig(MinerConfigOption):
sleep = MiningModeSleep
power_tuning = MiningModePowerTune
hashrate_tuning = MiningModeHashrateTune
preset = MiningModePreset
manual = MiningModeManual
@classmethod
@@ -673,5 +683,6 @@ MiningMode = TypeVar(
MiningModeManual,
MiningModePowerTune,
MiningModeHashrateTune,
MiningModePreset,
],
)