Author

Topic: Gridseed support oder cgminer watchdog für Linux (Read 1210 times)

legendary
Activity: 1045
Merit: 1157
no degradation
Schade, das gab in der Tat keine brauchbare Information/einen Trigger. Embarrassed

Dann... Bleibt wohl nur das erste Script als Option, welches überprüft, ob die Rejected Shares (beim Ausführen des Scripts) über x% liegen.

Oder man startet den cgminer gleich alle 60 Minuten neu? Wäre eine saubere Option, wenn der Fehler meist nach mehr als einer Stunde Betrieb auftritt.
full member
Activity: 210
Merit: 100
Das Problem ist gerade wieder aufgetreten. Beim ersten Gridseed nach ca. 1 Stunde Dualbetrieb.
Gleiches Symptom (HW Error, anschließend Duplicates). Habe danach das Diagnose-Script gleich ausgeführt
Leider, so fürchte ich, bringt der Output des Scripts kein Licht ins Dunkel (sofern ich das richtig lese). Schade, dabei sah es erst so vielversprechend aus, was dort alles so geliefert werden kann.

Code:
root@raspberrypi:~# /usr/bin/php5 /home/pi/cgdiag.php
Array
(
    [STATUS] => Array
        (
            [0] => Array
                (
                    [STATUS] => S
                    [When] => 1395328739
                    [Code] => 60
                    [Msg] => Notify
                    [Description] => cgminer3.8.5
                )

        )

    [NOTIFY] => Array
        (
            [0] => Array
                (
                    [NOTIFY] => 0
                    [Name] => GSD
                    [ID] => 0
                    [LastWell] => 1395328739
                    [LastNotWell] => 0
                    [ReasonNotWell] => None
                    [*ThreadFailInit] => 0
                    [*ThreadZeroHash] => 0
                    [*ThreadFailQueue] => 0
                    [*DevSickIdle60s] => 0
                    [*DevDeadIdle600s] => 0
                    [*DevNostart] => 0
                    [*DevOverHeat] => 0
                    [*DevThermalCutoff] => 0
                    [*DevCommsError] => 0
                    [*DevThrottle] => 0
                )

            [1] => Array
                (
                    [NOTIFY] => 1
                    [Name] => GSD
                    [ID] => 1
                    [LastWell] => 1395328739
                    [LastNotWell] => 0
                    [ReasonNotWell] => None
                    [*ThreadFailInit] => 0
                    [*ThreadZeroHash] => 0
                    [*ThreadFailQueue] => 0
                    [*DevSickIdle60s] => 0
                    [*DevDeadIdle600s] => 0
                    [*DevNostart] => 0
                    [*DevOverHeat] => 0
                    [*DevThermalCutoff] => 0
                    [*DevCommsError] => 0
                    [*DevThrottle] => 0
                )

            [2] => Array
                (
                    [NOTIFY] => 2
                    [Name] => GSD
                    [ID] => 2
                    [LastWell] => 1395328739
                    [LastNotWell] => 0
                    [ReasonNotWell] => None
                    [*ThreadFailInit] => 0
                    [*ThreadZeroHash] => 0
                    [*ThreadFailQueue] => 0
                    [*DevSickIdle60s] => 0
                    [*DevDeadIdle600s] => 0
                    [*DevNostart] => 0
                    [*DevOverHeat] => 0
                    [*DevThermalCutoff] => 0
                    [*DevCommsError] => 0
                    [*DevThrottle] => 0
                )

        )

    [id] => 1
)

