AVR FTDI ISP-Prog (AVR-8 Programmersoftware für den FT232R)

Gast #2578565
Lesenswert?

Hallo Forengemeide,
Der AVR FTDI ISP-Prog hat nun das Beta-Stadium erreicht.
Es sind nun alle geplanten Features implementiert.

Zuletzt kammen die AVR-8 mit FLASH-Speicher größer 128kB dazu (Leider 
besitze ich aber kein 256-AVR zum testen). Geprüft wurde ob das 
Verändern der Invertierungsflags der RS232-Signale des FT232R zu 
störungen führt. Dies ist nicht der Fall. Einzele Bugs, die mir noch 
aufgefallen waren habe ich beseitigt.

Eine Übersicht zum Projekt ist hier zu finden:
http://www.r-tron.de/uatmel.htm

Der Softwaredownload erfolgt unter:
http://www.r-tron.de/download/AVR_FTDI_ISP-Prog.zip

Die folgenden Definitionsdatein (.dev) für die AVR-8 sind nun enthalten:

ATTini13(A)
ATTini2313(A)
ATMega8(A)
ATMega8515
ATMega32(A)
ATMega1284(P)
ATMega2560(L)
ATMega2561(L)

Das User-Frendly-Fusing ist zum Teil noch verbesserbar.

Eine Beschreibung zum Aufbau der .dev Dateien findet man unter:
http://www.r-tron.de/download/Beschreibung_dev.pdf

Selbst neuerstellte .dev und verbesserte .dev können hier in diesem 
Beitag wieder hochgeladen werden. Ebenso können Bug-Meldungn eingestellt 
werden.

LG Christof Rieger
Homepage: http://www.r-tron.de/
Gast #2586524
Lesenswert?

Hallo Christoph,

wie schon an anderer Stelle gesagt, SUPER Arbeit.

Ich habe es noch nicht ausprobiert (auch wenn es nicht wirklich viel 
Arbeit ist aber ich habe keinen rechten Bock auf das dev erstellen LOL), 
aber jetzt steht ja das WE bevor...

Eine Frage bitte: Man muss ja (logischerweise) angeben welche FTDI-Ports 
welchen ISP Pins zugeordnet gehören. Wird dabei irgendwie das 
FTDI-EEPROM verändert, oder wird wenn ja das EEPROM wieder 
zurückgesetzt. Bekommt nach der Benutzung der FTDI Adapter eine neu 
COM-Portnummer zugewiesen, wie es ja z.B. bei FT_PROG passiert? Also, du 
siehst, mich interesiert ob sich durch die Benutzung als ISP Programmer 
mit deinem Program irgendetwas daran ändert wie der FTDI-Adapter 
ansonsten genutzt würde?

Thx, Olli
Gast #2586782
Lesenswert?

Hallo Olli,
welchen AVR-8 möchtest du denn programmieren. Eine einzene .dev habe ich 
schnell gebaut.

Wenn du die Bezeichnung, die Seriennummer oder den CBUS nichts zuweißst 
so sollte der EEPROM des FT nicht verändert werden. Es gibt auch eine 
checkbox um das Rückschreiben des EEPROMS zuermöglichen.
Gast #2589841
Lesenswert?

sorry, Christoph, ich bin einfach nicht dazu gekommen (wollte ich nur 
schnell rückmelden nicht das einfach nichts kommt)

Danke für das Angebot mit den .dev's. Ich habe gesehen dass man die 
detaillierte Fuseliste gar nicht machen muss wenn man nicht will - und 
der Rest ist ja wirklich keine Arbeit. Hast'e schon schlau gemacht ;)
Gast #2592572
Lesenswert?

Hallo,

ich finde cool was du da gemacht hast.
Hab mir mal alles nachgebaut mit einem FT232RL

Wenn ich aber das Programm öffne kann ich den FT232RL auch auswählen und
alles Einstellen. In deinem Beschreibungsfeld steht:

HomePath:
C:\Users\Philboi\Desktop\Neuer Ordner\
Hinweis: AVR FTDI ISP-Prog ist mit AVRStudio5.1 verknüpft!
Connect OK !

Ich denke dann muss ich auf AVR öffnen klicken.
Wenn ich das aber mache, kommt eine Msgbox mit:

Fehler beim öffnen ! Antwort: FF


Ich habe Windows 7 64bit
AVR Studio5.1 + Framework4.0

Achja wenn ich danach das AVR Studio öffne ist es auch nicht eingepluggt


Hast du eine Idee woran es liegen könnte?
Gast #2592689
Lesenswert?

Hallo philboi,
geh mal auf meine Homepage (www.r-tron.de)und sende mir an eine der 
E-Mailadressen unter Kontakte deine Telefonnummer. Ich denke das lässt 
sich am Telefon besser durchgehen.

LG Christof Rieger
Gast #2592838
Lesenswert?

Also ich habe mit Herrn Rieger Telefoniert.


Das mit dem Einpluggen war ein Registrierungsproblem war auch ziemlich
schnell gelöst :)

Der Fehler beim öffnen ist sehr wahrscheinlich ein Verdrahtungsproblem 
vom Mikrocontroller.

Soweit ich das Verstanden habe heißt FF eine Dauer 1. Den Code den er 
eigenlich abfragt ist (ich hoffe mich zu erinnern) eine 51 oder 55

Nach nochmaligem Probieren hat er den Fehlercode 0 ausgegeben.
Wahrscheinlich ist es so das ich durch die Falsche beschaltung den 
Mikrocontroller zerschrottet habe.

Sobald ich einen neuen habe und die Verdrahtung nochmals überprüft bzw. 
geändert habe, werde ich nochmals hier im Tread mein Feedback geben.


lg philboi
Gast #2593905
Lesenswert?

So hier bin ich wieder :)

Ja ich bin überglücklich hab die Verdrahtung mal nach den 
Voreinstellungen gemacht und siehe da es funktioniert :)


Ich kann lesen und schreiben.

Aber,

Wenn ich ein .hex file einlese, dann gibt mir das Programm immer einen 
Fehler zurück. 0 2 3

Wenn ich aber den AVR Flash lese (klar ist nichts drauf) und dann wieder 
schreibe dann macht er das Tadellos.

Hab mir ja selber eine .dev Datei schreiben müssen. Ich hab sie mal mit 
angehängt ich hoffe das ich die richtig gemacht habe :)


lg philboi
Angehängte Dateien:
Gast #2594152
Lesenswert?

Danke philboi für's testen !

Lade bitte mal dein Hexfile hoch oder sende es mir als Mail.
Deine .dev ist soweit O.K.

Hast du VCC jetzt schaltbar gemacht oder noch fest verbunden ?
Poste noch mal die Verkabelung, die nicht funktioniert hat. Der Sache 
muss ich nochmal auf den Grund gehen !

LG Christof Rieger
Gast #2594224
Lesenswert?

So hier hab ich mal das Hexfile.

Ja den VCC hab ich jetzt Schaltbar gemacht, also alles genau nach den
Standartangaben bis auf den externen Takt.

Ja die Verkabelung Poste ich Morgen mal muss ich erstmal aus den Kopf 
wieder hinbekommen :)


lg philboi
Angehängte Dateien:
Gast #2594334
Lesenswert?

Ich habe dir AVRGCC3.hex problemlos öffnen können.
Hast Du sie direkt über den Programmer geöfnet oder über das 
AVR-Studio5.1
Die scheint ja aus einem C-Projekt zu stammen. Das habe ich nämlich noch 
nicht getestet. Eventuell sieht die C-Projektdatei anders aus als eien 
Assembler-Projekt-Datei. Ich glaube wir werden die Tage noch mal 
telefonieren !

LG Christof
Gast #2594955
Lesenswert?

