From 65408e4668a70f9c4b74c6777274033905b76ca1 Mon Sep 17 00:00:00 2001 From: Gemini Bot Date: Tue, 20 Jan 2026 10:51:13 +0000 Subject: [PATCH] Rename to NecroHash, add remote, enhance dashboard for multi-device stats --- README.md | 74 +++++++++++----------------------------- app.py | 2 +- start_gui.sh | 2 +- static/js/dashboard.js | 5 +++ templates/base.html | 4 +-- templates/dashboard.html | 13 +++++-- 6 files changed, 40 insertions(+), 60 deletions(-) diff --git a/README.md b/README.md index 1ff415d..86b2589 100644 --- a/README.md +++ b/README.md @@ -1,77 +1,43 @@ -# Gridseed WebGUI +# NecroHash -Ein modernes Web-Interface für den Betrieb von Gridseed ASIC Minern am Raspberry Pi 1 (oder neuer). Inspiriert von Klassikern wie MinePeon und Scripta, aber mit moderner Technologie und Optik. +**NecroHash** ist eine moderne, leichtgewichtige Web-Oberfläche zur Steuerung und Überwachung von Gridseed ASIC Minern. Entwickelt für den Raspberry Pi (ab Gen 1), verbindet es den Retro-Charme alter Mining-Hardware mit moderner Web-Technologie. ## Features -- **Dashboard:** Echtzeit-Überwachung von Hashrate, Hardware-Fehlern, Shares und Temperaturen. -- **Visualisierung:** Live-Graph der Hashrate und übersichtliche Status-Karten. -- **Steuerung:** Neustart des Miners und Anpassung der Konfiguration über das Web-Interface. -- **Modern UI:** Responsive Dark-Mode Design basierend auf Bootstrap 5. -- **Leichtgewichtig:** Optimiert für Raspberry Pi 1 (Python Flask Backend, kein Docker notwendig). - -## Voraussetzungen - -- Raspberry Pi (ab Version 1) -- Python 3.7+ -- Installierter `cgminer` mit Gridseed-Support (muss separat installiert werden, z.B. dmaxl's fork). +- **Multi-Device Support:** Erkennt und überwacht automatisch alle angeschlossenen Gridseed-Einheiten. +- **Echtzeit-Dashboard:** + - Aggregierte Hashrate (MH/s) + - Hardware-Fehler & Shares + - Temperatur-Überwachung pro Gerät + - Interaktiver Verlaufsgraph +- **Steuerung:** + - Pool-Konfiguration (URL, Worker, Passwort) + - Frequenz-Einstellung (Global für alle Units) + - Restart-Funktion +- **Tech Stack:** Python Flask, Bootstrap 5 (Dark Mode), Vanilla JS. ## Installation 1. Repository klonen: ```bash - git clone /opt/gridseed-gui - cd /opt/gridseed-gui + git clone https://git.klenzel.net/admin/NecroHash.git /opt/necrohash + cd /opt/necrohash ``` -2. Abhängigkeiten installieren & Starten: - Das `start_gui.sh` Skript kümmert sich um das Python Virtual Environment. +2. Starten: ```bash ./start_gui.sh ``` -3. Zugriff: - Öffnen Sie im Browser `http://:5000` +3. Browser öffnen: `http://:5000` ## Konfiguration -### cgminer Setup -Damit die GUI mit dem Miner kommunizieren kann, muss der `cgminer` mit API-Support gestartet werden. -Die GUI erwartet, dass sie die Konfigurationsdatei `cgminer.conf` lesen und schreiben kann. +NecroHash nutzt den `cgminer` API-Server. Starten Sie `cgminer` mit der Konfiguration im Projektordner: -Starten Sie Ihren Miner idealerweise so: ```bash -cgminer -c /opt/gridseed-gui/cgminer.conf +cgminer -c /opt/necrohash/cgminer.conf ``` -Stellen Sie sicher, dass in der `cgminer.conf` folgende API-Einstellungen gesetzt sind (passiert automatisch bei Nutzung der Standard-Config): -```json -"api-listen": true, -"api-allow": "W:127.0.0.1" -``` - -### Autostart -Um die GUI beim Booten zu starten, fügen Sie einen Eintrag in die `/etc/rc.local` oder erstellen Sie einen systemd Service. - -**Systemd Beispiel (`/etc/systemd/system/gridseed-gui.service`):** -```ini -[Unit] -Description=Gridseed Web GUI -After=network.target - -[Service] -User=pi -WorkingDirectory=/opt/gridseed-gui -ExecStart=/opt/gridseed-gui/start_gui.sh -Restart=always - -[Install] -WantedBy=multi-user.target -``` - -## Screenshots - -Das Interface bietet eine übersichtliche Seitenleiste und ein Dashboard im Dark-Mode. - ## Lizenz -MIT +MIT \ No newline at end of file diff --git a/app.py b/app.py index 4074325..6544d32 100644 --- a/app.py +++ b/app.py @@ -5,7 +5,7 @@ import os import subprocess app = Flask(__name__) -app.secret_key = 'gridseed_miner_control_secret' +app.secret_key = 'necrohash_miner_control_secret' miner_api = CgminerAPI() config_mgr = ConfigManager() diff --git a/start_gui.sh b/start_gui.sh index e9f6b8e..74c8e7f 100755 --- a/start_gui.sh +++ b/start_gui.sh @@ -13,7 +13,7 @@ else source venv/bin/activate fi -echo "Starting Gridseed WebGUI..." +echo "Starting NecroHash WebGUI..." # Run with gunicorn for production or python directly for dev. # Using python for simplicity as requested on Pi 1 python app.py diff --git a/static/js/dashboard.js b/static/js/dashboard.js index e416f9e..d8000fe 100644 --- a/static/js/dashboard.js +++ b/static/js/dashboard.js @@ -61,6 +61,11 @@ document.addEventListener('DOMContentLoaded', function() { document.getElementById('stat-accepted').innerText = formatNumber(summary['Accepted'] || 0); document.getElementById('stat-hw').innerText = formatNumber(summary['Hardware Errors'] || 0); } + + // Update Device Count + if (devs) { + document.getElementById('stat-devices').innerText = devs.length; + } // Update Max Temp let maxTemp = 0; diff --git a/templates/base.html b/templates/base.html index 87db0d3..93f0f1b 100644 --- a/templates/base.html +++ b/templates/base.html @@ -3,7 +3,7 @@ - Gridseed Control + NecroHash @@ -16,7 +16,7 @@
- GridseedPi + NecroHash