Arduino Sketchupload mit FTDI @ 3,3 V funktioniert nicht

Gast #5261309
Hallo,

habe hier einen Atmega 1284p auf einem Breadboard auf welchen ich 
Programme mittels Arduino IDE und einem FTDI Adaper aufspiele. Bei 5 V 
funktioniert alles problemlos. Jetzt wollte ich die Schaltung auf 3,3 V 
umbauen und habe den FTDI Adapter auf 3,3 V gejumpert (BOD Spannung ist 
mit 2,7 V gefust). Der Prozessor läuft mit internen 8 MHz. An DTR sitzt 
noch ein 0,1 uF Kerko.

Fehlermeldung:

avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x33

Kann hier jmd Abhilfe schaffen?
Gast #5261326
Reines Rx/Tx wird nicht funktionieren, du musst schon per
Reset-Auslösung dem Bootloader sagen dass jetzt Daten kommen.

Rudi schrieb:
> An DTR sitzt noch ein 0,1 uF Kerko.

Das musst du erst mal zeigen wie der verschaltet ist.
Gast #5261340
Der Reset wird doch automatisch ausgelöst? Bei 5 V funktioniert es ja. 
Der Kerko sitzt in Serie zwischen DTR und Reset vom Atmel. Viel. einen 
größeren Wert versuchen?
Gast #5261349
Rudi schrieb:
> Der Prozessor läuft mit internen 8 MHz.

- Kann der Bootloader das?
  Arduino bräuchte 16 Mhz, denke ich, wegen der richtigen
  Baudrate ...

- Ist überhaupt ein Bootloader drauf?

- Reset beschaltet wie beim Arduino Original?
Gast #5261363
Bootloader ist drauf, es funktioniert ja auch alles sonst paletti. Nur 
eben nicht bei 3,3 V. Der Systemtakt hat doch nichts mit der Spannung zu 
tun, oder? Ich hatte das Problem damals auch schon bei 5 V, jedoch hatte 
der 0,1 uF Kerko das Problem gelöst. Habe soeben mit etwas größeren und 
kleineren Kerkos herum probiert, jedoch auch ohne Erfolg.
Gast #5261372
Dannn wirst du nicht umhin kommen deine Schaltung und
den Aufbau zu zeigen.

