AVR-Programmieradapter: Difference between revisions

From Chaosdorf Wiki
m (word)
mNo edit summary
 
(20 intermediate revisions by 5 users not shown)
Line 1: Line 1:
[[File:r0ket flash spi.jpg|right|thumb|Flashing a Fnordlicht SMD via ISP]]
{{Project
 
|name=AVR-Programmieradapter
|description=r0ket AVR Programmer
|project category=Hardware
|image=r0ket flash spi.jpg
|status=obsolete
|people={{U|penma}}
|source=https://github.com/penma/r0ket/commit/6630ac49{{!}}github
}}
AVR-Programmieradapter fehlen gerne genau dann, wenn man gerade ein AVR-Projekt im Kopf hat. Falls dieser überhaupt vorhanden ist, stellt man dann fest, dass moderne Rechner keine RS232-Schnittstelle mehr besitzen. Ein günstiges und einfach zu bauendes USB-Device wird benötigt.
AVR-Programmieradapter fehlen gerne genau dann, wenn man gerade ein AVR-Projekt im Kopf hat. Falls dieser überhaupt vorhanden ist, stellt man dann fest, dass moderne Rechner keine RS232-Schnittstelle mehr besitzen. Ein günstiges und einfach zu bauendes USB-Device wird benötigt.


Da ja ohnehin jeder eine r0ket hat, kann man diese ja zum Programmieren benutzen. Mit einer modifizierten Firmware meldet sich die Rakete als USB-TTY und ein gepatchter avrdude kann dann mit den Chips reden.
Da ja ohnehin jeder eine [[r0ket]] hat, kann man diese ja zum Programmieren benutzen. Mit einer modifizierten Firmware meldet sich die Rakete als USB-TTY und ein gepatchter avrdude kann dann mit den Chips reden.


Die AVRs werden dazu wie folgt an den m0dulbus angeschlossen (Pins sind im Datasheet des AVRs nachzuschlagen):
Die AVRs werden dazu wie folgt an den m0dulbus angeschlossen (Pins sind im Datasheet des AVRs nachzuschlagen):
Line 14: Line 21:
  A12 oder B12 -> VCC
  A12 oder B12 -> VCC


[https://github.com/penma/r0ket/commit/6630ac49 Firmware und avrdude-Patch] (von penma).
[https://github.com/penma/r0ket/commit/6630ac49 Firmware und avrdude-Patch] (von {{U|penma}}).
 
== Firmware bauen ==
 
<source lang="bash">
cd r0ket/firmware/
make clean
make APP=avrflash TABLE=NO USBSERIAL=YES clean all
cp avrflash.bin firmware.bin
# firmware.bin flashen (http://www.r0ket.de/init)
</source>


== avrdude patchen ==
== avrdude patchen ==


Getestet mit 5.11.1. Man tue dies:
Getestet mit [http://download.savannah.gnu.org/releases/avrdude/ 5.11.1] Man tue dies:
 
<source lang="bash">
apt-get source avrdude
apt-get source avrdude
cd avrdude-5.11.1
cd avrdude-5.11.1
patch -p1 < .../avrdude-r0ket.diff
patch -p1 < .../avrdude-r0ket.diff
autoreconf
autoreconf
./configure
./configure
make
make
</source>


== avrdude ausführen ==
== avrdude ausführen ==


./avrdude -C ./avrdude.conf -P /dev/ttyACM0 -c r0ket ''normale Optionen''
<source lang="bash">./avrdude -C ./avrdude.conf -P /dev/ttyACM0 -c r0ket ''normale Optionen''</source>


Alternativ wird der gepatchte avrdude systemweit installiert, dann entfällt die Angabe von -C.
Alternativ wird der gepatchte avrdude systemweit installiert, dann entfällt die Angabe von -C.
Line 35: Line 53:
== Gebaute Programmieradapter ==
== Gebaute Programmieradapter ==


Da eine fliegende Verdrahtung recht fummelig und fehleranfällig ist, wurden fertige Adapter m0dulbus<->Programmieranschluss gebaut. Bisher wurden zwei Adapter gefertigt. Beide befinden sich auf dem [[Lötecke#Stack|Mikrofoo-Stack]] in der Lötecke.
Da eine fliegende Verdrahtung recht fummelig und fehleranfällig ist, wurden fertige Adapter m0dulbus<->Programmieranschluss gebaut. Bisher wurden drei Adapter gefertigt. Sie befinden sich auf dem [[Kabelbaum]].


<gallery>
<gallery>
File:r0ket flash spi adap.jpg|r0ket <-> 10 Pin AVR-ISP-Kabel
File:r0ket flash spi adap.jpg|r0ket <-> 10 Pin AVR-ISP-Kabel
File:r0ket flash avr.jpg|r0ket <-> ATTiny2313 Sockel
File:r0ket flash avr.jpg|r0ket <-> ATTiny2313 Sockel
File:R0ket avrisp feuerrot.jpg|r0ket <-> 10 Pin AVR-ISP-Kabel V1.337
</gallery>
</gallery>


[[Category:Mikrofoo]]
[[Category:Mikrofoo]]

Latest revision as of 18:27, 30 June 2020

AVR-Programmieradapter obsolete
R0ket flash spi.jpg
r0ket AVR Programmer
Beteiligt penma
Quelltext github

AVR-Programmieradapter fehlen gerne genau dann, wenn man gerade ein AVR-Projekt im Kopf hat. Falls dieser überhaupt vorhanden ist, stellt man dann fest, dass moderne Rechner keine RS232-Schnittstelle mehr besitzen. Ein günstiges und einfach zu bauendes USB-Device wird benötigt.

Da ja ohnehin jeder eine r0ket hat, kann man diese ja zum Programmieren benutzen. Mit einer modifizierten Firmware meldet sich die Rakete als USB-TTY und ein gepatchter avrdude kann dann mit den Chips reden.

Die AVRs werden dazu wie folgt an den m0dulbus angeschlossen (Pins sind im Datasheet des AVRs nachzuschlagen):

A6 -> RST
A8 -> SCK
B6 -> MOSI
B8 -> MISO
A5  oder B5  -> GND
A12 oder B12 -> VCC

Firmware und avrdude-Patch (von penma).

Firmware bauen[edit | edit source]

cd r0ket/firmware/
make clean
make APP=avrflash TABLE=NO USBSERIAL=YES clean all
cp avrflash.bin firmware.bin
# firmware.bin flashen (http://www.r0ket.de/init)

avrdude patchen[edit | edit source]

Getestet mit 5.11.1 Man tue dies:

apt-get source avrdude
cd avrdude-5.11.1
patch -p1 < .../avrdude-r0ket.diff
autoreconf
./configure
make

avrdude ausführen[edit | edit source]

./avrdude -C ./avrdude.conf -P /dev/ttyACM0 -c r0ket ''normale Optionen''

Alternativ wird der gepatchte avrdude systemweit installiert, dann entfällt die Angabe von -C.

Gebaute Programmieradapter[edit | edit source]

Da eine fliegende Verdrahtung recht fummelig und fehleranfällig ist, wurden fertige Adapter m0dulbus<->Programmieranschluss gebaut. Bisher wurden drei Adapter gefertigt. Sie befinden sich auf dem Kabelbaum.