Alles auf 0 Sad
[/code]
legendary
Activity: 1045
Merit: 1157
no degradation
Gerne, habe im Moment nichts anderes zum Herumspielen. Also ich kann Stunden vor dem cgminer-Screen sitzen und darauf starren, das ist sehr entspannend. Wink Nein, habe mich da wohl missverständlich ausgedrückt. Wenn der Miner irgendwann wieder Duplicate Shares auswirft, einfach danach (das kann auch Stunden/Tage später sein, hauptsache die selbe cgminer-Session läuft noch) das zweite Script ausführen. Sollte der Miner einen Hilfeschrei an cgminer senden (z.B. "Mir ist zu warm!"), taucht dieser in den Notify-Werten auf und könnten einen Hinweis auf das eigentliche Problem geben. Oder zumindest ein guter Trigger für 'nen cgminer-Neustart sein. Smiley
full member
Activity: 210
Merit: 100
So, hab das Hashra-Image wieder runter geschmissen und bin wieder beim Wheezy mit dem cpuminer.
Heute Nacht hat sich der cgminer von denen einfach mal für 2 Stunden verabschiedet und ist danach nur mit halber Kraft wieder zurück gekommen. Warum auch immer. Und ich habe nur Scrypt gemint. Irgendwie steht der cgminer mit meinen Gridseeds auf Kriegsfuß. Das hatte ich beim cpuminer bisher nicht...
Vielleicht probiere ich es demnächst nochmal mit dem Scripta-Image. Die benutzen auch den cgminer für´s Scryptmining.

Das klingt interessant. Kannst Du evtl. nachdem der Fehler erneut auftritt das folgende Script ausführen und den Output zur Verfügung stellen?

Ja, mache ich sehr gerne. Leider komme ich voraussichtlich erst morgen Abend dazu. Ich hoffe auch, dass das nicht nur Zufall war. dass ich das gerade mitbekommen habe.
Die ganze Zeit vorm cgminer zu hocken und auf eine bestimmte Meldung zu warten kann ganz schön eintönig sein Wink
Aber ich werd´s auf jeden Fall versuchen. Vielleicht kommen wir dem ganzen ja auf die Schliche. Auch an dieser Stelle nochmal vielen Dank, dass Du Dich dem Problem annimmst!  Cheesy
legendary
Activity: 1045
Merit: 1157
no degradation
@Dunkelheit667
Dein Script habe ich leider nicht zum Laufen bewegen können. Habe es als root ausgeführt.
Fehlermeldung:

Code:
PHP Notice:  Undefined variable: summary in /home/pi/cgwatch.php on line 37
Immer dieser Pfusch, wenn man die Hardware nicht da hat und auf blauen Dunst etwas zusammenstrickt. Versuch's mal damit: Wink

Code:

/// Optionen

$host "127.0.0.1"# Hostname oder IP
$port 4028# API Port
$RejectedTarget 33# max. erlaubte Rejected Shares in Prozent

/// cgminer API

function cgminer($command$parameter$host$port) {

$command = array (
"command"  => $command,
"parameter" => $parameter
);

$jsonCmd json_encode($command);
$client stream_socket_client("tcp://$host:$port"$errno$errorMessage);

if ($client === false) {
throw new UnexpectedValueException("Failed to connect: $errorMessage");
}
fwrite($client$jsonCmd);
$response stream_get_contents($client);
fclose($client);
$response preg_replace("/[^[:alnum:][:punct:]]/",""$response);
$response json_decode($responsetrue);
return $response;

}

/// Check

$summary cgminer ("summary"""$host$port);

if (
$summary['SUMMARY'][0]['Elapsed'] > 600) {
 
$devs cgminer ("devs"""$host$port);
 
$MaxRejected 0;
  foreach (
$devs['DEVS'] as $v1) {
   
$Diff1Work $v1['Diff1Work'];
   
$DifficultyRejected $v1['DifficultyRejected'];
   
$PercentRejected $DifficultyRejected $Diff1Work 100;
   if (
$MaxRejected $PercentRejected)
    
$MaxRejected $PercentRejected;
  }
 if (
$MaxRejected $RejectedTarget)
  
$restart cgminer ("restart"""$host$port);
}
?>



...
Ich habe das Treiben im cgminer-Fenster dann ne Weile beobachtet und konnte plötzlich folgendes sehen:

Code:
[2014-03-19 21:04:47] System reseting
 [2014-03-19 21:04:48] HW error, do hardware reset

Und genau ab diesem Zeitpunkt fing auch der zweite Gridseed an, die Duplicates zu generieren!
Keine Ahnung, was da falsch läuft...

Das klingt interessant. Kannst Du evtl. nachdem der Fehler erneut auftritt das folgende Script ausführen und den Output zur Verfügung stellen?

Code:

/// Optionen

$host "127.0.0.1"# Hostname oder IP
$port 4028# API Port

/// cgminer API

