Digispark/Digistump ATtiny85 Bootloader flashen / Verzögerung deaktivieren

  • Der ATtiny mit USB Anschluss ist eine besonders winzige Alternative zum Arduino mit u.a. weniger Pins, mit denen man ebenfalls super kleine Bastelprojekte hinbekommt.

    Vor allem in Bereiche, wo eh wenig Platz ist.

    Dieser kann ebenfalls mit der Arduino IDE programmiert werden.


    Was man alles an netten Basteleien fürs Auto damit machen kann, werde ich vielleicht in ein paar zukünftigen Projekten präsentieren. ^_^



      


    Leider hat dieser Mikrocontroller im Gegensatz zum Arduino die negative Eigenschaft, wegen des Bootloaders 5-6 Sekunden verzögert mit dem Programm zu starten.

    Diese Wartezeit hängt damit zusammen, dass der Bootloader beim einstecken auf Befehle wartet, wie zum Beispiel das Draufspielen eines neuen Programms.


    Erst wenn in den 5-6 Sekunden nichts empfangen wird, startet der Bootloader das eigentliche Programm, dass ihr geschrieben vorher draufgeladen habt.



    In diesem How-To zeige ich Euch, wie ihr den Bootloader von einem Digispark/Digistump ATtiny85 flashen könnt, um damit die 5-6 Sekunden Verzögerung beim Start zu entfernen.


    Man findet so gut wie nirgends eine gescheite Anleitung dazu, nur halbgare Aussagen von "Experten", was möglich wäre aber immer ohne Anleitung oder Erklärung. -> Sowas nervt doch echt! :thumbs_down:


    Daher schreibe ich nun selbst eine kleine, leicht verständliche Anleitung für alle, die schon mal mit einem ATtiny gearbeitet haben oder es mal vorhaben.

    Das gute daran, man benötigt mit dieser simplen Methode keinen extra ISP Programmer, keine extra Bauteile oder einen 2. Arduino, um den ATtiny85 zu flashen. :party_popper: :)



    Was wird benötigt?


    Schritt 1:


    Ladet alle erforderlichen Dateien herunter und speichert es an einem Ort Eurer Wahl.

    Danach extrahiert ihr das Flash Tool mit einem beliebigen Entpack-Programm.

    Speichert die Bootloader Datei am besten mit in dem Ordner, indem sich die micronucleus.exe befindet.



    Schritt 2:

    Öffnet die Windows-Kommandokonsole (CMD) indem ihr auf die Startfläche klickt und ins Suchfenster beispielsweise CMD eintippt.


    Alternativ: Windows Taste + X -> Ausführen -> CMD eintippen -> Enter


    Schritt 3:


    Navigiert nun zum Ordner des Flash Tools.

    Gebt dazu in der Windows-Kommandokonsole cd gefolgt von einem Leerzeichen und dem Pfad zum Flash Tool ein.

    Code
    cd PFAD_ZUM_FLASH_TOOL

    Beispiel:




    Schritt 4:


    Gebt nun in der Windows-Kommandokonsole folgenden Befehl ein:


    Wichtig: Es muss ein Leerzeichen dazwischen stehen!

    Code
    micronucleus.exe micronucleus-1.11-entry-jumper-pb0-upgrade.hex


    Wenn alles klappt, seht ihr nun folgendes:



    Das Programm ist bereit und wartet darauf, dass der ATtiny verbunden wird.

    Steckt nun den ATtiny in einem USB Port und wartet ab.


    Das Programm erkennt den ATtiny automatisch und beginnt mit dem Flash Vorgang.

    Das dauert nur wenige Sekunden.


    Warnung: Während des Flash-Vorgangs den ATtiny nicht vom USB Port trennen!




    Fertig!



    Ab jetzt wird das Programm, dass ihr auf euren ATtiny ladet, direkt nach dem Einstecken ausgeführt.




    Um jetzt ein neues Programm wieder drauf flashen zu können, steckt ihr euren ATtiny in den USB Port und macht eine Brücke von GND zu Pin 0 (P0).

    Danach startet der Bootloader und wartet auf den Flashvorgang.


    Achtung: Achtet darauf, dass ihr in Eurem Programm den P0 nicht als 5V Ausgang deklariert habt, ansonsten riskiert ihr einen Kurzschluss.

    Nehmt am besten einen hochohmigen Widerstand (mindestens 1000Ω) als Brücke.


    308 GTi (╯°□°)╯︵ ┻━┻

    2 Mal editiert, zuletzt von Mittns () aus folgendem Grund: Schema hinzugefügt

  • Mittns

    Hat das Label Schema hinzugefügt.
  • Vielen, vielen, vielen Dank!

    Habe viel dazu gesucht, vorallem auf Englisch, aber hatte nichts gefunden :)

  • Gerne.

    Mich hat es auch so einiges an Zeit gekostet, was vernünftiges zu finden aber leider ist kaum was brauchbares dabei gewesen. <X


    Vorallem kann man den Attiny super mit Relais als potenzialfreien Schaltkontakt nutzen und benötigt lediglich einen USB Port.


    Für Dashcam's optimal, da unsere Infotainment Systeme mit Aufschließen des Fahrzeugs Spannung auf die Ports geben und beim abschließen, nach ca. 2min wieder abgeschaltet werden.

  • Hallo.

    Kann man diesen neuen bootloader auch wieder rückgängig machen falls etwas nicht so funktioniert wie es das sollte?

  • Ein Backup von Original machen und notfalls wieder drauf flashen.


    Geht mit der Arduino IDE und dem avr dude, habe aber bisher kein Tutorial dafür verfasst, müsstest mal im Netz schauen.


    Wenn der modifizierte Bootloader allerdings so wie in der Beschreibung ordentlich geflasht wird, funktioniert alles problemlos.

    Ich habe 4 meiner Attiny85's bereits geflasht, ohne irgendwelche Komplikationen oder unerwünschte Nebeneffekte.


    Das wichtigste ist, dass es beim Flashvorgang keine Unterbrechung der Spannung gibt.

  • Okay, alles klar! Ich wollte mich nur vergewissern dass es notfalls möglich wäre den digispark zurückzusetzen.

    Wie genau ich dieses Backup durchführe wäre dann der nächste Schritt. Ich bin leider Anfänger und habe nicht viel Ahnung mit arduinos/digisparks.

    Kannst du (aber natürlich nur sofern du die Zeit dafür hast) ein passendes tutorial verfassen oder verlinken? wäre mega nett (-;


    Ich habe es jetzt einfach riskiert. Ich hatte einen kurzen Herzinfarkt als das vorher installierte Programm die Led nicht mehr leuchten ließ, aber dann ist mir klar geworden, dass das Programm beim überschreiben des Bootloaders wahrscheinlich auch gelöscht wird. Also habe ich die Pins überbrückt und siehe da, ich konnte ihn wie gewohnt programmieren.


    DAAANNNKKKEEE!!!!!!!!

    Einmal editiert, zuletzt von thesumate () aus folgendem Grund: Ein Beitrag von thesumate mit diesem Beitrag zusammengefügt.

  • Ich hatte einen kurzen Herzinfarkt als das vorher installierte Programm die Led nicht mehr leuchten ließ, aber dann ist mir klar geworden, dass das Programm beim überschreiben des Bootloaders wahrscheinlich auch gelöscht wird.

    Ja, die vorhandene Firmware wird erst gelöscht und dann wird die neue drauf geflasht, deswegen ist es auch wichtig, währenddessen keine Unterbrechung zu haben.


    DAAANNNKKKEEE!!!!!!!!

    Gern geschehen. :)

Jetzt mitmachen!

Hey! Es scheint, als ob Dir dieser Austausch gefällt, aber Du hast bisher noch kein Benutzerkonto erstellt. Mit einem Konto kannst Du über neue Antworten informiert werden, Foto's in unsere Galerie hochladen, unsere Tools nutzen, anderen mit einem „Gefällt mir“ danken oder selbst dabei unterstützen, anderen zu helfen. Gemeinsam können wir dazu beitragen, diese Community zu etwas größerem zu machen.