Arduino as ISP und Attiny 4313

Hallo,
habe mal wieder ein problem =(

Ich kann den 2313 beschreiben aber den 4313 nicht

Meine Arduino Version 1.0.3

Lade das Prg Blink und lass es einfach überprüfen
Da gibt es schon eine Fehlermeldung

board.txt ( für Attiny )
usw sind in den Ordner
C:\XXXXXXXX\arduino-1.0.3\hardware\tiny

Wie gesagt den 84 kann ich beschreiben
den 2313 auch
Nur der 4313 geht nicht

In board.txt ist er angegeben
emty4313at8.hex ist auch da
usw

gibt es da einen Trick ?

Danke für Ratschläge

Ratlos

Hallo Ratlos,

Lade das Prg Blink und lass es einfach überprüfen
Da gibt es schon eine Fehlermeldung

sollen wir raten, welche Fehlermeldung du bekommst oder verrätst du es uns?
Du hast sicher den ATtiny4313 @ 8 MHz als Board ausgewählt?

Hast du als erstes "burn Bootloader" ausgeführt? Der 4313 ist im Auslieferzustand mit 500kHz intern getaktet.
Poste mal deine boards.txt, vielleicht ist da ein Fehler drin.

Gruß
Reinhard

Hallo
ja mit 8 Mhz

###########################################################################
attiny4313at8.name=ATtiny4313 @ 8 MHz
# The following do NOT work...
# attiny4313at8.upload.using=avrispv2
# attiny4313at8.upload.using=Pololu USB AVR Programmer
# The following DO work (pick one)...
attiny4313at8.upload.using=arduino:arduinoisp
# attiny4313at8.upload.protocol=avrispv2
# attiny4313at8.upload.using=pololu
attiny4313at8.upload.maximum_size=4096
# Default clock (slowly rising power; long delay to clock; 8 MHz internal)
# Int. RC Osc. 8 MHz; Start-up time: 14 CK + 65 ms; [CKSEL=0100 SUT=10]; default value 
# Brown-out detection disabled; [BODLEVEL=111]
# Serial program downloading (SPI) enabled; [SPIEN=0]
# Preserve EEPROM memory through the Chip Erase cycle; [EESAVE=0]
attiny4313at8.bootloader.low_fuses=0xE4
attiny4313at8.bootloader.high_fuses=0x9F
attiny4313at8.bootloader.extended_fuses=0xFF
attiny4313at8.bootloader.path=empty
attiny4313at8.bootloader.file=empty4313at8.hex
attiny4313at8.build.mcu=attiny4313
attiny4313at8.build.f_cpu=8000000L
attiny4313at8.build.core=tiny
# attiny4313at8.build.core=empty
###########################################################################
Hast du als erstes "burn Bootloader" ausgeführt? Der 4313 ist im Auslieferzustand mit 500kHz intern getaktet.

????? nein habe ich nicht

C:\arduino-1.0.3\hardware\tools\avr\bin\avr-g++ -c -g -Os -Wall -fno-exceptions -ffunction-sections -fdata-sections -mmcu=attiny4313 -DF_CPU=8000000L -MMD -DUSB_VID=null -DUSB_PID=null -DARDUINO=103 -IC:\arduino-1.0.3\hardware\tiny\cores\tiny C:\AppData\Local\Temp\build492116041740526001.tmp\Blink.cpp -o C:\Users\Heli\AppData\Local\Temp\build492116041740526001.tmp\Blink.cpp.o 
unknown MCU 'attiny4313' specified
Known MCU names:
   avr2
   at90s2313
   at90s2323
   at90s2333
   at90s2343
   attiny22
   attiny26
   at90s4414
   at90s4433
   at90s4434
   at90s8515
   at90c8534
   at90s8535
   avr25
   attiny13
   attiny13a
   attiny2313
   attiny24
   attiny44
   attiny84
   attiny25
   attiny45
   attiny85
   attiny261
   attiny461
   attiny861
   attiny43u
   attiny48
   attiny88
   at86rf401
   avr3
   at43usb320
   at43usb355
   at76c711
   avr31
   atmega103
   avr35
   at90usb82
   at90usb162
   attiny167
   avr4
   atmega8
   atmega48
   atmega48p
   atmega88
   atmega88p
   atmega8515
   atmega8535
   atmega8hva
   at90pwm1
   at90pwm2
   at90pwm2b
   at90pwm3
   at90pwm3b
   avr5
   atmega16
   atmega161
   atmega162
   atmega163
   atmega164p
   atmega165
   atmega165p
   atmega168
   atmega168p
   atmega169
   atmega169p
   atmega32
   atmega323
   atmega324p
   atmega325
   atmega325p
   atmega3250
   atmega3250p
   atmega328p
   atmega329
   atmega329p
   atmega3290
   atmega3290p
   atmega406
   atmega64
   atmega640
   atmega644
   atmega644p
   atmega645
   atmega6450
   atmega649
   atmega6490
   atmega16hva
   at90can32
   at90can64
   at90pwm216
   at90pwm316
   atmega32m1
   atmega32c1
   atmega32u4
   atmega32u6
   at90usb646
   at90usb647
   at94k
   avr51
   atmega128
   atmega1280
   atmega1281
   atmega1284p
   at90can128
   at90usb1286
   at90usb1287
   avr6
   atmega2560
   atmega2561
   avrxmega4
   atxmega64a3
   avrxmega5
   atxmega64a1
   avrxmega6
   atxmega128a3
   atxmega256a3
   atxmega256a3b
   avrxmega7
   atxmega128a1
   avr1
   at90s1200
   attiny11
   attiny12
   attiny15
   attiny28
Blink.cpp:1: error: MCU 'attiny4313' supported for assembler only
In file included from c:/arduino-1.0.3/hardware/tools/avr/lib/gcc/../../avr/include/avr/interrupt.h:38,
                 from C:\arduino-1.0.3\hardware\tiny\cores\tiny/WProgram.h:8,
                 from C:\arduino-1.0.3\hardware\tiny\cores\tiny/Arduino.h:4,
                 from Blink.ino:13:
c:/arduino-1.0.3/hardware/tools/avr/lib/gcc/../../avr/include/avr/io.h:330:6: warning: #warning "device type not defined"
In file included from C:\arduino-1.0.3\hardware\tiny\cores\tiny/WProgram.h:18,
                 from C:\arduino-1.0.3\hardware\tiny\cores\tiny/Arduino.h:4,
                 from Blink.ino:13:
C:\arduino-1.0.3\hardware\tiny\cores\tiny/TinyDebugSerial.h:629: error: 'TINY_DEBUG_SERIAL_REGISTER' was not declared in this scope
C:\arduino-1.0.3\hardware\tiny\cores\tiny/TinyDebugSerial.h:629: error: 'TINY_DEBUG_SERIAL_BIT' was not declared in this scope
C:\arduino-1.0.3\hardware\tiny\cores\tiny/TinyDebugSerial.h:629: error: template argument 1 is invalid
C:\arduino-1.0.3\hardware\tiny\cores\tiny/TinyDebugSerial.h:629: error: template argument 2 is invalid
C:\arduino-1.0.3\hardware\tiny\cores\tiny/TinyDebugSerial.h:629: error: invalid type in declaration before ';' token
C:\arduino-1.0.3\hardware\tiny\cores\tiny/TinyDebugSerial.h:630: error: 'TINY_DEBUG_SERIAL_REGISTER' was not declared in this scope
C:\arduino-1.0.3\hardware\tiny\cores\tiny/TinyDebugSerial.h:630: error: 'TINY_DEBUG_SERIAL_BIT' was not declared in this scope
C:\arduino-1.0.3\hardware\tiny\cores\tiny/TinyDebugSerial.h:630: error: template argument 1 is invalid
C:\arduino-1.0.3\hardware\tiny\cores\tiny/TinyDebugSerial.h:630: error: template argument 2 is invalid
C:\arduino-1.0.3\hardware\tiny\cores\tiny/TinyDebugSerial.h:630: error: invalid type in declaration before ';' token
C:\arduino-1.0.3\hardware\tiny\cores\tiny/TinyDebugSerial.h:631: error: 'TINY_DEBUG_SERIAL_REGISTER' was not declared in this scope
C:\arduino-1.0.3\hardware\tiny\cores\tiny/TinyDebugSerial.h:631: error: 'TINY_DEBUG_SERIAL_BIT' was not declared in this scope
C:\arduino-1.0.3\hardware\tiny\cores\tiny/TinyDebugSerial.h:631: error: template argument 1 is invalid
C:\arduino-1.0.3\hardware\tiny\cores\tiny/TinyDebugSerial.h:631: error: template argument 2 is invalid
C:\arduino-1.0.3\hardware\tiny\cores\tiny/TinyDebugSerial.h:631: error: invalid type in declaration before ';' token
C:\arduino-1.0.3\hardware\tiny\cores\tiny/TinyDebugSerial.h: In member function 'void TinyDebugSerial::begin(long int)':
C:\arduino-1.0.3\hardware\tiny\cores\tiny/TinyDebugSerial.h:682: error: cannot convert 'TinyDebugSerialWriter_9600*' to 'TinyDebugSerialWriter*' in assignment
C:\arduino-1.0.3\hardware\tiny\cores\tiny/TinyDebugSerial.h:686: error: cannot convert 'TinyDebugSerialWriter_38400*' to 'TinyDebugSerialWriter*' in assignment
C:\arduino-1.0.3\hardware\tiny\cores\tiny/TinyDebugSerial.h:690: error: cannot convert 'TinyDebugSerialWriter_115200*' to 'TinyDebugSerialWriter*' in assignment

Habe mal alles von der Meldung kopiert

Dann stell doch mal als erstes deinen Attiny als Board ein und mach dann den Menu Puknt "Bun bootloader" dann werden die fuse bits gesetzt und dann kannst du mit dem blink example weiter machen.

Attiny 4313 8mhz
Boadloader brennen geht ( Zeigt Er zumindest )

Blink mit den Arduino as ISP geht immer noch nicht.
Gleiche fehlermeldung wie vorher

Grüße
Ratlos

Was wird denn ausgegeben, beim Bootloader brennen?

Bootloader installieren

Board = Attiny 4313 8mhz
Programmer = Arduino as ISP

Anzeige = Bootloader wurde installiert.

Das Textfile ist zu groß

hier der Link zu der Ausgabe von Arduino wenn man den Bootloader installiert

http://www.workupload.com/file/XozuHN7

Ist eine TXT Datei

Gruß
Ratlos

C:\arduino-1.0.3\hardware\tools\avr\bin\avr-g++ -c -g -Os -Wall -fno-exceptions -ffunction-sections -fdata-sections -mmcu=attiny4313 -DF_CPU=8000000L -MMD -DUSB_VID=null -DUSB_PID=null -DARDUINO=103 -IC:\arduino-1.0.3\hardware\tiny\cores\tiny C:\AppData\Local\Temp\build492116041740526001.tmp\Blink.cpp -o C:\Users\Heli\AppData\Local\Temp\build492116041740526001.tmp\Blink.cpp.o
unknown MCU 'attiny4313' specified

Der Aufruf sieht seltsam aus.
Normalerweise sollte es nicht -mmcu=attiny4313 sondern -pattiny4313 im Aufruf heißen. Ich sehe auch nirgendwo den ISP in diesem Aufruf.
Rufst du aus dem Menue der IDE auch die Funktion "Upload using programmer" auf?

Hallo

die mmcu=attiny4313 ist immer da egal von wo ich aufrufe

nur beim Bootloader ist es anders ( = pattiny4313 )

Habe schon das Internet durchgesucht,

So ein fehler hatten andere auch ohne jedoch eine Lösung zu haben.

Kann es an der Arduino Version liegen ?

ah, jetzt seh ich, dass das der Aufruf des Compilers ist. Der Compiler kennt den Chip nicht.
Einige Foreneinträge deuten darauf hin, dass die in der IDE genutzte avr-lib veraltet ist und dadurch den attiny4313 noch nicht unterstützt, z.B. http://web.archiveorange.com/archive/v/wmeLDUyqtvpWXH84hb75
Check mal deine avr-gcc++ Version.

Hallo
weiß nicht wie ich das machen soll ?

Aber das Datum bei den XXXX.exe ist 2008 ( also alt ) ( Arduino 1.0.3 )

Bei der Arduino version 1.5.2 ist die AVR auch von 2008 also auch eine alte

GLAUBE ICH ZUMINDEST

Habe schon gesucht und keine neuere gefunden

Hallo,
habe den neuen WinAVR ist die neue Version

Wenn ich einfach den Ordner /avr Tausche.
geht zwar die überprüfung
aber es wird nicht mehr auf den Arduino geschrieben.
( Gar kein PRG )

Muss da auch wieder was berücksichtigt werden damit der Neue AVR von Arduino richtig verwendet wird ?

Bitte habt etwas nachsicht mit mir den das ist alles neuland für mich

Grüße
Danke
Ratlos

Die version 1.5.2 ist, soweit ich das mitbekommen habe nur für den 32-Bit Arduino Due...

Die 1.5.2 ist eine Beta Version für Arduino DUE und die anderen Arduino's.
Du kannst aber die frisch herausgebrachte 1.0.4 Version für den Arduino UNO verwenden.

Viele Grüße Uwe

Hallo,

ist schon blöd....

ich habe den neuen AVR in eingebracht.
Es geht kein Kompilieren ;o)

Es ist der richtige weil alle Dateien "fast" identisch sind

Nur das geht auch nicht

Was ic hnicht verstehe.......
Wenn eine neue Arduino Version raus kommt.
Warum kommt da nicht die Aktuelle Version des AVR´s mit rein ?

Aber naja

Ratlos:
ich habe den neuen AVR in eingebracht.
Es geht kein Kompilieren ;o)

Ich habe vor ein paar Tagen das gleiche Problem (erfolgreich :slight_smile: gelöst. Der Compiler-Ersatz kann ziemlich subtil sein, weil man auch avr-libc ersetzen sollte, und am Schluss hats noch eine header-file, die man ein bisschen von Hand tweaken sollte.

Leider war meine Arbeit auf einem Mac, also nicht direkt auf Windows übertragbar, aber wenn Du Fehlermeldungen hast, kann ich vielleicht helfen.

Ratlos:
Was ic hnicht verstehe.......
Wenn eine neue Arduino Version raus kommt.
Warum kommt da nicht die Aktuelle Version des AVR´s mit rein ?

Das frage ich mich ehrlich gesagt auch. Immer wieder avr-gcc & avrdude austauschen wird langsam öde.

Kein Problem

In C:\Dokumente und Einstellungen\username\Eigene Dateien\arduino-1.0.4\hardware\tools\avr\etc
in der Datei arvdude.conf die Signature "faken".
Programmierst Du einen 2313 musst Du wieder umschalten.
Das ist die verlässlichste Methode.

Ich hatte mit der Integration des neuen AVR aus dem aktuellen WINAVR auch kein Erfolg. Dort muss die arvdude.conf übriegens auch angepasst werden.
Mein Version kannte den Chip noch nicht.
Einfach nach ATtiny2313 suchen ;->

...
......
#------------------------------------------------------------
# ATtiny2313
#------------------------------------------------------------

part
     id            = "t2313";
     desc          = "ATtiny2313";
     has_debugwire = yes;
     flash_instr   = 0xB2, 0x0F, 0x1F;
     eeprom_instr  = 0xBB, 0xFE, 0xBB, 0xEE, 0xBB, 0xCC, 0xB2, 0x0D,
	             0xBA, 0x0F, 0xB2, 0x0F, 0xBA, 0x0D, 0xBB, 0xBC,
	             0x99, 0xE1, 0xBB, 0xAC;
     stk500_devcode   = 0x23;
##   Use the ATtiny26 devcode:
     avr910_devcode   = 0x5e;
##   signature        = 0x1e 0x91 0x0a; # <---- Signature Attiny2313 
     signature        = 0x1e 0x92 0x0d; # <---- Signature Attiny4313 
     pagel            = 0xD4;
     bs2              = 0xD6;
     reset            = io;
     chip_erase_delay = 9000;
....
...

F41_ARDU