function cgminer($command$parameter$host$port) {

$command = array (
"command"  => $command,
"parameter" => $parameter
);

$jsonCmd json_encode($command);
$client stream_socket_client("tcp://$host:$port"$errno$errorMessage);

if ($client === false) {
throw new UnexpectedValueException("Failed to connect: $errorMessage");
}
fwrite($client$jsonCmd);
$response stream_get_contents($client);
fclose($client);
$response preg_replace("/[^[:alnum:][:punct:]]/",""$response);
$response json_decode($responsetrue);
return $response;

}

/// Check

$notify cgminer ("notify"""$host$port);

echo 
'
';
print_r($notify);
echo 
'
'
;
?>
full member
Activity: 210
Merit: 100
hast dir das image angeschaut ? -> wolltes es rauf packen, aber 16gb sd hatte ich nicht zur hand...

Ja, läuft gerade. Das Ding benutzt auch cgminer.
Viel einstellen kann man da nicht. Dualmodus ist auch noch nicht implementiert.  Habe die Miner jetzt erstmal auf Scrypt laufen.
Ich werde die Hashraten jetzt erstmal ne Weile beobachten. "Controla" zeigt bei allen Minern 340 KH/s (bei 800 MHz) und in dem kleinen Miner-Outputfenster steht auch durchschnittlich 1,015 MH/s. Und wenn ich auf die Pool-"Uhr" schaue, scheint das auch hin zu kommen.
Das hatte ich allerdings bei den cpuminern mit dem Wheezy-Image auch.
Bin echt gespannt, wie das aussieht, wenn die ihr angekündigtes Update für den Dualmodus raus bringen. Ob da auch die Miner irgendwann im SHA/Dualmodus aussteigen?
legendary
Activity: 966
Merit: 1000
hast dir das image angeschaut ? -> wolltes es rauf packen, aber 16gb sd hatte ich nicht zur hand...
full member
Activity: 210
Merit: 100
so, weiter im Text...

Also, zu früh gefreut. Nach 2 Stunden ging das Theater mit den Duplicates wieder los.
Erst bei einem Gridseed. Da dachte ich, dass der Miner vielleicht einen weg hat. Ich habe das Treiben im cgminer-Fenster dann ne Weile beobachtet und konnte plötzlich folgendes sehen:

Code:
[2014-03-19 21:04:47] System reseting
 [2014-03-19 21:04:48] HW error, do hardware reset

Und genau ab diesem Zeitpunkt fing auch der zweite Gridseed an, die Duplicates zu generieren!
Keine Ahnung, was da falsch läuft...

@Dunkelheit667
Dein Script habe ich leider nicht zum Laufen bewegen können. Habe es als root ausgeführt.
Fehlermeldung:

Code:
PHP Notice:  Undefined variable: summary in /home/pi/cgwatch.php on line 37

Als nächstes werde ich mir mal das Hashra-Image anschauen. Leider ist ja noch kein Dualmining eingebaut. Aber die haben ja angekündigt, dass die da dran arbeiten.

Danke und Gruß
full member
Activity: 210
Merit: 100
Vielen Dank für den Tipp, Wolke! Ich schaue mir das Image mal an. Klingt ganz interessant. Leider noch kein Dualmodus eingebaut.
Ganz besonderen Dank an Dunkelheit667! Dass Du mir mal eben ein Script schreibst, freut mich sehr  Cheesy

Meine Testreihe geht weiter und ich habe so langsam eine Vermutung, was das Problem gewesen sein könnte: Energieversorgung... Möglicherweise war das Netzteil nicht ganz in Ordnung.

Ich habe ja zwei zusätzliche Gridseeds angeschlossen. Und als ich damit anfing Scrypt zu minen, schaltete sich das Netzteil nach etwa 20 Minuten einfach ab.
Ich habe also das Netzteil getauscht. Damit konnte ich problemlos etwa 24 Stunden Scrypt minen ohne irgendwelche besonderen Vorkommnisse.
Dann wollte ich wieder den Dualmodus ausprobieren. Sobald der cgminer startet, schaltete sich auch dieses Netzteil ab.
Wie gut, dass ich so viele rumfliegen hab. Hab jetzt mein größtes genommen.
Damit laufen jetzt alle drei Gridseeds bei 800 MHz im Dualmodus seit einer halben Stunde problemlos. Ich werde berichten, ob sich das auch weiterhin der Fall sein wird.

Das erste Netzteil war ein ATX Enermax EES350AWT
350 Watt
17 Ampere je 12V-Schiene
Ergebnis:
Schafft einen Gridseed im Dualmodus mit Problemen (etwa 60 Watt, 5 Ampere).
Schafft drei Gridseeds im Scryptmodus nicht (etwa 30 Watt, 2,5 Ampere)
Ich denke, das Teil hat ne Macke

Das zweite Netzteil war ein ATX FSP350-60APN
350 Watt
16 Ampere je 12V-Schiene
Ergebnis:
Schafft drei Gridseeds im Scryptmodus problemlos (etwa 30 Watt, 2,5 Ampere)
Schafft drei Gridseeds im SHA/Dual-Modus nicht (etwa 180 Watt, 15 Ampere)
Warum es - obwohl 16 Ampere kein Problem sein sollten - bei 15 Ampere schlapp macht, weiß ich nicht.

Das dritte ist nun ein ATX Seasonic (kann grad die Modellnummer nicht nachgucken... Ist im Betrieb und liegt auf dem Etikett Wink)
600 Watt
18 Ampere je 12V-Schiene
Ergebnis:
Steht noch aus... Seit etwa 30 Minuten problemloser Dualmodus (etwa 180 Watt, 15 Ampere). Hoffe, das bleibt so.

Eine Erklärung, warum bei den Problemen anfangs das Neustarten des cgminers geholfen hat, habe ich allerdings damit noch nicht.
Wenn die Duplicates oder das Aussetzen der Shares jetzt wieder nach ein paar Stunden eintreten sollten, kommt das PHP-Script ins Spiel.

Viele Grüße
legendary
Activity: 966
Merit: 1000
habe soeben folgenden tipp bekommen -> es gibt nun was direkt vom hersteller:
http://hashra.com/support/
legendary
Activity: 1045
Merit: 1157
no degradation
Okay, wenn du PHP auf dem rpi laufen hast... Sollte folgendes Script helfen. Es startet den cgminer neu, sobald ein (beliebiger) Miner eine bestimmt Prozentzahl Rejected Shares überschritten hat (z.B. 33%). Die Überprüfung findet statt, sobald cgminer mindestens 10 Minuten lief. Hostname, Port und gewünschte max. Rejected Shares ggf. einfach anpassen:

Code:
/// useless code

Ich habe leider kein Wheezy. Unter Archlinux plaziert man das Script z.B. unter /srv/http/check.php und startet es einfach alle fünf Minuten manuell im Browser Cheesy oder via Cronjob:

Code:
*/5 * * * * /usr/bin/php /srv/http/check.php 2>&1
full member
Activity: 210
Merit: 100
...
Irgendwann fängt der Miner plötzlich an haufenweise duplicate Shares an den Pool zu melden. Das könnte mir ja theoretisch egal sein, da ja im Prinzip jeder gefundene Hash einfach nur doppelt gemeldet wird. Dem ist aber scheinbar nicht so. Wenn das mit den Duplikaten los geht, verringert sich nämlich auch die Rate der akzeptierten Shares enorm.
...
Mal so rein aus Interesse, wo werden die Duplicate Shares angezeigt? In der API von cgminer finde ich die irgendwie nicht. Huh

Oder werden sie als Rejected/Hardware gezählt?

Hm, wie die in der API dargestellt werden, weiß ich leider nicht.
Die werden auf jeden Fall zu den rejected shares gezählt. Im cgminer-terminal steht erst
accepted
und direkt danach
rejected (duplicate)

edit:

hier auf dem screenshot (ist nicht von mir und auch für windows, sieht aber genau so auch unter linux aus:

legendary
Activity: 1045
Merit: 1157
no degradation
...
Irgendwann fängt der Miner plötzlich an haufenweise duplicate Shares an den Pool zu melden. Das könnte mir ja theoretisch egal sein, da ja im Prinzip jeder gefundene Hash einfach nur doppelt gemeldet wird. Dem ist aber scheinbar nicht so. Wenn das mit den Duplikaten los geht, verringert sich nämlich auch die Rate der akzeptierten Shares enorm.
...
Mal so rein aus Interesse, wo werden die Duplicate Shares angezeigt? In der API von cgminer finde ich die irgendwie nicht. Huh

Oder werden sie als Rejected/Hardware gezählt?
full member
Activity: 210
Merit: 100
ah, besten dank das habe ich eingefügt....

konntest du dein problem schon lösen ?

ich habe bisher das problem das der pi den miner nicht im autostart hat -> muss den via ssh laufen lassen... grml...
(linux is nicht meine heimat)

Du solltest screen benutzen. Damit kannst Du das SSH-Fenster nach dem Start des Miners schließen und später einfach wieder aufrufen.
Einfach "screen" eintippen und es öffnet sich eine neue Konsole. Dort dann den Miner starten und Du kannst das SSH-Fenster schließen.
Wenn Du später das Terminal wieder öffnest, kannst Du Dich mit "screen -r" wieder mit dem ursprünglichen Terminal verbinden.

Mein Problem konnte ich leider noch nicht lösen.
Jedes mal wenn ich was ändere, muss ich ja erstmal wieder ein paar Stunden warten.

Habe zum Testen mal den Dual-Modus sein lassen und nur Scrypt gemint (nur mit dem cpuminer). Das ging auch 24 Stunden gut. Dann bin ich rauf auf 800 MHz und nach ein paar Stunden fing er urplötzlich auch mit wahnsinnig vielen Duplicates an. Das hat sich aber nach einer Stunde irgendwie von selbst erledigt und seit dem (bis jetzt ca. 9 Stunden) läuft´s wieder ohne Probleme.
Habe das heute Morgen im Poolchart gesehen, dass heute Nacht irgendwann die Duplicates anfingen und nach einer Stunde wieder genauso urplötzlich verschwanden, wie sie aufgetaucht sind.

Habe gerade eine weitere Lieferung Gridseeds bekommen und werde mal sehen, wie´s damit läuft. Hatte bis jetzt nur den einen.
legendary
Activity: 966
Merit: 1000
ah, besten dank das habe ich eingefügt....

konntest du dein problem schon lösen ?

ich habe bisher das problem das der pi den miner nicht im autostart hat -> muss den via ssh laufen lassen... grml...
(linux is nicht meine heimat)
full member
Activity: 210
Merit: 100
habe das gleiche problem -> bäm und der pi ist nicht mehr erreichbar -> strom weg strom ran -> alles wieder ok... mal läuft er 48 stunden ohne problem dann mal nu 2 stunden... grml...

Das trifft mein Problem nicht ganz, aber das gleiche hatte ich auch.
Hast Du den "Stability Fix" eingerichtet? Danach lief der Pi bei mir ohne Einfrieren durch, aber das Problem mit dem cgminer bleibt.

Quote
Code:
sudo nano /boot/cmdline.txt

Add the following code at the end of the first line (on the same line as the other text, DO NOT add new line!)

Code:
slub_debug=FP

Reboot danach nicht vergessen Wink
legendary
Activity: 966
Merit: 1000
habe das gleiche problem -> bäm und der pi ist nicht mehr erreichbar -> strom weg strom ran -> alles wieder ok... mal läuft er 48 stunden ohne problem dann mal nu 2 stunden... grml...
full member
Activity: 210
Merit: 100
Hi!

Kurze Vorgeschichte: Ich benutze einen Raspberry Pi zum Minen mit den gc3355.
Zur Inbetriebnahme bin ich nach dem Guide von Unicornhasher hier im Forum vorgegangen
https://bitcointalksearch.org/topic/guide-gridseed-gc3355-5-chip-setuppowerwindowslinuxrpi-by-unicornhasher-494625
Ich benutze also das Wheezy Image mit cgminer 3.8.5 und den modifizierten cpuminer. Ich möchte gerne im Dualmodus minen.

Das funktioniert soweit auch ganz gut und ich bin mit den Hashraten ganz zufrieden. ABER:
Nach ein paar Stunden fängt die Kiste irgendwann an, rum zu zicken. Ich sage bewusst "die Kiste", da ich nicht weiß, was nun die Probleme verursacht. Die Software oder die Hardware?
Folgende Probleme konnte ich beobachten (dabei gilt immer "entweder passiert das eine, oder das andere").
1. Viele Duplikate
Irgendwann fängt der Miner plötzlich an haufenweise duplicate Shares an den Pool zu melden. Das könnte mir ja theoretisch egal sein, da ja im Prinzip jeder gefundene Hash einfach nur doppelt gemeldet wird. Dem ist aber scheinbar nicht so. Wenn das mit den Duplikaten los geht, verringert sich nämlich auch die Rate der akzeptierten Shares enorm.

2. Es werden überhaupt keine Shares mehr übermittelt
Der cgminer übermittelt überhaupt keine Shares mehr. Die Hashrate im Pool sinkt auf 0 und auch über den LTC Proxy werden vom cpuminer keine Shares mehr weiter gereicht (scrypt Hashrate sinkt ebenfalls auf 0).

Beide Probleme ließen sich bis jetzt durch simples neustarten des cgminers beheben. Aber eben nur für ein paar Stunden.

Edit: Ich betreibe den Gridseed mit 750 MHz. Ein Absenken der Frequenz bringt leider gar nix (außer niedrigeren Hashraten Wink).

Im englischsprachigen Support/Tuning-Thread ( https://bitcointalksearch.org/topic/guide-gridseed-5-chip-usb-blade-black-miner-supporttuning-482352 ) berichten viele von ähnlichen Problemen.
Einer schreibt sogar sinngemäß: "Gibt es hier überhaupt irgendjemanden, bei dem die Kisten 24 Stunden stabil durchlaufen?" https://bitcointalksearch.org/topic/m.5728923

Da ich bis jetzt noch keine Möglichkeit entdeckt habe, die Ursache des Problems zu beheben (oder kennt von euch jemand eine Lösung?), wollte ich wenigstens gerne die Symptome bekämpfen. Sprich: einfach den cgminer neustarten.
Da ich nun nicht die ganze Zeit daneben sitzen kann (man muss ja auch irgendwann ma pennen), suche ich nach einem Wachhund für cgminer (auch Watchdog genannt  Grin)

Folgende habe ich bereits gefunden.

- CGwatcher http://coinmyne.com/software/cgwatcher/
Macht genau das, was ich suche! Läuft aber nur unter Windows  Sad
Ich brauche genau sowas für Linux (Raspberry Pi)

- CGremote http://manotechnology.blogspot.de/p/cgremote.html
Macht auch genau das, was ich suche. Der Entwickler hat sich gedacht, dass ein CGwatcher für Linux gebraucht würde. Hat er auch recht, allerdings kostet das Tool 25$. Ich bin zwar durchaus bereit, ein gutes Tool zu honorieren, aber ich kaufe nicht die Katze im Sack. Ich muss es wenigstens vorher testen können ob es auch das tut was es soll.

- Minedown https://bitcointalksearch.org/topic/minedown-a-linux-gui-front-end-watchdog-for-cgminer-with-sms-alert-143395
Klingt ganz interessant, wird allerdings seit über einem Jahr nicht weiter entwickelt. Mein cgminer (3.8.5) wird scheinbar auch nicht unterstützt.
Außerdem brauche ich kein SMS-Alert.

- cgmon https://bitcointalksearch.org/topic/cgmon-mining-monitor-for-linux-auto-restart-reboot-sick-gpu-asic-more-353436
Möglicherweise das passende Tool für mich, aber wohl viel zu mächtig und scheint für GPU-Mining ausgelegt zu sein. Da ich mich (noch) nicht so gut mit den Eigenheiten des cgminers auskenne, weiß ich nicht so recht, welche Optionen hier wie zu setzen wären.

Im Prinzip suche ich einfach Folgendes: Ein Script/Programm, dass einfach die Ausgaben des cgminers überwacht und bei übermäßig vielen "Duplicates" und/oder wenig
/keinen übermittelten Shares in X Minuten den cgminer beendet und wieder startet.
Kennt jemand von euch zufällig ein leicht zu bedienendes Script/Programm das nichts kostet und genau das macht? Ich kann selber leider nicht programmieren...

Vielen Dank für eure Hilfe!
Jump to: