GELÖST: Attiny 85 mit Arduino UNO ISP lässt sich nicht programmieren

Frage wurde gelöst. Siehe Antwort Nr. 12. Vielen Dank.

Ich habe schon ziemlich viel durchgegoogelt, aber ich komme nicht weiter.

Ich will einen Attiny 85 via Arduino UNO (über Arduino ISP Sketch) programmieren, wir hier beschrieben.
Ich habe die Schaltung entsprechend aufgebaut und den Arduino UNO mit dem ISP-Sketch erfolgreich beschrieben.
Anschließend als Board den Attiny 85 ausgewählt (1 MHZ internal) und versucht den Bootloader drauf zu bekommen. DIeser gibt mir aber immer folgende Fehlermeldung zurück:

Arduino: 1.8.12 (Windows 10), Board: "ATtiny25/45/85 (No bootloader), Enabled, CPU (CPU frequency), ATtiny85, 8 MHz (internal), EEPROM retained, B.O.D. Disabled (saves power), Enabled"

C:\Users\home\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17/bin/avrdude -CC:\Users\home\AppData\Local\Arduino15\packages\ATTinyCore\hardware\avr\1.4.1/avrdude.conf -v -pattiny85 -cstk500v1 -PCOM4 -b19200 -e -Uefuse:w:0xFF:m -Uhfuse:w:0b11010111:m -Ulfuse:w:0xE2:m -Uflash:w:C:\Users\home\AppData\Local\Arduino15\packages\ATTinyCore\hardware\avr\1.4.1/bootloaders/empty/empty_all.hex:i 

avrdude: Version 6.3-20190619
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2014 Joerg Wunsch

         System wide configuration file is "C:\Users\home\AppData\Local\Arduino15\packages\ATTinyCore\hardware\avr\1.4.1/avrdude.conf"

         Using Port                    : COM4
         Using Programmer              : stk500v1
         Overriding Baud Rate          : 19200
         Setting bit clk period        : 5.0
         AVR Part                      : ATtiny85
         Chip Erase delay              : 400000 us
         PAGEL                         : P00
         BS2                           : P00
         RESET disposition             : possible i/o
         RETRY pulse                   : SCK
         serial program mode           : yes
         parallel program mode         : yes
         Timeout                       : 200
         StabDelay                     : 100
         CmdexeDelay                   : 25
         SyncLoops                     : 32
         ByteDelay                     : 0
         PollIndex                     : 3
         PollValue                     : 0x53
         Memory Detail                 :

                                  Block Poll               Page                       Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
           eeprom        65    12     4    0 no        512    4      0  4000  4500 0xff 0xff
           flash         65    12    32    0 yes      8192   64    128 30000 30000 0xff 0xff
           signature      0     0     0    0 no          3    0      0     0     0 0x00 0x00
           lock           0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
           lfuse          0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
           hfuse          0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
           efuse          0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
           calibration    0     0     0    0 no          2    0      0     0     0 0x00 0x00

         Programmer Type : STK500
         Description     : Atmel STK500 Version 1.x firmware
         Hardware Version: 2
         Firmware Version: 1.18
         Topcard         : Unknown
         Vtarget         : 0.0 V
         Varef           : 0.0 V
         Oscillator      : Off
         SCK period      : 0.1 us

avrdude: AVR device initialized and ready to accept instructions

Fehler beim Brennen des Bootloaders.
Reading | ################################################## | 100% 0.02s

avrdude: Device signature = 0xff00ff
avrdude: Expected signature for ATtiny85 is 1E 93 0B
         Double check chip, or use -F to override this check.

avrdude done.  Thank you.

Der Attiny 85 ist frisch aus der Verpackung. Die Verkabelung schon 10x überprüft.

Ich weiß nicht mehr.

Hallo,

da wird eine falsche Signature erkannt. Hast du wirklich den erforderlichen Kondensator verbaut?

Doc_Arduino:
Hallo,

da wird eine falsche Signature erkannt. Hast du wirklich den erforderlichen Kondensator verbaut?

Ja, gerade gecheckt: 10mF

joe1974:
Ja, gerade gecheckt: 10mF

Bist Du Dir da sicher? Das wäre etwas groß.

Gruß Tommy

Tommy56:
Bist Du Dir da sicher? Das wäre etwas groß.

Gruß Tommy

Okay? Ich habe mich an den Wert in der Beschreibung beim Link gehalten. Da steht 10 Mikro Farad.

10 mF sind aber 10 milli Farad, also das Tausendfache.

Gruß Tommy

