ATtiny Programmierung mit einem Arduino Uno

In den letzten Wochen habe ich mich immer wieder, wenn auch kurz, mit der ATtiny Programmierung beschäftigt. Ich habe zwar schon genügend angefangene Projekte aber mich hat das Thema sehr interessiert vor allem weil es gut zu diversen Projekten passt. Auch wenn es sehr kompliziert klingt und auch aussieht einen Mikrocontroller zu beschreiben, wer sich an einen Arduino traut der schafft auch das ohne Probleme. Im Endeffekt ist es eigentlich nichts anderes.

Benötigt wird neben einem Arduino Uno und Steckbrett ein 10 µF Kondensator und entweder einen kleinen ATtiny45/85  (8 Pin mit 4 bzw. 8 kb) oder einen großen ATtiny44/84 (12 Pin mit 4 bzw. 8 kb). Ich habe den kleinen ATtiny85 verwendet. Achtung die ATtinyx4 (12 Pin) haben eine andere Belegung!

ATtiny x4
ATtiny x4
ATtiny x5
ATtiny x5

Die benötigte Arduino IDE Library gibt es auf Github (externer Link: ATtiny Library). Der darin enthaltene Unterordner attiny (nicht attiny-master) muss unter Dokumente\Arduino in den normalerweise noch nicht vorhanden Ordner Hardware abgelegt werden. Wer auf Nummer sicher gehen will kann jetzt unter Tools => Board nachschauen ob er dort eine Reihe von ATtiny´s findet.ATtiny Programmierung Board Übersicht

Wir lassen aber den Arduino Uno ausgewählt und wählen unter Datei => Beispiele => Arduino ISP aus und laden den Sketch auf den Arduino Uno. Wer jetzt schon alles verkabelt hat bekommt eine Fehlermeldung!ATtiny Programmierung ArduinoISP

Erst nachdem der Arduino ISP Sketch auf den Arduino Uno geladen wurde, kann der ATtiny zum Programmieren mit dem Arduino verkabelt werden. Der 10µF Kondensator kommt zwischen GND und RESET. Damit wir auch gleich einen Erfolg sehen, verbinden wir zusätzlich eine LED mit dem ATtiny.ATtiny Programmierung Steckplatine mit LED

Bevor wir den ersten Sketch auf den ATtiny laden muss noch unter Tools => Programmer noch auf Arduino as ISP umgestellt werden.ATtiny Programmierung Programmer wechseln

Jetzt kann zum testen einfach der Blink Sketch über den Arduino auf den ATtiny geschrieben werden und fertig ist der LED Blinker. Nicht vergessen vorher im Setup und Loop Bereich den LED Pin von anzupassen. Im Beispiel ist es der Pin 3. Der Blink Sketch ist zu finden unter Datei => Beispiele => 01. Basics => Blink.

Wenn folgende Meldung erscheint ist trotzdem alles gut gegangen:
avrdude: please define PAGEL and BS2 signals in the configuration file for part ATtiny85
avrdude: please define PAGEL and BS2 signals in the configuration file for part ATtiny85

Der Aufbau kann jetzt komplett vom Arduino getrennt werden. Der ATtiny benötigt jetzt nur noch eine Spannungsversorgung von 2.7-5.5 Volt. Diese kann z. B. über einfache Batterien oder über einen Arduino erfolgen.

7 Gedanken zu „ATtiny Programmierung mit einem Arduino Uno“

    1. Hallo Klaus,

      eine blinkende LED ist doch schon mal ein guter Anfang, oder? 😉 Vielleicht kann ich dich mit einem der nächsten Beiträge mehr begeistern.

      Viele Grüße
      Stefan

  1. Hallo!
    Geht das mit dem Programmieren von einem attiny45 auf mit der neuen arduino Software?
    Ich bekomme die attiny Bibliothek nicht in das arduino System rein kopiert!!!! 🙁
    LG Stefan

    1. Hallo Stefan,

      ich hatte schon lange keinen ATtiny mehr in den Fingern, habe aber gerade ein Update der Arduino IDE auf Version 1.6.6 gemacht und nach der Anleitung nochmal den ATtiny Ordner aus der Library in den Ordner “C:UsersDocumentsArduinoHardware” gelegt. In der Arduino IDE habe ich dann unter Werkzeuge => Board ganz unten unter ATtiny Microcontrollers den ATtiny ausgewählt und dann über Werkzeuge den Prozessor und Clock Speed ausgewählt. Das scheint zu klappen, ich kann dir aber nicht sagen ob so ein ATtiny erfolgreich programmiert werden kann.

      Viele Grüße
      Stefan

  2. Hallo Stefan,
    Erfolg beim Bootloader.
    Dann aber Fehlermeldung beim einspielen des “Hello World- Blink dings”.
    Text:

    Beim Hochladen des Sketches ist ein Fehler aufgetreten
    Reading | ################################################## | 100% 0.02s

    avrdude: Device signature = 0x000000
    avrdude: Yikes! Invalid device signature.
    Double check connections and try again, or use -F to override
    this check.
    Fehler auf welcher Seite? Mein Check teigt offensichtlich keine falsche Verdrahtung.
    Falsche Auswahl des Chip, auch geprüft.
    Um den Fehler einzugrenze, was benötigst du?
    Würde gerne auch mal ein kleinen Erfolg erleben…
    lieben Gruß aus OWL Jörg

    1. Hallo Jörg,

      ich habe mich jetzt schon länger nicht mit dem ATtiny beschäftigt. Ich gehe aber mal davon aus, dass die Anleitung immer noch funktioniert?! Es gibt ja unzählige Forenbeiträge zu “Yikes! Invalid device signature” und viele unterschiedliche Lösungen. Wenn du dir sicher bist, dass dein Aufbau (Unter anderem Kondensator zwischen GND und RESET => Polung beachten) richtig ist, würde ich als Fehlerquelle auf den ATtiny tippen. Einen interessanten Artikel habe ich unter anderem auf elektronik.skyline-service.de gefunden. Vielleicht hilft dir dieser Beitrag weiter?

      Viele Grüße
      Stefan

      1. Moin Stefan,
        Fehler erkannt, gelernt, behoben.
        Motto: wer Skripte (Sketche) lesen kann, gewinnt…
        Danke dir für deine Hilfe,
        und ja, die Anleitung funktioniert.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert