AVR-Programmieradapter: Difference between revisions

From Chaosdorf Wiki
Jump to navigation Jump to search
m (moved AVR programmers to AVR-Programmieradapter: aus Gründen)
No edit summary
(23 intermediate revisions by 6 users not shown)
Line 1: Line 1:
m0dul A6 -> RST
{{Project
m0dul A8 -> SCK
|name=AVR-Programmieradapter
m0dul B6 -> MOSI
|description=r0ket AVR Programmer
m0dul B8 -> MISO
|project category=Hardware
m0dul A5/B5 -> GND
|image=r0ket flash spi.jpg
m0dul A12/B12 -> VCC
|status=stable
|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.


See [https://github.com/penma/r0ket/commit/6630ac49 firmware and avrdude patch] by penma.
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.


== Patch für avrdude ==
Die AVRs werden dazu wie folgt an den m0dulbus angeschlossen (Pins sind im Datasheet des AVRs nachzuschlagen):


Works for avrdude 5.11.1. For example:
A6 -> RST
A8 -> SCK
B6 -> MOSI
B8 -> MISO
A5  oder B5  -> GND
A12 oder B12 -> VCC


apt-get source avrdude
[https://github.com/penma/r0ket/commit/6630ac49 Firmware und avrdude-Patch] (von {{U|penma}}).
cd avrdude-5.11.1
patch -p1 < .../avrdude-r0ket.diff
autoreconf
./configure
make
sudo make install # or set config file when invoking avrdude


== Usage ==
== Firmware bauen ==


./avrdude -P /dev/ttyACM0 -c r0ket ''usual options''
<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 ==
 
Getestet mit [http://download.savannah.gnu.org/releases/avrdude/ 5.11.1] Man tue dies:
<source lang="bash">
apt-get source avrdude
cd avrdude-5.11.1
patch -p1 < .../avrdude-r0ket.diff
autoreconf
./configure
make
</source>
 
== avrdude ausführen ==
 
<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.
 
== Gebaute Programmieradapter ==
 
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>
File:r0ket flash spi adap.jpg|r0ket <-> 10 Pin AVR-ISP-Kabel
File:r0ket flash avr.jpg|r0ket <-> ATTiny2313 Sockel
File:R0ket avrisp feuerrot.jpg|r0ket <-> 10 Pin AVR-ISP-Kabel V1.337
</gallery>


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

Revision as of 20:33, 22 January 2018

AVR-Programmieradapter stable
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

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

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

./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

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.