Da steht "10 µF Elektrolytkondensator", "10 µF" sollte auch auf dem Kondensator stehen.

agmue:
Da steht "10 µF Elektrolytkondensator", "10 µF" sollte auch auf dem Kondensator stehen.

Ja, tut es auch. Ich habe den richtigen Elko genommen. Das „Milli“ in meinem Post Ist falsch. Sorry

Ok, passiert.

Gruß Tommy

Ich habe gelesen, dass es Probleme mit dem Aufspielen des Bootloaders gebe kann, wenn der Attiny 85 auf externe Clock gestellt ist. Kann das bei neuen Attinys sein? Würde dann die Fehlermeldung so stimmen?

Hallo,

wenn der µC seine Werksteinstellung hat, dann ist der interne RC aktiv zusammen mit dem 1/8 Takteiler. Also wären dann 1MHz üblich.
Oder hast du am ATtiny schon irgendwann an den Fuse gefummelt? Falls du ihn dabei auf externen Clock gesetzt hast, dann benötigt er natürlich auch einen externen Takt. Hast du? Wenn ja, welche Fuse wie geändert?

Kannst du mal testen, ob sich der Tiny direkt flashen lässt. Also direkt den Blinksketch mit Programmer hochladen.
Wenn du den Tiny direkt per ISP flashst, brauchst du keinen Bootloader.

So, okay, ich habe ein bisschen Angst das hier zu schreiben, denn ich war ECHT DUMM!!! :o

Ich habe den Reset Push-Button am Attiny auf dem breadboard um 90° versetzt falsch eingebaut. Dies hat dafür gesorgt, dass der Attiny ständig einen Reset gemacht hat- auch beim flashen über den Arduino. Kein Wunder also, wenn er nicht gefunden wird. Ich habe den Taster jetzt richtig eingebaut und schon ließ sichder Bootloader und das folgende Blinksketch brennen. Peinlich.

const int PIN_LED = 3;
 
void setup() {
  pinMode(PIN_LED, OUTPUT);
}
 
void loop() {
  digitalWrite(PIN_LED, HIGH);
  delay(1000);
  digitalWrite(PIN_LED, LOW);
  delay(1000);
}

ABER

Wenn ich das obige Sketch brenne - erfolgreich - wird nicht an PIN 3 des Attiny ein abwechselndes High/Low SIgnal erzeugt, sondern an PIN 2. Warum?
Sorry, dass ich hier etwas nerve, aber mit Attinys ist echtes Neuland für mich.

joe1974:
So, okay, ich habe ein bisschen Angst das hier zu schreiben, denn ich war ECHT DUMM!!! :o

Kein Problem, da lernst du draus.
Sowas o.ä. ist sicher jedem von uns mal passiert.

Wenn ich das obige Sketch brenne - erfolgreich - wird nicht an PIN 3 des Attiny ein abwechselndes High/Low SIgnal erzeugt, sondern an PIN 2. Warum?
Sorry, dass ich hier etwas nerve, aber mit Attinys ist echtes Neuland für mich.

Wenn du mal definierst, was bei dir Pin 3 bzw. Pin 2 bedeuted.

Erklärung:
PB3 ist das Bein Nr. 2 am ATtiny. Siehe hier:

Belegung des Attiny85:

  (SS)PB5 - 1 |  \/  | 8 - Vcc
   A  PB3 - 2 |      | 7 - PB2 A1 (SCK)  + SCL
   A  PB4 - 3 |      | 6 - PB1 (MISO)
      GND - 4 |      | 5 - PB0 (MOSI) + SDA

Danke für die netten Worte.

Also bei obigem Sketch leuchtet eine LED an dem mit * bezeichneten Pin. Erwartet hätte ich aber an dem mit & gekennzeichnetem PIN.

Belegung des Attiny85:

  (SS)PB5 - 1 |  \/  | 8 - Vcc
 * A  PB3 - 2 |      | 7 - PB2 A1 (SCK)  + SCL
 & A  PB4 - 3 |      | 6 - PB1 (MISO)
      GND - 4 |      | 5 - PB0 (MOSI) + SDA

Okay, danke. Habs kapiert. Ich habe kurzfristig gedacht, dass die "echte" Pinnummer auch die ist, die ich im Sketch angeben muss. Knoten gelöst.

Vielen Dank an alle.

joe1974:
Okay, danke. Habs kapiert. Ich habe kurzfristig gedacht, dass die “echte” Pinnummer auch die ist, die ich im Sketch angeben muss. Knoten gelöst.

Vielen Dank an alle.

Alles klar und danke für die Rückmeldung.