www.mikrocontroller.net

Forum: Mikrocontroller und Elektronik USB AVR ISP

Autor: Christian Ulrich (z0m3ie)
Datum: 23.03.2007 01:05

So, will ich mal mein Projekt der letzten 2 Wochen vorstellen.
Wieder mal n Programmer ;)

Motivation war die Anfälligkeit der original AVR-ISP. Raus gekommen ist
ein recht einfaches günstiges Hardwaredesign welches eigentlich nur aus
nem Atmega8 ner USB buchse Wanenstiftleisten und Vogelfutter. Kann
einseitig geätzt und aufgebaut werden dann hat man nur den 10 Poligen
ISP Verbinder wenn mans 2-Seitig macht kann man auch noch den 6-Poligen
und Micromatch mit der selben Belegung wie 6-Polig ISP Bestücken.

-ISP Frequenz wird bis zu 3 Mhz unterstützt.
-STK500v2 kompatibel
-Anzeige vom Target Status mit LEDs (angeschlossen,falsch
angeschlossen,nicht angeschlossen)
-Terminal Modus in dem Einstellungen gemacht werden können und auch ohne
Programmer Software Informationen über das Target angezeigt werden
können
-im Windows vorhandener USB Treiber nutzbar
-die Firmware kann mit leichten Anpassungen auch in der USBasp Hardware
verwendet werden (fertig kompilierte Version auf meiner Seite)

mehr informationen gibts hier
http://www.ullihome.de/index.php/Hauptseite#USB_AVR-ISP
Autor: Mike (Gast)
Datum: 23.03.2007 07:30

Hört sich echt gut an!
Probier ich mal aus ...
Autor: Knut (Gast)
Datum: 23.03.2007 08:31

Ja, sieht wirklich gut aus. Hättest du evtl. den Schaltplan mal als PDF
oder so?
Autor: Mike (Gast)
Datum: 23.03.2007 09:35

@ Knut Die meisten hier (ich eingeschlossen) arbeiten doch eher mit
Eagle.

@ Christian Ulrich
Wär toll wenn du die Schaltung auch als Eagle-Datei auf deine Seite
stellen würdest.

Hört sich schonmal gute an ... hab leider kein target
Autor: Steven Wetzel (steven)
Datum: 23.03.2007 09:40

> Motivation war die Anfälligkeit der original AVR-ISP.

Worin besteht denn diese Anfälligkeit?
Autor: Knut (Gast)
Datum: 23.03.2007 09:41

Ja, von mir aus natürlich auch Eagle, würd mir die Schaltung halt gerne
mal ansehen.
Autor: Christian Ulrich (z0m3ie)
Datum: 23.03.2007 11:29

Ich habe erstmal die Schaltung und Layouts im PDF Format hochgeladen,
mit Eagle hab ich noch meine Probleme mit der For/Backward notation die
will nämlich meine Brücken die ich als Freie Gehäuse im Target eingefügt
habe perdu nicht haben hat villeicht jemand nen Tipp für mich ?? Ich
finds n bissle sinnlos im Schaltplan Brücken einzuzeichnen wegen Eagle
...

>Worin besteht denn diese Anfälligkeit?

Das kann ich dir nicht so genau sagen ich ha b schliesslich keine
Schaltung für die Dinger und auch keine Lust dort Fehler zu suchen. Ich
hab vor 3 Wo 2 Programmer mit einer Schaltung zerschossen ich weiß bis
heut nicht warum. Mit meiner Schaltung kann ich das ding einwandfrei
Flashen. Und das war nicht das erste mal, in der Produktion gehen die
Dinger regelmässig drauf sicher nicht ganz unbegründet aber ich war
überrascht wie Robust meine Schaltung dagegen ist ich hab gestern sogar
nen Atmega8 wiederbelebt der sich mit keinem anderen Programmer mehr
ansprechen liess weder STK200 noch 500 oder AVRISPmkII will damit aber
nicht sagen das die Sache ein Allheilmittel ist. Die SPI vom Atmega8
scheint nur recht robust zu sein und die Schutzwiderstände tun ihr
übriges.

Ich hab in der Schaltung übrigens die Padflächen der Dual LED etwas
grösser gemacht damit kann man nun auch 2 1206er LEDS auflöten. Der
RXE010 muss nicht unbedingt bestückt werden das ist ein Polyswitch der
den USB davor bewahrt das ein Target mal zuviel Strom zieht ist ne
schöne Schutzbeschaltung aber die meisten USB Controller schalten auch
von sich aus ab und nach nem erneuten hochfahren gehen sie sogar wieder
;)
Der Rest der Bauteile dürfte sehr einfach zu beschaffen sein bzw in den
meisten Bastelkisten rumfliegen ....

Und zum Thema ich hab kein Target die Schaltung lässt sich problemlos
mit der kostenlosen Version ansehen drucken und warscheinlich sogar
bearbeiten die 250 Pin grenze ist denk ich nicht erreicht. Ich werd
natürlich trotsdem versuchen die Eagle Files zu generieren will ja
niemanden zwingen Target zu nutzen ...
Autor: Christian Ulrich (z0m3ie)
Datum: 23.03.2007 12:21

Ich hab mal ein paar Bilder von einem meiner Samples hochgeladen, die
Platine ist leider schon leicht angelaufen :(

Wenn sich genau Leute zusammenfinden würde ich auch Platinen bestellen.
Wer Interesse hat, schreibt mir einfach ne mail.
Autor: ecslowhand (Gast)
Datum: 23.03.2007 13:12

1. Gutes Projekt, danke !

2. o.k., am Layout könnte man noch was machen

3. "Ich werd
natürlich trotsdem versuchen die Eagle Files zu generieren will ja
niemanden zwingen Target zu nutzen ..."

Da hier überwiegend EAGLE-Files verwendet werden, wird man also von den
EGALE-Nutzern genötigt mit "ihrem" Programm zu arbeiten. Also mach Dir
als TARGET-User nicht solche Gedanken. TARGET bietet wenigstens die
Möglichkeit, in das EAGLE-Format zu exportieren (und zu importieren).

Ich finde den Gedanken, dass sich EAGLE-User auch mal mit TARGET
beschäftigen müssen, gar nicht sooo schlecht .... :)

Lg EC
Autor: saddevil (Gast)
Datum: 23.03.2007 13:59

hi

ich hab mir das in Eagle gebastelt
in dem ich widerstände als "brücken" eingesetzt hab
PAD's sind dann deaktiviert


der programmer funzt jedenfalls einwandfrei ..
und ich flashe alle 5min mal  :-)
Autor: Christian Ulrich (z0m3ie)
Datum: 23.03.2007 14:05

>Ich finde den Gedanken, dass sich EAGLE-User auch mal mit TARGET
>beschäftigen müssen, gar nicht sooo schlecht .... :)

Naja ich hab früher auch mal mit Eagle gearbeitet wurde beruflich zu
Traget "gezwungen" mittlerweile hab ich mir aber auch Privat ne Light
gekauft hat schon was für sich ab und zu. Auch wenn ich nicht beurteilen
möchte welches Programm besser ist.
Autor: Knut (Gast)
Datum: 23.03.2007 14:28

@Christian

Danke für das PDF.

Das Teil gefällt mir sehr gut, ich werde das am WE auf jeden Fall mal
aufbauen. Ich bin schon sehr gespannt, wie schnell es ist.

Noch ein Hinweis: im Schaltplan ist fälschlicherweise 16MHz als
Quarzfrequenz eingetragen. Evtl. willst du es ja verbessern.
Autor: Christian Ulrich (z0m3ie)
Datum: 23.03.2007 14:30

Oh ha, das provoziert natürlich Fehler wird gleich geändert
Autor: Christian Ulrich (z0m3ie)
Datum: 23.03.2007 15:16

Eagle Files stehen nun auch zur verfügung
Autor: Mike (Gast)
Datum: 23.03.2007 16:58

Mist ... ist Christian's Seite down ?
Autor: Christian Ulrich (z0m3ie)
Datum: 23.03.2007 17:23

Mike wrote:
> Mist ... ist Christian's Seite down ?

ist wieder da, weiss auch hatt mit 1und1 sonst keine Probleme.
Autor: Thomas (Gast)
Datum: 27.03.2007 17:12

Hallo Christian,

prima Ding dein USB AVR ISP. Ich hab die Firmware für den USBASP von dir
mit AVR Studio zum laufen bekommen. Mein Problem ist, dass ich mit
ARVDUDE keine Verbindung zustande bekomm. Ich erhalt dann immer die
folgenden Fehlermeldungen...

stk500_getsync(): not in sync: resp=0x00
ser_open(): can't open device "com3": Zugriff verweigert

Hat jemand den USB AVR ISP schon mal mit AVRDUDE zum laufen bekommen?

Danke
ciao
Thomas
Autor: Christian Ulrich (z0m3ie)
Datum: 27.03.2007 17:32

Das Protokoll ist STK500v2 ;)

Wird aber wahrscheinlich nicht wahnsinnig viel nützen da es mit avrdude
noch irgendwelche anderen Probleme gibt, ich kann mir im Moment nicht
richtig erklären woran das liegen soll denn das AVR Studio und die
STK500.exe kommen wunderbar damit zurecht bisher in jeder Lebenslage
also muss das Protokoll ja stimmen. Leider scheint avrdude aber auch
kein Kommunikationsprotokoll mitloggen zu können so das man mal schnell
nachschauen könnte an welcher Stelle es hakt. Villeicht kennt ja doch
jemand einen undokumentierten Switch oder eine möglichkeit ein debug Log
zu schreiben oder so ?! -v reicht jedenfalls nicht.

Ich bin aber auch dabei das AVR910 Protokoll noch zu implementieren
damit gehts dann sicher (hoff ich).
Ausserdem besteht noch die Möglichkeit die USBasp Firmware zu benutzen
wenns denn unbedingt avrdude sein muss damit gehen dann halt die LEDs
nicht und die netten extra Features sind nicht da.
Autor: Matthias Weißer (matthias) Benutzerseite
Datum: 27.03.2007 19:35

Hi

versuch mal -v -v -v -v. Das sollte dann für mehr als genug Ausgaben
sorgen.

Matthias
Autor: Christian Ulrich (z0m3ie)
Datum: 27.03.2007 23:22

Sehr schön danke, hat geklappt Fehler ist das ich ISP_MULTI nicht
implementiert hab und avrdude diesen nutzt um die fuses auszulesen warum
auch immer macht eigentlich nicht soo viel sinn da es ja einen separaten
Befehl dafür gibt aber naja. Ich werd versuchen das noch in den
Controller zu quetschen mal sehn ob ichs noch rein bekomm oder an
anderer Stelle noch ein paar Bytes frei bekomme.
Autor: Christian Ulrich (z0m3ie)
Datum: 27.03.2007 23:46

So, SPI_MULTI ist implementiert ich hab nur gerade nix zum flashen zur
hand, wenn jemand simples Fuse oder Deviceid auslesen mit avrdude
probieren könnte wär nett.

Kommandozeile:

avrdude -c stk500v2 -P comxx


-p mit entsprechendem Target muss natürlich noch dazu.

Ich habe beide Hexfiles upgedated (für meine Hardware und USBasp).
Ausser SPI_MULTI hab ich noch nen kleinen Bug beseitigt und die Blaue
Led (bei USBasp gibts die nicht) blinkt jetzt wärend Datentransfers.
Autor: dirk-frerichs (Gast)
Datum: 28.03.2007 19:33

hi

das ist ja fein ...

ich würde aber auch keinen grund sehen AVRdude zu nutzen wenn es aus dem
AVR studio  funzt ...
Autor: Christian Ulrich (z0m3ie)
Datum: 28.03.2007 19:46

Naja es gibt ja noch Linux und MacOS wo es kein AVR Studio gibt, und ich
will den leuten ja nicht den weg verbauen den sie gehen wollen :) Will
ja nahezu alles an Software unterstützen deshalb kommt das AVR910
Protokoll ja auch noch.
Autor: dirk-frerichs (Gast)
Datum: 28.03.2007 20:39

aha
.. dann hau rein :-)
Autor: THW (Gast)
Datum: 20.06.2007 12:59

Hallo Christian,

ich hab Probleme den USBAVR-ISP unter Windows 2000 zum laufen zu
bekommen. Mit Windows XP gibts keine Probleme aber bei Windows 2000
bekomm ich nur ganz selten eine Verbindung zum USBAVR-ISP und selbst
dann funktioniert die Programmierung nicht. Als Treiber unter Windows
2000 gibt es ja 2 zur Auswahl, den "Communication Port" und den
"Bootloader". Ich habe den "Communication Port" verwendet. Wie kann man
denn den Bootloader nutzen? Das Gerät meldet sich ja dann nicht mehr als
serielle Schnittstelle am Rechner an.

viele Grüße
Thomas
Autor: Christian Ulrich (z0m3ie)
Datum: 20.06.2007 16:18

Der Bootloader Treiber ist nur für den Bootloader gedacht, der wird nur
aktiv wenn der Bootloader auch aktiv ist. Über den Bootloader kann man
natürlich auch nicht Programmieren.

Die usbser.sys von W2K kommt mit der CDC nicht 100%ig klar. Es gibt
einen Workaround indem du die usbser.sys von XP nimmst dazu musst du
auch die msports.dll von xp benutzen. Diese Möglichkeit ist aber noch
reichlich ungetestet wir können uns egrn nochmal per Mail dazu
unterhalten. Ich kann dazu warscheinlich auch kein fertiges
Treiberbundle bauen da der Treiber von Microsoft kommt und ich den
natürlich nicht so einfach mitliefern kann.
Autor: Thomas W. (thw)
Datum: 20.06.2007 20:39

Hallo Christian,

ich hab auch mal noch ein bisschen rumprobiert. Ich verwende die
USBasp-Hardware. Mit der aktuellen Firmaware (25.05.2007) für den USBasp
funktioniert bei mir auch unter WindowsXP das Auslesen nicht mehr, ich
kann aber den Controller programmieren nur beim vergleichen meldet
AVRStudio einen Fehler (mit der Version vom 28.03.2007 hat das noch
funktioniert). Mit der Firmware für deinen USBAVR-ISP von 25.05.2007
dagegen funktioniert unter WindowsXP alles(allerdings funktionieren dann
die LED's nich mehr, da ich ja die USBasp Hardware verwende).
Mit AVRDUDE kommt bei mir bei programmieren immer 0x0000 als Device
Signature heraus...ist das normal?

Unter Windows2000 könnte ich also Erfolg haben, wenn ich diese beiden
Dateien ersetze oder gibt es da noch mehr zu tun?

Grüße
Thomas
Autor: Christian Ulrich (z0m3ie)
Datum: 21.06.2007 09:48

In der USBasp Version, werden eigentlich nur mittels defines die LED´s
umgebogen und der ADC nicht benutzt. Ich habe leider keine USBasp
hardware, kannst du villeicht mal probieren dir die Version zu
compilieren ?
Kann ja sein das ich beim veröffentlichen oder compilieren was falsch
gemacht hab.

Mit avrdude hab ich noch nicht so viel gemacht durchaus möglich das sich
dort noch Fehler eingeschlichen haben.

>Unter Windows2000 könnte ich also Erfolg haben, wenn ich diese beiden
>Dateien ersetze oder gibt es da noch mehr zu tun?

Ich hab dazu auch nur die Aussage eines Nutzers er musste wohl noch eine
versteckte Datei kopieren. Ich kann es leider selbst nicht
nachvollziehen da ich nirgends W2K hab.
Autor: Herby (Gast)
Datum: 05.07.2007 11:16

Ich habe die DIL-Version gebaut. Wenn ich die Platine an den USB-Bus
anschließe erscheint auf dem Computer "USB-Gerät wurde nicht erkannt".
Auf D- ligen ca. 2,6V.
Hat vielleicht jemand einen Tip für mich?
Autor: Charly (Gast)
Datum: 12.07.2007 19:49

Hallo Herby,

habe den progger auch nachgebaut, mit eigenem layout da ich die
kleine usb-buchse benutzte und hatte den fehler auch da ich D+ und
D- am stecker vertauscht hatte, nach den drhen wird er erkannt aber mehr
konnte ich noch nicht machen da er auf die eingabe von 'menue' nicht
reagiert heul

viel erfolg und berichte mal wieder
Charly
Autor: Christian Ulrich (z0m3ie)
Datum: 13.07.2007 18:44

Hallo Charly

warum konntest du nicht mehr machen ?
Den Terminal Modus braucht man doch normalerweise gar nicht !
Ist der Virtuelle COM Port im geräte Manager sichtbar ?
Was sagt das AVR Studio dazu ?
Autor: Charly (Gast)
Datum: 13.07.2007 19:56
Dateianhang: avrisp2a.jpg (30,5 KB, 873 Downloads)
preview image for avrisp2a.jpg

Hallo Christian,

wollte  mit dem terminal die ISP geschwindigkeit umstellen,
blike noch nicht so ganz durch bei dem programmer, kommt
aber noch (hoffentlich), habe etwas umlayoutet und noch den
6pol micromat. stecker ´eingebaut´ , wollte event. im neuen
layout noch ein max232 einbauen, naja vielleicht kommen noch
ein paar Ideen.....

danke noch fuer die nette hard-und-software

viele gruese & ein schoenes wochenende
Charly
Autor: Charly B. (charly)
Datum: 13.07.2007 20:18

Hi,
hatte eben login vergessen ;(
ein scheenes wochenende
charly
Autor: Michael Waiblinger (wiebel42)
Datum: 13.07.2007 21:54

Ich wäre an einer Platine interessiert. Das sieht Klasse aus.
Hab ich das richtig aufgeschnappt, dass der Mega8 über den bootloader
selbst geflashed werden kann? Könntest du dann evtl. wenn das mit den
Platinen anlaufen sollte auch einen mega8 mit bootloader anbieten?
Obwohl den bekommt man glaub auch so, oder?
Gefällt mir Super, weiter so.  -wiebel

P.S. Wenn mich einer fragen würde, wäre ich für eine miniUSB Buchse,
aber das passt dann natürlich nicht so schön in das nette Gehäuse von
Atmel.
Autor: Christian Ulrich (z0m3ie)
Datum: 14.07.2007 00:44

Warum hast du n anderes layout gemacht Charly ?
Auf meiner ist doch schon eine 6 pol Micromatch mit drauf !
Dein Layout ist fast gleich zu dem vom Chaos Computer Club Berlin zu dem
meine Software auch kompatibel ist.
Und es gibt ein kleines zusatzboard das du auf die 10 Pol. ISP Stecken
kannst mit nem max232 und ner SubD 9 Buchse womit du aus dem ganzen
einen RS232/USB Wandler machen kannst geplant sind noch etliche mehr
Boards für n kleines Oszi Logic analyzer usw steht aber alles auf der
Seite im Moment ist eine neue Schaltung in Arbeit die eien regelbare
Ausgangspannung von 0-30V bietet und n paar Spielereien mehr damit soll
man später auch Pics flashen könne...

@Michael
Ja es ist momentan aber noch keine PC Software geschrieben um den
Bootloader zu bedienen. Ich hab schon oft überlegt und würde auch gern
Platinen machen auch vorprogrammierte Controller sind kein Problem es
müssen sich nur erstmal genug Leute finden damit sich die erste
Bestellung lohnt.

Weiterhin würde ich das dann erst mit der neuen Hardware anlaufen lassen
da diese doch einige Vorteile bietet aber auch komplett
abwärtskompatibel ist man also auch in der Minimnalbestückung nicht viel
mehr als den atmega8 und n paar Widerstände bestücken muss.
Autor: Joachim B. (jar)
Datum: 14.07.2007 10:03
Dateianhang: web_BC5G2279.jpg (16,7 KB, 414 Downloads)
preview image for web_BC5G2279.jpg

toll, aber
warum verwenden alle USB B oder mini B ?
immer irgendwelche Kabel mitschleppen müssen ?
warum sind alle Platinen so breit ?

Ich hab mir nun diesen bestellt
http://www.ixbat.de//files/admin/embedded/usbprog/...

ihn aber so umgebaut siehe Anhang
statt 270 Ohm Rv vor den LED nun 1k 2x und an jeder Seite ! eine 3mm LED
low current 2mA rausschauen lassen

lieber wäre mir ein Mk2 komp. Prommer im USB Stick design
http://www.segor.de/bilder/0000b8f7.jpg www.segor.de

mit diesem USB A Stecker
http://www.segor.de/bilder/0000b705.jpg

weil der USBprog aber in der Platine so breit ist, dieses Gehäuse:
http://www.segor.de/bilder/0000aef5.jpg
Autor: Christian Ulrich (z0m3ie)
Datum: 14.07.2007 11:38

Für Notebooks, eine tolle Idee ist auf jeden fall im Hinterkopf.
Allerdings ists für alles andere ungeeignet man kann ja die SPI
Schnittstelle nicht über 3m ziehen, das gibt Fehler ohne ende. Also eben
nur für Notebooks interessant deswegen macht das keiner. Du scheinst die
SPI dort auch ziemlich weit zu ziehen, das wird früher oder später arge
Probleme beim Flashen geben.
Autor: Charly B. (charly)
Datum: 14.07.2007 11:56

Moin ,

Joachim:
warum verwenden alle USB B oder mini B ?
immer irgendwelche Kabel mitschleppen muessen ?
warum sind alle Platinen so breit ?

ganz einfach , damit du auch was zu tun hast und was neues layoutest;
wir sind doch hier eine grosse gemeinschaft und event. haben dann noch
mehr gefallen an deinem projekt ;

ich pers. habe lieber ein kabel im Laptop als ein ´dicker´ programmer
der die usb-buchse mechanisch belastet und ein kabel zum anschluss
des Target brauch man sowieso, iss halt 'geschmacksache' .....


@Christian

i habe die neue platine wegen dem mini-usb und der ´schoenen´
dreifarb LED, wollte jetzt noch den max232 draufpacken und
event. etwas verkleinern, mal schauen

wegen dem bootlader schau doch mal da :
http://www.matwei.de/doku.php?id=de:elektronik:usbisp
ich bin nicht der grosse C programmierer aber du
wirst das sofort verstehn... ;)

ps. wegen den platinen koennen wir mal mailen

see you


Charly
Autor: Christian Ulrich (z0m3ie)
Datum: 14.07.2007 14:15

>wegen dem bootlader schau doch mal da :
>http://www.matwei.de/doku.php?id=de:elektronik:usbisp
>ich bin nicht der grosse C programmierer aber du
>wirst das sofort verstehn... ;)

geht leider nicht da ich den ft232 mit meiner lösung einspare. Und in
die 1024 byte Bootloader Code passt eine CDC Klasse die den Seriellen
Port emuliert einfach nicht rein. Ich muss also mit HID arbeiten im
Bootloader ist auch kein grosses Problem die Firmware dafür ist ja auch
fertig. Aber ich bin schlichtweg noch nicht dazu gekommen die PC
Software zu schreiben. Für Linux hab ich die Hardware ebene fertig dort
wärs noch nichtmal das grosse problem die Software fertig zu machen aber
ich wollte eigentlich erst Windows machen...
Autor: Herby (Gast)
Datum: 17.07.2007 07:55

Hallo Charly,

danke für die Antwort. D+ und D- sind nicht Vertauscht. Im Moment habe
ich nicht viel Zeit weiter auf Fehlersuche zu gehen. Erst muß ich eine
andere Sache fertigstellen. Werde aber zwischendurch hier immer mal
reinschauen.

Gruß Herby
Autor: Joachim B. (jar)
Datum: 17.07.2007 08:29
Dateianhang: web_ISP.jpg (72,4 KB, 164 Downloads)
preview image for web_ISP.jpg

Christian Ulrich wrote:
> Für Notebooks, eine tolle Idee ist auf jeden fall im Hinterkopf.
> Allerdings ists für alles andere ungeeignet man kann ja die SPI
> Schnittstelle nicht über 3m ziehen, das gibt Fehler ohne ende. Also eben
> nur für Notebooks interessant deswegen macht das keiner. Du scheinst die
> SPI dort auch ziemlich weit zu ziehen, das wird früher oder später arge
> Probleme beim Flashen geben.

ziemlich weit ? unter 1m, ich tippe auf 30-70 cm ! habe mehr als ein ISP
Kabel gebaut, weil 3 Prommer auf einzeilige Stecker , Printstecker
einreihige Pfosten im 1/10" Raster für Steckbrett und auf LP dann mit
Steckbuchsen

vielleicht hab ich auch deswegen keine Probleme weil das Kabel
1 so kurz ist
2 ich einzel Adern 0,14mm² nutze

obwohl Flachkabel mit GND zwischen den Signalleitungen ja auch Vorteile
hat
Autor: Joachim B. (jar)
Datum: 17.07.2007 08:30
Dateianhang: web_BC5G2281.jpg (106,6 KB, 591 Downloads)
preview image for web_BC5G2281.jpg

pic 2
Autor: Joachim B. (jar)
Datum: 17.07.2007 08:45

Charly B. wrote:
1.
> ich pers. habe lieber ein kabel im Laptop als ein ´dicker´ programmer
> der die usb-buchse mechanisch belastet und

2.
> ein kabel zum anschluss
> des Target brauch man sowieso, iss halt 'geschmacksache' .....

1. findest du den dick ? der ist mini und leicht !
2. das sind dann schon 2 Kabel ;-)
Autor: Christian Ulrich (z0m3ie)
Datum: 17.07.2007 17:03

Also bei mit sinds nicht bloß 70 cm vom Rechner auf den Schreibtisch und
wenn ich dann noch etwas Freiraum haben will kommt man schnell mal auf
1,2m und das funktioniert über SPI garantiert nicht mehr mit allen
Controllern. Selbst 70cm dürften bei einigen Controllern arge Probleme
bereiten.

>1. findest du den dick ? der ist mini und leicht !
>2. das sind dann schon 2 Kabel ;-)

Ja nur kannst du deine 2. USB Buchse damit auch vergessen. gerad am
Notebook ist die bei mir meißt mit ner externen Maus belegt. Aber wenn
man ein USB Stick artiges Gehäuse findet würde es zumindest am Notebook
recht schick sein.
Autor: Joachim B. (jar)
Datum: 17.07.2007 17:16

Christian Ulrich wrote:
> Also bei mit sinds nicht bloß 70 cm vom Rechner auf den Schreibtisch und
> wenn ich dann noch etwas Freiraum haben will kommt man schnell mal auf
> 1,2m und das funktioniert über SPI garantiert nicht mehr mit allen
> Controllern. Selbst 70cm dürften bei einigen Controllern arge Probleme
> bereiten.

mag sein, ich hab keine Probleme

> Ja nur kannst du deine 2. USB Buchse damit auch vergessen. gerad am
> Notebook ist die bei mir meißt mit ner externen Maus belegt.

das Problem hab ich auch mit beiden DVB-T Sticks, aber genau dafür USB
A-A Verlängerungen in kurz

>Aber wenn
> man ein USB Stick artiges Gehäuse findet würde es zumindest am Notebook
> recht schick sein.

ist schon in Arbeit ;-) Breite nun auf 19mm sollte passen
Autor: Charly B. (charly)
Datum: 17.07.2007 18:11
Dateianhang: usb-prg_.jpg (20,3 KB, 607 Downloads)
preview image for usb-prg_.jpg

Moin

@joachim:

iss dein neues layout fertig ? ;)

meines schon, incl. kleine erweiterung

@Christian

haetteast du interresse eine softerweiteung fuer einen ´pc-losen´
programmer
zu schreiben ? ; ein 24c512 enthaelt die daten, der programmer wird vom
´ziehlsystem´ mit spannung versorgt und auf tastendruck legt er los und
proggramiert den avr

vg
Charly
Autor: Joachim B. (jar)
Datum: 17.07.2007 19:32

Charly B. wrote:
> @joachim:
> iss dein neues layout fertig ? ;)
> meines schon, incl. kleine erweiterung
> vg
> Charly

ich mach doch keines, hab ich nie gesagt, aber Bene ist mit seiner Group
dran:-)
Autor: Christian Ulrich (z0m3ie)
Datum: 18.07.2007 08:38

>haetteast du interresse eine softerweiteung fuer einen ´pc-losen´
>programmer
>zu schreiben ? ; ein 24c512 enthaelt die daten, der programmer wird vom
>´ziehlsystem´ mit spannung versorgt und auf tastendruck legt er los und
>proggramiert den avr

So wie du es vorschlägst nicht aber es wird eine SD Karten
Erweiterungsplatine für meinen Progger geben die man einfach auf die
10-polige ISP Stecken kann Stromversorgung muss trotzdem noch über die
USB Buchse zugeführt werden entweder mit nem Adapter oder über ne USB
Schnittstelle. Wenn ihr die 10-Polige wie bei meinem belegt wird das
natürlich auch mit euren Layouts möglich sein.

Ich würds übrigendes begrüßen wenn ihr eure Layouts auch in der Wiki
einfügt oder verlinkt...
Autor: Charly B. (charly)
Datum: 18.07.2007 20:00
Dateianhang: standalonev1.jpg (158,8 KB, 435 Downloads)
preview image for standalonev1.jpg

Moin moin,

Christian Ulrich wrote:

> So wie du es vorschlägst nicht aber es wird eine SD Karten
> Erweiterungsplatine für meinen Progger geben die man einfach auf die
> 10-polige ISP Stecken kann Stromversorgung muss trotzdem noch über die
> USB Buchse zugeführt werden entweder mit nem Adapter oder über ne USB
> Schnittstelle. Wenn ihr die 10-Polige wie bei meinem belegt wird das
> natürlich auch mit euren Layouts möglich sein.

@Christian:

Warum SD-Karte ?? ein 24c512 oder 24c1024 tuts doch auch ; da passt
selbst ein programm fuer den mega128 rein, findet platz auf der
Programmerplatine und ist wesentlich billiger als eine SD-Karte +
Slot + zusaetzliche Leiterplatte
leider hast du den hardware i2c mit den led´s belegt ;(
also soft-i2c


Leider hab ich keine ahnung von C , kann nur asm oder basic
deswegen dachte ich du koenntest so ein funktion 'flott'  einbinden
Auf dem 10pol ISP liegt jetzt noch auf dem freien Pin PD3, da koennte
ein Taster nach GND den ´pc-losen´ programmer starten, ueber die LED´s
koennte man den status anzeigen


> Ich würds übrigendes begrüßen wenn ihr eure Layouts auch in der Wiki
> einfügt oder verlinkt...

Ist prinzipiell kein problem, habe sowas aber noch nie gemacht, werde
es aber (hoffentlich) lernen, meine Schaltplaen/layouts sind fuer den
privaten, nicht komerziellen gebrauch frei

hier ist mein vorlaeufiges design, wenn mir (oder anderen) nicht
noch was "tolles" einfaelt werde ich anfang August ein paar
Leiterplatten bestellen,
die sollten in Joachim´s "Wunschgehaeuse" passen,
siehe: http://www.segor.de/bilder/0000b8f7.jpg

vg
Charly
Autor: Christian Ulrich (z0m3ie)
Datum: 18.07.2007 23:17

Das Problem was ich damit habe ist, das Programm dann auf den EEPROM zu
bekommen ?! Die Einbindung der Soft I2C und das ansprechen des I2C Proms
ist kein grosses Problem aber noch z.b. ein Z-Modem Protokol zu
implementieren um die Daten auf den EEPROM zu bekommen irgendwo ists
dann auch overkill.
Prinzipiell ist die Idee aber nicht schlecht ich weiss nur noch nicht
wann ich mal wieder dazu komme größere Sprünge zu machen. Bedingung
meinerseits wäre das das die I2C Schnittstelle mit auf der 10-Pol ISP
Landet so das das ganze auch als Erweiterungsboard auf jeder Hardware
landen kann.

Der Umgang mit der Wiki ist ab besten in der Deutschen Wikipedia
beschrieben dort ist sehr ausführlich das erstellen von Artikeln mit
allen möglichen spielchen beschrieben ansonsten schau dir einfach mal
Seitenquelltexte vo mir an ist sehr einfach.
Autor: Charly B. (charly)
Datum: 19.07.2007 01:28

Moin moin,

Christian Ulrich wrote:
> Das Problem was ich damit habe ist, das Programm dann auf den EEPROM zu
> bekommen ?! Die Einbindung der Soft I2C und das ansprechen des I2C Proms
> ist kein grosses Problem aber noch z.b. ein Z-Modem Protokol zu
> implementieren um die Daten auf den EEPROM zu bekommen irgendwo ists
> dann auch overkill.

warum so kompliziert ?, warum Z-modem ?
der programmer ist doch auch eine rs232 ( com(X) unter windows ) oder ?

also, wenn ich ahnung von C haette wuerd ich es so machen:
'magic string´ senden um eeprom programmiermodus einzuleiten
dann die daten zum eeprom senden, fertig
wenn du viel zeit hast kannst du event. intelhex dafuer
implementieren....

wenn ich an die alte modemzeit denke faellt mir folgendes ein:

min. 3sec. pause
dann +++ senden
wieder min. 3 sec.
dann daten senden
fertig

wie gesagt event. intelhex, und man koennte im eeprom den
ziel-avr hinterlegen damit ein ´dummy´ nicht aus versehen
einen falschen avr-typ proggramiert, wahere dann die
delux version.


> Prinzipiell ist die Idee aber nicht schlecht....
so kenn i mich GRINS

> Bedingung > meinerseits wäre das das die I2C Schnittstelle mit
> auf der 10-Pol ISP landet.......
wenn du ´soft-i2c´ kannst du auch rxd und txd zu scl & sda
´umschalten`


> Der Umgang mit der Wiki ist ab besten in der Deutschen Wikipedia
> beschrieben dort ist sehr ausführlich das erstellen von Artikeln mit
> allen möglichen spielchen beschrieben ansonsten schau dir einfach mal
> Seitenquelltexte vo mir an ist sehr einfach.

dann besteht ja noch hoffnung fuer mich grins

vg
Charly
Autor: Charly B. (charly)
Datum: 19.07.2007 08:50

moin moin

@Christian:

mir ist grad eingefallen, du koenntest auch in deinem menue
einen punkt 'download eeprom´ einfuegen , dann alle daten
die kommen zum eeprom ; waehre event. noch einfacher

bei intelhex koennte man mit (EOF) den download beenden,oder
ueber ein Timeout zb. von 3 sec.


vg
Charly
Autor: Michel (Gast)
Datum: 19.07.2007 22:56

Hallo,

ich würde mir gerne den  USB AVR ISP Programmer von Christian Ulrich
nachbauen, habe dazu aber noch eine Frage:

Gibt es unter Mac OS X auch Treiber für den Programmer, so dass dieser
mit AVRDUDE benutzt werden kann?

Dann ein weiteres Problem: Ich habe noch keinen Programmer und stehe
daher vor dem Henne Ei Problem. Wie bekomme ich die Firmware in den
Programmer-uC?

Ich habe in dem Wiki nachgelesen, dass ich einige Steckbrücken setzten
muss, damit der Bootloader des uC startet, nur wie geht es dann weiter?

Im Wiki steht was von "Bitbang ISP Adapter", aber was ist das?

Dann noch eine andere "doofe" Frage: Wenn der uC einen Bootloader
besitzt und der uC ohne viel Aufwand über diesen Bitbang-Modus
programmiert werden kann, wieso dann der Aufwand einen richtigen
Programmer zu erstellen?

Danke für Eure Hilfe.

Michel
Autor: F. Kriewitz (freddy436)
Datum: 19.07.2007 23:29

Michel wrote:
> Dann ein weiteres Problem: Ich habe noch keinen Programmer und stehe
> daher vor dem Henne Ei Problem. Wie bekomme ich die Firmware in den
> Programmer-uC?
z.B. mit einem Parallelport Programmer, den kann man aus einem IC (nen
74XX244) oder sogar nur aus ner Handvoll Widerstände bauen.
Oder man lässt sich einfach einen fertig Programmierten schicken, denke
da sollte sich jemand finden lassen.

> Dann noch eine andere "doofe" Frage: Wenn der uC einen Bootloader
> besitzt und der uC ohne viel Aufwand über diesen Bitbang-Modus
> programmiert werden kann, wieso dann der Aufwand einen richtigen
> Programmer zu erstellen?
Ein neuer µC ist Leer, d.h. auch ohne Bootloader, den muss man auch erst
auf den µC bekommen.
Autor: Johannes Slotta (johanness)
Datum: 20.07.2007 11:34

Und falls man keine parallele Schnittstelle am Rechner hat, wohl aber
eine serielle, geht auch die Programmierschaltung aus dem
Pollin-Atmel-Evaluationsboard. Die geht prima mit Ponyprog. So hab ich
die Programmierung des Controllers geplant - natürlich muss ich den
Programmer erst mal bei Reichelt zusammensuchen und bestellen ;)
Autor: Christian Ulrich (z0m3ie)
Datum: 20.07.2007 13:16

>Gibt es unter Mac OS X auch Treiber für den Programmer, so dass dieser
>mit AVRDUDE benutzt werden kann?

Es gibt mehrere Möglichkeiten die CDC Klasse sollte eigentlich
funktionieren ist aber soweit ich weiß ungestestet. Alternativ kann man
auch eine Firmware verwenden die das ganze über HID macht, damit sollts
auf jeden Fall gehen.

>Ich habe in dem Wiki nachgelesen, dass ich einige Steckbrücken setzten
>muss, damit der Bootloader des uC startet, nur wie geht es dann weiter?

Da dein Controller ja noch keinen Bootloader geflasht hat nützt dir das
gar nichts.

>Im Wiki steht was von "Bitbang ISP Adapter", aber was ist das?

Eine Schaltung bestehend aus einem SubD Stecker und 2 Widerständen mit
der du über den Paralellport und z.b. avrdude flashen kannst dabei wird
die Komplette Kommunikation zwischen Controller und PC in Software vom
PC gemacht das ganze ist ziemlich anfällig und funktioniert auch nicht
mit jedem Paralellport

>Dann noch eine andere "doofe" Frage: Wenn der uC einen Bootloader
>besitzt und der uC ohne viel Aufwand über diesen Bitbang-Modus
>programmiert werden kann, wieso dann der Aufwand einen richtigen
>Programmer zu erstellen?

Siehe oben außerdem brauchst du für die Bitbanging Adapter immer einen
Paralellport und zudem gehts auch nicht mit allen Paralellports. Das
flashen über einen "richtigen" Programmer geht viel schneller und ist
weniger anfällig ausserdem hat man eine USB Schnittstelle überall zur
verfügung einen Paralellport aber nicht (z.b. Notebook).

Wenn du das mit dem MacOS näher ausloten willst bzw deine Hardware
fertig hast meld dich mal per mail bei mir dann können wir zusehn das
wir den rest gut hinbekommen und ich hab gleich alle nötigen
Informationen um es ordentlich zu dokumentieren...
Autor: Christian Ulrich (z0m3ie)
Datum: 20.07.2007 13:19

Nochmal zu dem EEPROM Problem Z-Modem ist ein protokoll um Dateien über
die Serielle Schnittstelle zu übertragen das hat nichts mit nem
eigentlichen Modem zu tun. Wenn ich das nicht darüber implementiere muss
ich zusätzlich auch noch eine PC Software schreiben um die Daten auf den
EEPROM zu bekommen eien SD Karte ist da im ersten Schritt einfacher. Ich
hab aber nichts gegen ein Aufsteckmodul mit nem EEPROM ist
Softwareseitig etwas mehr aufwand aber geht auch und ist günstiger.
Autor: Michel (Gast)
Datum: 20.07.2007 14:21

Hallo,

Wenn ich nun den uC auf dem Programmer das erste mal über den Bitbang
ISP Adapter programmiert habe, wird auch ein Bootloader auf dem uC
eingerichtet, mit dem es dann möglich ist, eine neue Firmware ohne
diesen Bitbang ISP Adapter zu flashen?

Habe ich das so richtig verstanden?

Bis dann...

Michel
Autor: Joachim B. (jar)
Datum: 20.07.2007 15:06

Michel wrote:
> Hallo,
>
> Wenn ich nun den uC auf dem Programmer das erste mal über den Bitbang
> ISP Adapter programmiert habe, wird auch ein Bootloader auf dem uC
> eingerichtet, mit dem es dann möglich ist, eine neue Firmware ohne
> diesen Bitbang ISP Adapter zu flashen?
>
> Habe ich das so richtig verstanden?
>
> Bis dann...
>
> Michel



im Prinzip richtig verstanden

WENN du beim ersten Mal über den Bitbang ISP Adapter einen Bootloader
richtig in den Atmel programmiert hast , DANN kannst du zukünftig ......
Autor: Charly B. (charly)
Datum: 20.07.2007 18:02

moin moin,

@christian:

ich glab ich hab mich weiter oben vielleicht etwas falsch
ausgedrueckt,sorry

> Nochmal zu dem EEPROM Problem Z-Modem ist ein protokoll um Dateien über
> die Serielle Schnittstelle zu übertragen das hat nichts mit nem
> eigentlichen Modem zu tun.

ja ja das ist mir schon klar, i kenn das noch aus der zeit als ein
2400Bd
modem was schnelles war ;)

ich versteh aber nicht warum du so auf Z-modem ´stehst´ ; z-modem ist
ein
protokoll mit fehlerkorrektur und mit resume funktion was bei
uebertragung
ueber telefonleitungen ja auch sinnvoll ist

hier sind es aber nur 1-2 meter kabel bis zum eeprom, also waehre das
meine
meinung nach mit kanonen auf spatzen geschossen

ich habe andere anwendungen da sende ich die daten ueber die v24 und der
avr legt sie im 24c512 ab, hatte da noch nie probleme.
ich sende die daten mit einem termialprg. (nicht hyperterm) uber die
rs232
zum avr der sie im eeprom ablegt, ein timer beendet die uebertragung
wenn 3sec. keine neuen Daten kommen

so aehnlich hatte ich das hier auch gedacht, fangen wir doch zuerst
klein an ;)

vg
Charly
Autor: