Atmega328 op breadboard usb -> serieel

Hallo,

Ik heb een arduino op een breadboard gebouwd zoals in dit filmpje:
https://www.youtube.com/watch?v=sNIMCdVOHOM
Nu heb ik precies dezelfde CH340G converter gekocht maar ik krijg deze niet aan de praat.
Nu heb ik nog een usb naar seriele converter:
http://www.banggood.com/FT232RL-FTDI-USB-To-TTL-Serial-Converter-Adapt…
Ook deze werkt niet.
Als ik mijn arduino pro mini aan een van de converters hang werkt het wel gewoon.
Ik heb de condensator die op mijn pro mini zit gemeten, hier kwam 140nF uit.
Ik heb voor mijn breadboard verschillende condensatoren gebruikt (100, 150, 200nF)
Wat doe ik fout?

Groet,

Wessel

Shiptronic

Overleden

Dat die 2e FTDI niet werk kan een driver probleem zijn, dit om fake chineesde chips, van bv. bangood, buitenspel te zetten.

Wie de vraag stelt, zal met het antwoord moeten leren leven.

De reset heeft een 10k pullup naar + nodig, en de DTR (pin 13 van de CH340) moet dan via 100n naar de reset lijn.

Verder heb je natuurlijk een bootloader in de AT328 nodig, die dit ondersteund. De timing daarvan komt nogal kritisch, en er zit daar nogal wat verschil in.

Je zou moeten kijken of het is aangesloten zoals ik beschreven heb? En de juiste bootloader erin. Ik gebruik de optiboot V5.0 met een aanpassing, precies voor dit probleem.

Mensen bedankt voor de snelle reacties.
Ik heb met beide converters succesvol dingen naar mijn pro-mini kunnen sturen.
Ik heb ook nog een USBTinyISP daarmee heb ik mijn heb ik de originele uno bootloader op mijn µc gezet.
Ook sketches versturen werkt prima, ik wou overstappen op deze converters omdat ik zo meer pennen vrij houd.
Ik heb het met en zonder pullup geprobeerd maar geen succes.
Ik heb ook verschillende µcs gebropeerd maar weer mocht het niet baten.
Zou het aan mijn IDE kunnen liggen, ik gebruik de nieuwste versie, in het filmpje wordt 1.0.6 gebruikt?

Kruimel

Golden Member

Beste wesselbraaksma,

Het zou idd kunnen dat de FTDI chip nep is en door je driver is gebricked. Dit filmpje van Dave Jones gaat hier op in mocht je er meer over willen weten. [understatement]Banggood zou best wel eens niet authentieke FTDI chips kunnen leveren.[/understatement]

Groet,
Kruimel

Op 22 april 2015 20:39:56 schreef wesselbraaksma:
Ik heb ook nog een USBTinyISP daarmee heb ik mijn heb ik de originele uno bootloader op mijn µc gezet.

Lees mijn post er nog eens op na ;)

De (orignele) Uno heeft een ATMEGA8U2-MU als USB/serial, en de timing is anders dan een FTDI of CH340 .. ergo problemen met de DTR puls. Als ik het me goed herrinner was ie te kort ..

Nee te lang, vandaar dat ik een 100nF condensator tussen pin 1 van de µc en DTR op de converter.
Zou dit dan nog steeds niet werken?
Dan zou ik ook een Pro-mini bootloader op mijn chip kunnen zetten dan zou het toch wel moeten werken?
Edit: geprobeerd met Pro-mini bootloader, ook dit werkte weer niet hij blijft hangen op: aan het uploaden.
In het filmpje wordt een µc gebruikt met een UNO bootloader en (net als bij mij) een 100nF condensator tussen reset en DTR (maar bij mij werkt het niet)

