Nerd Miner

guten morgen zeit eine woche bekomme ich nur 0000 KH/s ich habe die mining adresse btc.zsolo.bild benutz war alles ok und auf ein mal bekomme ich nur 0000, kann mir jemand helfen.

ChatGPT hat wieder einmal geholfen. :smiley:
Der Pool sendet alle 30 Sekunden einen neuen Block Template weil Transaktionen im Mempool sich ändern können. Hätte ich mir eigentlich denken können. Wobei vom Poolbetreiber eingestellt werden kann wie oft der Block Template aktualisiert wird. Alle 30 oder 60 Sekunden sind wohl gängige Werte.

Wird auch hier erklärt:

@DaniPG

Willkommen im Forum! :slight_smile:
Es wäre hilfreich zu wissen was du bereits ausprobiert hast. Sicherlich Gerät schon neu gestartet? Reichweite zum WLAN Router überprüft? Flashspeicher mit dem ESP32 Webtool gelöscht und Firmware neu installiert? Logs versucht anzusehen?

Moin DeTec,

gibt es für mich als Leihen eine möglichkeit deine Aussage zu überprüfen? Verstehe mich nicht falsch, no front, deine Schlussfolgerungen mit 4xNullen und 8xNullen macht für mich absolut Sinn, keine Frage.
Aber selbst die Plebs von BitMaker vertreten hierzu eine andere Position. Wie hier zu sehen…
Was ist denn jetzt richtig?!

1 „Gefällt mir“

ChatGPT gibt dir übrigens Recht :smile:

Lustig, da hat jemand meinen Forumsbeitrag auf Englisch als Antwort gepostet. :smiley:
https://twitter.com/BitMaker_/status/1673948848652165127

Und da stimmt der BitMaker der Antwort auch zu. Hm? :smiley:
Ich vermute ihm ist ein Flüchtigkeitsfehler unterlaufen?

Meiner Ansicht nach bestätigt der Quellcode das auch:

Ein hash Array mit 32 Elementen. Es ist der SHA256 Hash dass ja auch aus 32 Bytes besteht. Jeder Eintrag ist somit ein Byte (8 bit) und ein Hexadezimalzeichen kann nur 4 Bit darstellen (siehe Wiki, Google usw.). Das passt eigentlich.

Natürlich ist es möglich dass ich ein Fehler gemacht habe. Muss aber ein ziemlich dummer Fehler sein dass ich einfach nicht erkenne. :smiley: Für Korrekturen wäre ich jedenfalls dankbar.

Und die Statistik spricht auch dafür. Wenn ich keine Fehler gemacht habe ist es nämlich so dass man für 2 führende Nullen im Hash im Durchschnitt 2^8 Hashes erzeugen muss und für 4 führende Nullen im Durchschnitt 2^16 und für 8 Nullen dann 2^32 Hashes usw.

Das kann man mit dem folgenden Python Script überprüfen:

import hashlib

nonce = 0
count = 0
zeros = 2
bit = zeros * 4
while True:
    if nonce == (100 * (2**bit)):
        print(count)
        break
    sha256 = hashlib.sha256()
    input_ = nonce.to_bytes(32, "big")
    sha256.update(input_)
    hash = sha256.hexdigest()
    if hash[:zeros] == zeros * "0":
        #print(hash, nonce)
        count += 1
    nonce += 1

In den ersten 25.600 Hashes (100 * 2**8) werden insgesamt 115 Hashes mit 2 führenden Nullen gefunden. Das heißt im Durchschnitt 1 Hash mit 2 Nullen pro 256 Hashes. Das verhält sich immer so bei zufälligen Eingabedaten. Also auch wenn man Bitcoin Blöcke hasht.

Diese Verteilung passt auch zu dem was ich auf meinem Nerd Miner sehe. Rund 6 Mrd. Hashes wurden erzeugt und es hat noch keinen einzigen 32 Bit Share gefunden. Nach der statistischen Wahrscheinlichkeit müssten es aber schon tausende sein. Auch passt die Zahl von rund 85.000 16 Bit Shares bei rund 6 Mrd. Hashes. Es entspricht der zu erwartenden Häufigkeit für Hashes mit 4 führenden Nullen.

1 „Gefällt mir“

Hier nun der eindeutige einfache Beweis :smiley:
Ich habe den Code von der Firmware so geändert dass über die serielle Ausgabe die gefundenen 16 Bit Shares ausgegeben werden:

// check if 16bit share
if(hash[31] !=0 || hash[30] !=0) continue;
halfshares++;

// Meine Änderung für die Ausgabe:
Serial.print("16 bit share   ");
for (size_t i = 0; i < 32; i++)
{
    Serial.printf("%02x", hash[i]);
}

Das sieht dann in der Konsole so aus:

Man sieht es in den Zeilen die mit „16 bit share“ anfangen. Da der Anfang vom Hash am Ende des Arrays liegt wird es umgekehrt angezeigt. Die führenden Nullen sind am Ende des Hashes zu sehen.

Damit steht fest, ein 16 Bit Share ist ein Hash mit 4 führenden Nullen! :nerd_face:

Auf einen 32 Bit Share wollte ich jetzt nicht warten, weil das Tage dauern kann. Aber die Logik ist denke ich klar.

1 „Gefällt mir“

Hallo,
ich bräuchte Hilfe beim Nerdminer einrichten.
Nachdem die flashadressen eingegeben sind und man auf programmieren drückt,
steht nun nur „Leaving“ und es geht nicht mehr weiter.
Hat jemand dasselbe Problem schon gehabt ?

Vielen Dank :pray:t2:

Könntest du ein Screenshot davon machen? Auch wo man die Felder für die Flash Adressen sieht. Viele vergessen da eine Null bei 0x10000 oder das e bei 0xe000.

Hallo leider stecke ich auch an dieser Stelle fest😔

Er nimmt die 115200 nicht.

Dann gibt es das Problem öfters dann gibt es auch eine Lösung :slightly_smiling_face:

1 „Gefällt mir“

Und bei der Baudrate hast du 115200 gewählt oder?
Hast du mal mit dem löschen des Flash Speichers probiert? Also verbinden und dann auf den Flash löschen Button klicken. Dann erneut verbinden und versuchen die Firmware zu installieren.

Als Alternative gibt es auch eine Windows Software zum flashen der firmware:

Das ist das selbe Tool wie im NerdMiner Repo:

Jemand hat ein Screenshot davon gemacht:

1 „Gefällt mir“

Der Tool von Espressif hat funktioniert.
Läuft nun auch bei uns. Lieben Dank :hugs:

1 „Gefällt mir“

Ich habe das Problem („Leaving“) im ESP Tool jetzt auch. Bei der ersten Einrichtung funktionierte alles problemlos und jetzt, da ich die Beta ausprobieren wollte, klappt es nicht.
Habe den Speicher gelöscht und auch mit der Baudrate rumgespielt, aber er nimmt es nicht.
Windows habe ich gerade nicht zur Hand… :frowning:

Ergänzung: Bei der Auswahl des Gerätes in den seriellen Verbindungen verschwindet der S3 auch immer wieder (regelmäßig). Dann ploppt er wieder auf und verschwindet…habe schon Kabel und andere Buchsen versucht. Da es aber einige Personen betrifft, gehe ich nicht von einem Verbindungsfehler aus. Entweder habe ich das Ding geschrottet, oder etwas anderes…

Es gibt auch die Möglichkeit mit dem esptool über die Konsole die Firmware zu flashen. Das Tool wird von Espressif selbst gepflegt. Sollte auf Windows, Mac und Linux funktionieren. Es müssen Python und Pip installiert sein. Ich selbst habe es noch nicht ausprobiert.

Dokumentation:
https://docs.espressif.com/projects/esptool/en/latest/esp32s3/esptool/flashing-firmware.html

Wie hier beschrieben installiert man den esptool über pip:

pip install esptool

Und dann in den NerdMiner Github Repo Ordner navigieren und den esptool.py Script mit einer Reihe von Argumenten ausführen:

python esptool.py -p /dev/ttyACM0 -b 115200 --before default_reset --after hard_reset --chip esp32-s3 write_flash --flash_mode dio --flash_size detect --flash_freq 40m 0x0000 bin/0x0000_bootloader.bin 0x10000 bin/0x10000_v1.5.1_beta_firmware.bin 0x8000 bin/0x8000_partitions.bin 0xe000 bin/0xe000_boot_app0.bin

Das wirkt vielleicht abschreckend aber wenn man sich das anschaut sind das überwiegend die üblichen Angaben die man schon kennt.

-p /dev/ttyACM0 -b 115200
Die Angabe für den Port und die Bautrate.

0x0000 bin/0x0000_bootloader.bin
Die Flash Adresse und der Dateipfad zum 0x0000_bootloader.bin Datei.

Die anderen Argumente sind andere Einstellungen die man so übernehmen kann.

1 „Gefällt mir“

Irgendwie gebe ich langsam die Hoffnung auf: Habe jetzt ein Windows Rechner gefunden. Auch da wird nicht geschrieben. Es wundert mich, dass der S3 immer nur kurz erkannt, dann ausgeworfen, dann wieder erkannt wird. Habe unter Windows auch das ESP Tool versucht (Windows Programm). Auch hier geht irgendwie nicht viel. Immer Error an COM3. Grüne LED leuchtet und rote LED blinkt unglaublich schnell (sieht fast aus, als würde sie durchgehend leuchten, aber sie flackert super schnell). Soll das so?

Hallo Bert,

versuche mal bitte folgendes. Ausgehend vom USB Anschluss rechts, halte den oberen der beiden Knöpfe gedrückt, schließe das Kabel an und warte ca. 5-10 sek. bevor du den Knopf loslässt. Danach sollte der S3 neu starten, sich nicht mehr im Sekundentakt an und abmelden und sich auch wieder flashen lassen. Evtl. auch noch mal das USB Kabel an und abstecken.
Da mit dem Webseiten Tool offenbar irgendwas sackig ist, verwende besser das Offline Tool von Espressif.

Link zum Tool

Grüße

Hallo Zusammen

Ich lese hier schon länger den Beitrag zu den NerdMinern mit und habe selbst 5 Stück am laufen.

Mich hat das ganze Solo Mining mitlerweile so gepackt, dass seit gestern ein Mars Lander mit einem zusätzlichen GekkoScience Stick bei mir Zuhause läuft der aktuell gut 600 GH/s macht.

Gester hab ich mir noch zusätzlich den GekkoScience R909 Pod Miner bestellt damit sollte ich dann auf 2-3 TH/s kommen. Angeschlossen wird der R909 an den Mars Lander.

Was mich nun überascht hat und somit auch eine Frage an Euch.

Wenn ich bei https://solo.ckpool.org/ meine hinterlegte Bitcoin Adresse vom Mars Lander eingebe wird mir alles angezeigt und die Leistung vom Mars Lander wird erkannt…

Wenn ich die Bitcoin Adresse von meinen 5 NerdMiner angebe kommt: NOT FOUND The requested URL was not found on this server.

Hab schon öfters bei Twitter gelesen, das der NerdMiner so wenig Hashrate macht das er vom Pool gar nicht erkannt wird? Sprich es gar nicht möglich ist damit einen Block zu finden?

Liebe Grüsse