Wie man das 5 Sekunden boot Delay beim Digispark / Digistump attiny85 entfernt

Neben den ESP8266 Microcontrollern hatte ich mir zum Herumspielen auch ein Dreierpack attiny85 Microcontroller von Digispark bestellt. Diese sind sehr klein, stromsparend und können für verschiedenste kleine Aufgaben herangezogen werden. Der entsprechend installierte Bootloader macht die Entwicklung dabei besonders einfach, weil man mit der Arduino IDE arbeiten kann und das Gerät einfach nur anstecken muss und nicht irgendwelche Programmer benötigt oder so.

Diese Einfachheit hat allerdings einen Nachteil: immer, wenn man den attiny85 mit dem Strom verbindet, wartet der Bootloader 5-6 Sekunden lang, ehe das installierte Programm startet. Und hier möchte ich euch nun zeigen, wie ihr den Bootloader so modifizieren könnt, dass er direkt das Programm startet und statt der 5s Wartezeit mittels Jumper in den Programmier-Modus gebracht wird.

Dazu benötigt ihr:

Neuer Bootloader:
https://github.com/micronucleus/micronucleus/blob/v1.11/upgrade/releases/micronucleus-1.11-entry-jumper-pb0-upgrade.hex

Upload Software:
https://github.com/digistump/DigistumpArduino/tree/master/tools

Ladet euch das für euer Betriebsystem passende tar.gz herunter und entpackt es. In den entpackten Ordner könnt ihr der Einfachheit halber direkt die Hex Datei packen.

Der Upload ist dann eigentlich ganz leicht:

chmod +x micronucleus <-- die Binary ist nicht ausführbar, muss man also einmalig erledigen...
./micronucleus micronucleus-1.11-entry-jumper-pb0-upgrade.hex

Ihr werdet nun aufgefordert, den attiny85 anzustecken. Sobald das erledigt ist, wird der neue Bootloader gebrannt. Anschließend müsst ihr ca. 30s warten, dann das Gerät vom USB abziehen und den Pin GND mit Pin P0 verbinden. Nun zurück zur Arduino IDE wechseln, erneut den Upload des Programmes starten und wenn ihr aufgefordert werdet steckt ihr den attiny85 mit der GND-P0 Verbindung an. Nachdem die Firmware geschrieben wurde, zieht ihr das Teil wieder ab und trennt die Verbindung zwischen GND und P0. Wenn er nun wieder mit dem Strom verbunden wird, sollte der attiny85 sofort und ohne Pause das Programm starten.

Published by

bytelude

Softwareentwickler, Technik Fanatiker, Apple Fan, Kinoliebhaber, Prokrastinations-Spezialist

5 thoughts on “Wie man das 5 Sekunden boot Delay beim Digispark / Digistump attiny85 entfernt”

  1. Hallo,

    ich würde auch gerne die Verzögerung entfernen, komme aber an dieser Stelle nicht weiter:

    „In den entpackten Ordner könnt ihr der Einfachheit halber direkt die Hex Datei packen.
    Der Upload ist dann eigentlich ganz leicht:“

    Was ist mit Upload gemeint? Um welches Programm geht es hier und wo kann ich den folgenden Code dann eingeben?

    Über eine Antwort wäre ich sehr dankbar!

    Grüße
    Mathias

    1. Hallo Mathias,

      in der Anleitung sind zwei Adressen hinterlegt: einmal die Bootloader Software, also so eine Art Bios/Betriebssystem für den Microcrontoller sowie die Upload Software. Die Upload Software nimmt die Bootloader Software und schreibt sie direkt in den Speicher des Microcontrollers. Den/die dazu notwendigen Befehl(e) findest du direkt unter dem Satz “Der Upload ist dann eigentlich ganz leicht:”

      Die Anleitung funktioniert so wie sie da steht allerdings nur unter Mac oder Linux. Für Windows sehen sie wahrscheinlich etwas anders aus.

      LG
      Martin

      1. Es wäre allerdings von Vorteil, wenn man vorher auch erwähnen würde, dass diese Methode für Linux ist und nicht für Windows. 😉
        So blickt man es erstmal nicht.
        “Ich dachte auch gerade Wtf, wo ist der Rest?” 😛

  2. Vielen Dank fuer die Anleitung und die Links! Das hat gerade super funktioniert!

    Uebrigens:
    Fuer die, die kein Linux und keinen Mac haben: Auf Github ist in der Zwischenzeit (?) auch ein fertiges Windows Binary (das habe ich genutzt).
    Einfach Zip-Datei runterladen, entpacken, aus Vereinfachungsgruenden den neuen Bootloader runterladen und ins selbe Verzeichnis kopieren und entsprechend der obigen Anleitung verfahren.
    Achtung: Oben ist es eher angedeutet, daher hier nochmal in aller Deutlichkeit: Ein evtl. vorhandener Sketch wird dabei geloescht.

Leave a Reply

Your email address will not be published. Required fields are marked *