Abblock-Cs (2 Stück) an Prozessor und (auch 2 Stück) an
Spannungsregler 3.3V? (oder woher kommen sonst die 3.3V?
Gast #5261381
3,3 V werden vom FTDI aus den 5 V vom USB gewandelt und aufs Board 
gelegt. Abblockkondi sitzt, leider konstruktionsbedingt, aktuell noch 
etwas weiter weg vom Versorgungspin. Ich bastel ihn mal direkt ran.
Gast #5261400
Rudi schrieb:
> 3,3 V werden vom FTDI aus den 5 V vom USB gewandelt

Dem FTDI Chip kann man nicht viel Strom abverlangen (habe
gerade keine Daten dafür parat). Müsste auf jeden Fall
mit einem Elko ca. 10uF gepuffert werden.
Gast #5261420
Frickelfritze schrieb:
> Dem FTDI Chip kann man nicht viel Strom abverlangen

Im Zweifelsfall:

- Spannung beim Download-Versuch messen, wenn möglich mit
  Oszilloskop.

- Extern mit "richtigen" 3.3V versorgen.

- Trotzdem Elko 10uF zum puffern der Versorgung anwenden.
Gast #5261831
Moin,

habe jetzt auf 1MHz intern gefust, Labornetzteil mit 3,3 V 
angeschlossen, immer noch ohne Erfolg. Mit einem USBASP kann ich 
problemlos bei 3,3V flashen (mit zusätzlicher Spannungsversorgung).
Gast #5262245
Beim Anschluss des USB Steckers vom FTDI Adapter, unter gejumperter 5 V 
Spannung an den Laptop, blinkt die Arduino-Status LED und zeigt die 
Initialisierung durch blinken an. Bei 3,3 V Spannung blinkt nichts. 
Vielleicht hilft das bei der Fehlersuche? Habe auch mal den Widerstand 
vom Reset-Pin des Atmel verändert, hilft aber auch nichts. Aktuell sind 
10 kOhm dran. Langsam gehen mir die Ideen aus.

Nochmal der Überischt halber die Schaltungsdetails:

- FTDI mit 3,3 bzw. 5 V per USB am Laptop
- Netzteil mit 3,3 V angeschlossen
- 10 kOhm Pullup am Atmel-Reset
- 100 nF am Atmel VCC auf GND
- 10 uF VCC auf GND
- 100 nF zwischen DTR (FTDI) und Atmel-Reset


Bei dieser Konstellation funktioniert der FTDI nur unter 5 V Spannung.
Gast #5262319
Kann es am Adapter liegen? Habe einen Beitrag gefunden, wo jemand 
augenscheinlich das gleiche Problem hat:

https://forum.arduino.cc/index.php?topic=474941.0

"I've seen some adapters that have a jumper (physical or cut+jump pads) 
for 3.3v mode that actually don't work in that mode"

3,3 V liegen zwischen GND und VCC des Adapters an.

Dieser Adapter ist es:

https://www.ebay.de/itm/FTDI-Adapter-FT232RL-USB-zu-TTL-Serial-fuer-3-3V-und-5V-fuer-Arduino-PRO-Mini-/331744431360

Ich kann mir aber nicht so richtig vorstellen, dass es am Adapter liegen 
soll.
#5262476
Was ist denn eigentlich wenn man ein Serielles Echo-Programm mit 5V über 
den FTDI flasht und dann mit der Konsole auf 3,3V sendet und empfängt?

Beispiel:
1
void setup() {
2
Serial.begin(9600);
3
}
4

5
void loop() {
6
while (Serial.available() > 0) {
7
char e = Serial.read();
8
Serial.print(e);
9
}
10
}
Gast #5262612
Da ich einen Atmega 1284p nutze, habe ich den Mightycore installiert. 
Und die entsprechenden (clock, BOD) Bootloader via USBASP gebrannt. Nun 
habe ich die Fuses mit avrdude geprüft und festgestellt, dass diese 
nicht denen entsprechen, welche in der Boards.txt hinterlegt sind, wobei 
das Brennen der Bootloader immer fehlerfrei verlief.

Die Fuses sind laut Boards.txt:

l: 0xb7
h: 0xd6
e: 0xfd

avrdude zeight mir jedoch völlig andere Werte:

l: 0xb7
h: 0xfe
e: 0xd6

ich wollte jetzt auf folgende Werte fusen:

l: 0xbf
h: 0xd6
e: 0xfd

die highfuses und extended fuses lassen sich aber leider nicht 
umstellen:

C:\Program Files (x86)\Arduino\hardware\tools\avr\bin>avrdude -C 
"C:\Program Fil
es (x86)\Arduino\hardware\tools\avr\etc\avrdude.conf" -P usb -p m1284p 
-c usbasp
 -U lfuse:w:0xbf:m -U hfuse:w:0xd6:m U- efuse:w:0xfd:m

avrdude: warning: cannot set sck period. please check for usbasp 
firmware update
.
avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 
0.05s

avrdude: Device signature = 0x1e9705
avrdude: reading input file "0xbf"
avrdude: writing lfuse (1 bytes):

Writing | ################################################## | 100% 
0.02s

avrdude: 1 bytes of lfuse written
avrdude: verifying lfuse memory against 0xbf:
avrdude: load data lfuse data from input file 0xbf:
avrdude: input file 0xbf contains 1 bytes
avrdude: reading on-chip lfuse data:

Reading | ################################################## | 100% 
0.02s

avrdude: verifying ...
avrdude: 1 bytes of lfuse verified
avrdude: reading input file "0xd6"
avrdude: writing hfuse (1 bytes):

Writing | ################################################## | 100% 
0.02s

avrdude: 1 bytes of hfuse written
avrdude: verifying hfuse memory against 0xd6:
avrdude: load data hfuse data from input file 0xd6:
avrdude: input file 0xd6 contains 1 bytes
avrdude: reading on-chip hfuse data:

Reading | ################################################## | 100% 
0.02s

avrdude: verifying ...
avrdude: 1 bytes of hfuse verified

avrdude: safemode: Fuses OK (H:FE, E:D6, L:BF)

avrdude done.  Thank you.


C:\Program Files (x86)\Arduino\hardware\tools\avr\bin>



Kann es an den lock bits liegen? Bin noch nicht ganz so bewandert.
Beitrag #5262636 wurde von einem Moderator gelöscht.
Gast #5262788
Habe jetzt einen neuen AVR hergenommen. Mit dem geht es jetzt auch bei 
3,3V und dem FTDI. Der alte AVR war scheinbar verfust. Wie kann soetwas 
passieren? Habe zuvor die Fuses stets über den MightyCore und Arduino 
setzen lassen.
Gast #5262813
Rudi schrieb:
> Wie kann soetwas
> passieren?
Eigentlich nicht!

Wenn du mit den ISP noch drauf kommst, sollten sich auch die Fuses 
setzen lassen können.

Rudi schrieb:
> Habe zuvor die Fuses stets über den MightyCore und Arduino
> setzen lassen.
Bei dem neuen auch, nehme ich mal an.
Sonst hättest du ja den Bootloader nicht drauf(zum laufen) bekommen.
Gast #5262828
Ich kann die high und ext Fuses nicht mehr per avrdude setzen (siehe 
Terminalausgabe oben). Die alten werden nicht überschrieben. Nur die low 
Fuses kann ich noch umschreiben.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 8 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.