A CLI-based tuner that runs multi-objective optimization on your ESPminer
Project description
⚡️ ESPminer Optimizer
Tweak your ESPminer for max hashrate, minimum watts, and thermally clean operation - automagically. Built for the modern sovereign miner, optimized for freedom.
“Don’t trust. Verify. Solo-mine. Then autotune.” - Satoshi, probably
🛠 What Is This?
A CLI-based tuner that runs multi-objective optimization on your ESPminer. It finds the best balance of:
- 🧠 Hashrate (TH/s)
- 🔌 Efficiency (J/TH)
- 🌡 Thermal Constraints
All in real-time using Optuna and your device’s REST API.
🤝 Found new best parameters with your ESPminer? Leave some sats for development support:
bc1pgen5mzfdeq4hpwv6t7etjtch5j3dda46pm555vxhn839wq3aggdscrtxws
🚀 Features
- 🎛 Optimizes frequency & core voltage
- 🧪 Runs real-time stats collection from the ESPminer
- 🧯 Aborts trials if temps go too high
- 📈 Logs every trial to a CSV
- 📚 Saves study results to a local SQLite DB
- 🌈 Uses
richfor pretty CLI output
☠️ Warnings
- This directly modifies your ESPminer settings and restarts the miner every trial.
- Know your thermal + voltage limits.
To enhance your ESPminer optimization workflow, consider integrating the Optuna Dashboard for real-time visualization and analysis of your optimization runs. This tool provides interactive graphs and detailed trial data, allowing you to monitor the optimization process effectively.
Install
Dependencies:
- Python 3
- A ESPminer running firmware with the
/api/systemendpoints
Directly install from PyPI espminer-optim via pip:
pip install espminer-optim
⚙️ Development
Clone the repository and install it in editable mode
pip install -e .
🧪 Running the Optimizer
Run the executable after install:
espminer-optim
or run directly via Python runtime python optimize.py if you have cloned the source.
You’ll be prompted for:
- ESPminer IP address
- Frequency & voltage range
- Trial count & duration
- Temperature limits
Then the tuner gets to work - configuring, restarting, collecting stats, and evolving toward greatness. 🙌
Each trial logs:
- Frequency (MHz)
- Core Voltage (mV)
- Avg Hashrate (TH/s)
- Avg Power (W)
- Efficiency (J/TH)
- Objective Score
🛠️ Setting Up Optuna Dashboard
-
Install Optuna Dashboard:
pip install optuna-dashboard
-
Run Your Optimization Script
-
Launch the Dashboard:
In a separate terminal, start the dashboard:
optuna-dashboard sqlite:///espminer-optim-db.sqlite3This will start a local server, typically accessible at
http://localhost:8080/.
📊 Features of Optuna Dashboard
-
Interactive Visualization: Monitor optimization history, parameter importances, and trial details through dynamic graph.
-
Real-Time Updates: Observe the optimization progress as new trials are complete.
-
Trial Management: Filter, sort, and inspect individual trials to gain insights into the optimization proces.
For more information and advanced usage, refer to Optuna Dashboard documentation. By incorporating the Optuna Dashboard into your workflow, you can gain deeper insights into your optimization process, leading to more efficient and effective tuning of your ESPminer device.
⚡️⛏️ Built for Bitaxe
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file espminer_optim-0.0.9.tar.gz.
File metadata
- Download URL: espminer_optim-0.0.9.tar.gz
- Upload date:
- Size: 7.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9853d9501f485df90288ced7c10646ad0a0c00433ab106c40893007e7001f8bc
|
|
| MD5 |
e1f2c7828eec947ebbbc6744774072b4
|
|
| BLAKE2b-256 |
aa241dd3db5d4cf328bc37bfa78b9a93e806da1e4bde8203e40e213da0572471
|
File details
Details for the file espminer_optim-0.0.9-py3-none-any.whl.
File metadata
- Download URL: espminer_optim-0.0.9-py3-none-any.whl
- Upload date:
- Size: 8.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
eb3d785e15c3e46ee007acfcbd94511ef69854b7ce5d90793b811ed5d9c583e0
|
|
| MD5 |
9df8a6011bd0276bd4a01467ed86fbc7
|
|
| BLAKE2b-256 |
1d5c3d1eda6e784875269e97809c8a31e8d923b66f115fd3898f53a9befa8ae1
|