[Bericht gewijzigd door PLCboer op woensdag 22 april 2015 21:07:04 (36%)

Het is alweer een hele tijd geleden, maar ik had dezelfde problemen. Ik moest een bootloader aanpassen, vanwege een afwijkend crystal. Ik kreeg het ook niet aan de gang en heb toen een waarde in de optiboot veranderd, en daarna liep het als een zonnetje.

Het moest van ver komen, maar in deze thread staat het:

Because I suggest the FTDI board to all of my customers, I really wanted to get it working with them. So, I dug into optiboot.c and ended up modifying line 237, previously "watchdogConfig(WATCHDOG_500MS);", to "watchdogConfig(WATCHDOG_1S);". Slowing down the watchdog timer by 500ms, seems to resolve the issue. My guess is the FTDI isn't sending the code across fast enough, after setting the DTR pin and resetting the ATmega, but just a guess.

Ik gebruik gewoon een 16MHz kristal met 22pF condensatoren.
Ik blijf het raar vinden, waarom werkt het met een pro-mini dan wel?
Daar staat gewoon een Pro-mini bootloader op.
Ook op het filmpje wordt gewoon de UNO bootloader gebruikt en dat werkt gewoon.
Maar ik wil het best proberen, hoe krijg ik die optiboot op mijn µc?
edit: ik heb geen weerstanden tussen mijn tx en rx lijntjes zitten, is dit nodig?

[Bericht gewijzigd door PLCboer op woensdag 22 april 2015 22:05:21 (11%)

Op 22 april 2015 20:39:56 schreef wesselbraaksma:
Ik heb ook nog een USBTinyISP daarmee heb ik mijn heb ik de originele uno bootloader op mijn µc gezet.
Ook sketches versturen werkt prima, ik wou overstappen op deze converters omdat ik zo meer pennen vrij houd.

Je kan die pennen toch gewoon dubbel gebruiken? Ik heb op die pinnen ook een display zitten en kan hem gewoon programmeren (je ziet alleen wat rommel in het beeld tijdens het uploaden).

Ik wil het dubbel gebruiken van pennen juist voorkomen.
Ik doe precies na wat er in dat filmpje gezegd wordt maar bij mij werkt het niet.
Ik worstel al weken met dit probleem, ik wil dat het gewoon werkt :P

[Bericht gewijzigd door Henry S. op woensdag 22 april 2015 23:08:08 (41%)

Op 22 april 2015 22:03:49 schreef wesselbraaksma:
Ik gebruik gewoon een 16MHz kristal met 22pF condensatoren.
Ik blijf het raar vinden, waarom werkt het met een pro-mini dan wel?

Omdat die de goede bootloader er al heeft op zitten?
Als je precies die bootloader erin kunt zetten, zal het bij jou ook werken.
Alleen, hoe kom je erachter welke bootloader er in die pro-mini zit?

Maar ik wil het best proberen, hoe krijg ik die optiboot op mijn µc?

Het handigste is het om je boards.txt aan te passen met het juiste board, en dan via de Arduino IDE de bootloader erin te zetten.

edit: ik heb geen weerstanden tussen mijn tx en rx lijntjes zitten, is dit nodig?

Grappige vraag, subtiel antwoord :)
De Arduino's zijn gemaakt voor een breed publiek. Er zijn zomaar gasten die de RX ingang van een Arduino als uitgang programmeren. Daardoor hangen er dan ineens 2 uitgangen aan elkaar. Een 1k weerstandje doet dan wonderen :) :)

We got a winner!
Arduino pro-mini bootloader vanuit IDE op mijn pro-mini gezet en voila die is ook naar de ******.
Precies dezelfde symptonen als met de µc op het breadboard.
Toen oudere IDE erbij gepakt 1.0.6 en vanuit daar de pro-mini bootloader op de pro-mini gezet en hij werkt weer!
Vanmiddag uitzoeken of ik ook de µc op het breadboard aan de gang kan krijgen.
Het lijkt opgelost! (waardeloze IDE)

Mooi!

Ik meen me te herinneren dat de bootloaders die bij 1.5.x en 1.6.x "verbeterd" zijn door de watchdog timing aan te passen.

In de 1.0.x IDE zit deze aanpassing nog niet, en daardoor werkt het.

Je kunt altijd even in boards.txt kijken welke bootloader voor welk board gebruikt wordt.

Dan zie je gelijk wat voor zooitje ze ervan gemaakt hebben :)

Waar kan ik boards.txt vinden?
Zou ik de bootloader uit 1.0.6 ook kunnen verplaatsen naar 1.6.3?
Edit:heb boards.txt gevonden, kan er niet echt wijs uit worden.
Waar zoek ik precies naar?

[Bericht gewijzigd door PLCboer op donderdag 23 april 2015 11:38:24 (32%)

Op 23 april 2015 11:32:33 schreef wesselbraaksma:
Waar kan ik boards.txt vinden?

:)

Afhankelijk van de versie (vanaf de Arduino root):
1.0.x: Programs\arduino-1.0.6\hardware\arduino
1.6.x: Programs\arduino-1.6.3\hardware\arduino\avr

Zou ik de bootloader uit 1.0.6 ook kunnen verplaatsen naar 1.6.3?

Tuurlijk. Het gemakkelijkste gaat dat, door een nieuwe entry in boards.txt te maken. Definieer daar je eigen boardje, met eigen bootloader en andere toeters en bellen. ;)

Goed opletten dat de paden allemaal kloppen, en de IDE herstarten na veranderingen.

Op 23 april 2015 11:39:35 schreef JBerg54:
[...]

:)

Afhankelijk van de versie (vanaf de Arduino root):
1.0.x: Programs\arduino-1.0.6\hardware\arduino
1.6.x: Programs\arduino-1.6.3\hardware\arduino\avr

[...]

Tuurlijk. Het gemakkelijkste gaat dat, door een nieuwe entry in boards.txt te maken. Definieer daar je eigen boardje, met eigen bootloader en andere toeters en bellen. ;)

Goed opletten dat de paden allemaal kloppen, en de IDE herstarten na veranderingen.

Ik heb hem onder AppData\Roaming\Arduino15\packages\arduino\hardware\avr\1.6.2 staan (op mijn win 8.1 machine) terwijl ik geupdate heb naar 1.6.3 via de IDE zelf, zou dit het probleem kunnen zijn?
Ik zal thuis even kijken hoe het op mijn win7 machine staat.
Voor nu alvast bedankt voor alle hulp!
Wat met ook opviel is dat de 1.6.3 IDE de bootloader er zeer snel injaagt terwijl de oudere IDE er langer over doet (maar wel goed :P)

Probleem opgelost!
Na de eerste keer een bootloader van een pro-mini gebrand te hebben vanuit IDE versie 1.0.6 werkte het nog niet.
Na de tweede keer werkte het wel (?)!
Net geprobeerd om een bootloader van een UNO te branden naar mijn µc op het breadboard dit werkt ook!
Dus mensen voor mensen die een USB -> Seriele adapter gebruiken voor een arduino op een breadboard, en je upload blijft steken, gebruik bootloaders van IDE versie 1.0.6!
Bedankt JBerg voor de hulp!