Ok ja es ist aus einer C Projektdatei

öffnen kann ich die datei auch ohne probleme mit dem editor.

Nur auf den µc spielen ging nicht.

Ich habs mit Standalone probiert zum schicken.
Ich versuch jetzt auf jeden fall mal ein Assembler hexfile
Gast #2597122
Lesenswert?

Öffne mal den AVR FTDI ISP-Prog direkt.
Öffen deine AVR.
Dann kannst du das Hex-File über den entsprechenden Button direkt öffnen 
und danach programmieren.
Solange dein AVR auf 1MHz läuft stell die Programmiergeschwindigkeit auf 
200kHz ein.

Anbei eine Modifizierte exe. Ersetze die Orginalexe durch diese und 
starte es nochmal aus den C-Projekt herraus. In einer MassageBox sollte 
den Pfad und Name der Projektdatei angezeigt werden.
Sende mir bitte mal diese Projektdatei zu.

LG Christof Rieger
Angehängte Dateien:
Gast #2597785
Lesenswert?

Hallo Philipp
Ich habe dir die Version 0.11 per E-Mail gesendet. Mit der habe ich dein 
Wirering aus deiner Zeichnung an einem ATTini2313 getestet. Hat 
einwandfrei funktioniert. SetUp sie Bild.

Die alte Version 0.1 hätte damit nach dem setzen der Fuses ein Problem 
gehabt. Der Device-Restart hatte noch einen Fehler nach dem Fusing.

Hast du das C-Projekt schon mit der V0.11 getestet ?

Der Fehler würde in der Version V0.11 bedeuten, dass der Programmer die 
Projektdatei die AVR-Studio übergibt, überhauptnicht an den übergebenen 
Platz findet.

LG Christof
Angehängte Dateien:
Gast #2598709
Lesenswert?

Nein mit der neuen Version hat alles gepasst

C-Projekt hat funktioniert
Mit der Dauerversorgung 5V weis ich nicht hab ich jetzt nicht probiert
mit 1000khz hat auch ohne probleme funktioniert


Danke


lg philboi
Gast #2599360
Lesenswert?

Auch Dir philboi vielen Dank,
für Deine Geduld und gute Zusammenarbeit.
Sag mir Bescheid wenn du noch Feheler findest.


Der Softwaredownload ist nun auf die V0.11 aktualisiert:
http://www.r-tron.de/download/AVR_FTDI_ISP-Prog.zip

Was uns noch aufgefallen war. Zumindest AVR-Studio5.1 akzeptiert den 
PlugIn erst wenn zuvor per Hand ein belibeiges Tool angelegt wurde. Es 
scheint beim "jungfräulichen" AVR-Studio5.1 noch ein Regestrieeintrag zu 
fehelen, der die Anzeige des PlugIns verhindert.

Hier der aktuelle Ausschitt zur Registrierung.

        regKey = 
Microsoft.Win32.Registry.CurrentUser.OpenSubKey("Software\Atmel\AVRStudi 
o51\5.1\External  Tools", True)
        If regKey Is Nothing Then Exit Sub
        App_Count = regKey.GetValue("ToolNumKeys", 0)
        For i = 0 To App_Count - 1
            If Strings.Right(regKey.GetValue("ToolCmd" & i.ToString, 0), 
21) = "AVR FTDI ISP-Prog.exe" Then
                InfoBox.AppendText("Hinweis: AVR FTDI ISP-Prog ist mit 
AVRStudio5.1 verknüpft!" & vbCrLf)
                Exit Sub
            End If
        Next
        regKey.SetValue("ToolCmd" & App_Count.ToString, Path_Own & "AVR 
FTDI ISP-Prog.exe")
        regKey.SetValue("ToolArg" & App_Count.ToString, "$(ProjectDir) 
$(ProjectFileName)")
        regKey.SetValue("ToolDir" & App_Count.ToString, Path_Own)
        regKey.SetValue("ToolSourceKey" & App_Count.ToString, "")
        regKey.SetValue("ToolTitle" & App_Count.ToString, "AVR FTDI 
ISP-Prog")
        Wert = 17
        regKey.SetValue("ToolOpt" & App_Count.ToString, Wert)
        App_Count = App_Count + 1
        regKey.SetValue("ToolCmd" & App_Count.ToString, Path_Own & "AVR 
FTDI ISP-Prog.exe")
        regKey.SetValue("ToolArg" & App_Count.ToString, "$(ProjectDir) 
$(ProjectFileName) Clean")
        regKey.SetValue("ToolDir" & App_Count.ToString, Path_Own)
        regKey.SetValue("ToolSourceKey" & App_Count.ToString, "")
        regKey.SetValue("ToolTitle" & App_Count.ToString, "AVR FTDI 
ISP-Prog force Settings")
        Wert = 17
        regKey.SetValue("ToolOpt" & App_Count.ToString, Wert)
        regKey.SetValue("ToolNumKeys", App_Count + 1)
        MsgBox("AVR FTDI ISP-Prog wurde in AVRStudio 5.1 registriert")
        regKey.Close()
Gast #2824410
Lesenswert?

Falls jemand die .dev selber schreiben möchte. Die Informationen für die 
ersten Zeilen sollten problemlos aus der 1. Seite des Datenblattes 
entnommen werden können. Der Name (Dateiname) erscheint automatisch, 
wenn alles angeschlossen ist und das Programm gestartet ist + AVR durch 
das Programm gestartet werden soll (kleiner Button "AVR"). Dann 
erscheint eine Fehlermeldung mit dem Namen.

Die restlichen Inhalte, also Fuses (und Lockbits) können wunderbar für 
jeden AVR hier (http://www.engbedded.com/fusecalc/) eingesehen werden. 
Dort können auch Benutzerdefinierte Einstellungen generiert werden!
#2824502
Lesenswert?

Also was noch nicht bei mir klappt (ATMEGA16):

- ich hatte AVRStudio 5 installiert und den Schlüssel "External  Tools" 
in der Registry hinzugefügt. Danach kam auch ne Meldung, Plugin 
hinzugefügt. Nun habe ich Studio 5 aber erneut installiert und bekomme 
nicht mehr die Meldung hin. Er fügt das Plugin irgendwie nicht mehr 
hinzu...

- Kann ATMEGA16 auslesen, löschen und Fuses setzen. Wenn ich aber eine 
HEX flashen will, bleibt der grüne Balken kurz vorm Ende stehen und nix 
passiert. Wenn ich einfach auf Flash auslesen klicke, ist der Flash 
leer.
#2825556
Lesenswert?

Lesen, löschen und Bits setzen geht. Nur hex/eep flashen geht nicht...

Habe alle Leitungen vom FTDI (sparkfun 5V FTDI Basic Board für Arduino 
Lilypad) mit dem ISP Stecker meines Pollin Evaluation Boards verbunden. 
Sobald ich nur eine Verbindung kappe, klappt nix mehr. Also ist die el. 
Verbindung wohl ok.


PS
Puffer -> AVR Flash geht auch... komisch
#3422405
Lesenswert?

Hallo.

Super Projekt. Echt nett.
Mich würde interessieren wie Du das gemacht hast.

Benutzt Du beim FT232 den Big Bang Mode?
Wenn, ja den Asynchron oder den Synchron Mode?

Mich interessiert das weil ich so etwas ähnliches realisiert habe, aber 
das ganze läuft nicht.

Danke.

BYE
Thomas
Gast #3423084
Lesenswert?

hier gibt es ein ähnliches Projekt, welches den MPSSE Mode der FTDI 
Chips nutzt:
http://wesche.we.ohost.de/Homepage/Version_3/index.php?section=PC_Delphi_FT2232_AtmelISP.html

Die folgenden Typen werden unterstüzt:
  - AtMega48
  - AtMega88
  - AtMega168
  - AtMega164
  - AtMega324
  - AtMega644
  - AtMega169
  - AtTiny261
  - AtTiny861
  - AT90USB64
  - AT90USB128
  - AtMega8
  - AtMega16
  - AtMega32
  - AtMega128
  - AtMega8535
  - AtMega644
  - AtMega640

Weitere Typen können in der Datei "devices.ini" hinzugefügt werden.

Gruß Andreas
Gast #3426519
Lesenswert?

Hier bin ich mal wieder seit Ewigkeiten.
Hab die Version V0.14 bereitgestellt.
Ist besonders für AVR-Studio4 Benutzer interessant.
Leget nun eine im nicht geplugten Modus .fuses Datei an die wenn sie 
Doppelt geklickt wird, die Programmierung automatisch Durchlaufen lässt.
Das Programm muss aber dazu mindestens einmal als Administrator 
gestartet werden.

@Thomas K.
Das Programm läuft im synchronen Bit Bang mode.

LG Christof

@Gregor
Läuft dein 168PA nun mit dem Programmer ?
Gast #3436042
Lesenswert?

Hallo
Habe neue .dev hinzugefügt. Hier die Liste alle Dev

Typ getestet erstellt Dev Datei
ATtiny13(A) ja 03.2012 1E9007.dev
ATtiny2313(A) ja 03.2012 1E910A.dev
ATmega48(A) nein 12.2013 1E9205.dev
ATmega48PA nein 12.2013 1E920A.dev
ATmega8515(L) ja 03.2012 1E9306.dev
ATmega8(L) ja 03.2012 1E9302.dev
ATmega8A ja 03.2012 1E9307.dev
ATmega88(A) nein 12.2013 1E930A.dev
ATmega88PA nein 12.2013 1E930F.dev
ATmega16(L) nein 12.2013 1E9403.dev
ATmega168(A) nein 12.2013 1E9406.dev
ATmega168PA nein 12.2013 1E940B.dev
ATmega328 nein 12.2013 1E9514.dev
ATmega328P nein 12.2013 1E950F.dev
ATmega32(A) ja 03.2012 1E9502.dev
ATmega1284 nein 03.2012 1E9705.dev
ATmega1284P nein 03.2012 1E9705.dev
ATmega2560(V) nein 03.2012 1E9801.dev
ATmega2561(V) nein 03.2012 1E9802.dev

zum Download einzelner .dev
http://www.r-tron.de/dev.htm
Angehängte Dateien:
Gast #3446243
Lesenswert?

Der Programer ist nun auf die Version 0.2 aktualisiert.

Wenn mehrere FT232R angeschlossen waren konnte es zu Problemen kommen. 
ebenso hat das erneute konfigurieren des FT232 zur Laufzeit des 
Programms Probleme gemacht. Das sollte nun behoben sein. Es dürfen jetzt 
auch gleichzeitig mehrere FT232R mit gleicher Bezeichnung angeschlossen 
sein.

Download kann über den Ersten Post erfolgen.

LG Christof Rieger
Gast #3454558
Lesenswert?

Ich bin lustig.
Da bastele ich eine Unterstützung für das AVR-Studio4 über das direkte 
Anklicken der .fuses Datei, vergesse aber die Möglichkeit eine .fuses 
Datei überhaupt erzeugen zu können. Mit der im Anhang befindlichen 
Version sollte das nun gehen. Einfach die .aps Datei per drag und drop 
auf die AVR FTDI ISP-Prog.exe ziehen. Damit wird alles abgefragt, was 
zur Erstellung der .fuses Datei nötig ist. Eine evenuell vorhandene alte 
.fuses wird überschrieben.
Die alte FTDI ISP-Prog.exe ist einfach durch die Neue zu ersetzen.

LG Christof
Angehängte Dateien:

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren