mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Atmel-ICE mit AVR unter Linux / atprogram.exe-Ersatz


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
Autor: Marcus H. (Firma: www.harerod.de) (lungfish) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Zusammen,

für einen räumlich entfernten Kollegen, der unter irgendeinem Linux 
arbeitet, suche ich ein Commandline-Werkzeug das die Funktion von 
atprogram.exe übernimmt.

Konkret möchte ich über den Atmel-ICE in einem Tiny1616 einen UPDI-Reset 
ausführen. In atprogram.exe sähe das ungefähr so aus:
atprogram -t atmelice -i updi -d attiny1616 reset

Das Kommando soll in ein Skript eingebaut werden.

Ich habe selbst aktuell kein Linux hier, möchte dem Kollegen aber 
zumindest einen Tipp geben können.

Danke,
 marcus

Autor: Jim M. (turboj)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Schau Dir mal avrdude an.

Autor: Marcus H. (Firma: www.harerod.de) (lungfish) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für die Rückmeldung.
Ich hatte vor meinem Eingangspost ein bisserl rumrecherchiert, wurde 
aber aus den Suchergebnissen, inkl. avrdude, nicht schlau.

->
Konkret möchte ich über den Atmel-ICE in einem Tiny1616 einen UPDI-Reset
ausführen. In atprogram.exe sähe das ungefähr so aus:
atprogram -t atmelice -i updi -d attiny1616 reset
<-

Bezüglich avrdude:
Wie würde das von mir beschriebene Kommando mit avrdude aussehen?

Autor: Axel S. (a-za-z0-9)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Marcus H. schrieb:
> Konkret möchte ich über den Atmel-ICE in einem Tiny1616 einen UPDI-Reset
> ausführen.

Was nennst du "einen UPDI-Reset"? Willst du einfach nur ein Reset auf 
dem Target-µC ausführen?

> In atprogram.exe sähe das ungefähr so aus:
> atprogram -t atmelice -i updi -d attiny1616 reset
>
> Wie würde das von mir beschriebene Kommando mit avrdude aussehen?

Da man den µC reseten muß, um mit ISP oder UPDI zu sprechen, würde ich 
einfach irgendeine lesende Operation ausführen. Z.B. ein Fuse-Byte 
lesen. Natürlich muß man avrdude den µC und vor allem den Programmer 
(ATMEL ICE im UPDI Modus) richtig verklickern. Dazu braucht man die -p 
und -c Kommandozeilenoptionen.

Allerdings braucht man eine brandneue avrdude Version, die das ICE als 
UPDI Programmer unterstützt. Ich habe weder ein ICE noch einen UPDI 
fähigen µC, deswegen kann ich das nicht testen.

Autor: Marcus H. (Firma: www.harerod.de) (lungfish) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Axel S. schrieb:
> Marcus H. schrieb:
>> Konkret möchte ich über den Atmel-ICE in einem Tiny1616 einen UPDI-Reset
>> ausführen.
>
> Was nennst du "einen UPDI-Reset"? Willst du einfach nur ein Reset auf
> dem Target-µC ausführen?

Das hier:
-> atprogram -t atmelice -i updi -d attiny1616 reset <-
Reset der MCU über UPDI. Der Resetcontroller zeigt dann der Firmware 
beim Start, dass UPDI die Resetquelle war (statt WDT oder POR). Damit 
wird ein für diesen Reset spezifisches Verhalten ermöglicht.

>
>> In atprogram.exe sähe das ungefähr so aus:
>> atprogram -t atmelice -i updi -d attiny1616 reset
>>
>> Wie würde das von mir beschriebene Kommando mit avrdude aussehen?
...
> Allerdings braucht man eine brandneue avrdude Version, die das ICE als
> UPDI Programmer unterstützt. Ich habe weder ein ICE noch einen UPDI
> fähigen µC, deswegen kann ich das nicht testen.
Ich finde keine avrdude Doku, die beschreibt wie der Befehl aussehen 
sollte.
Ein Linux in einer VM würde ich zum Testen noch zur Not noch aufsetzen.
-> https://sourceforge.net/p/ardude/home/Home/

: Bearbeitet durch User
Autor: Marcus H. (Firma: www.harerod.de) (lungfish) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
In der Zwischenzeit habe ich Ubuntu 18.04LTS in eine VM installiert und 
den Atmel-ICE angehängt.

Dann habe ich gemäß diesem Link
http://ubuntuhandbook.org/index.php/2017/01/install-avrdude-6-4-ubuntu-16-04/ 
den avrdude installiert.

sudo add-apt-repository ppa:ubuntuhandbook1/apps
sudo apt-get update
sudo apt-get install avrdude avrdude-doc

Leider kennt avrdude in der aktuellen Version 6.3 den attiny1616 nicht.


Hat jemand eine weitere Idee, wie man unter Ubuntu 18.04LTS einen 
attiny1616 programmieren kann?

Autor: guest (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Axel S. schrieb:
> Allerdings braucht man eine brandneue avrdude Version, die das ICE als
> UPDI Programmer unterstützt.

Brandneu ist wohl relativ, wenn ich das richtig sehe sind die 
entsprechenden Änderungen Anfang 2018 reingekommen.

Marcus H. schrieb:
> aktuellen Version 6.3

Die ist allerdings alles andere als aktuell, die stammt aus 2016.

Autor: Np R. (samweis)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
guest schrieb:
> Brandneu ist wohl relativ, wenn ich das richtig sehe sind die
> entsprechenden Änderungen Anfang 2018 reingekommen.
Wo sind die reingekommen?

Auf der Projekt-Homepage ( http://savannah.nongnu.org/projects/avrdude ) 
finde ich als letzte Version die 6.3.

Autor: Np R. (samweis)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Leider behandelt Microchip Linux etwas stiefmütterlich.

Wenn es nur darum geht, per Linux und updi einen  Reset zu senden, 
scheint es mir erfolgversprechender, das ganze Atmel/Microchip-Geraffel 
an die Seite zu legen und es statt dessen zu versuchen mit:

Pyupdi: https://github.com/mraardvark/pyupdi/blob/master/pyupdi.py
cupdi: https://github.com/PitterL/cupdi
jtag2updi: https://github.com/ElTangas/jtag2updi

und entsprechender, leicht verfügbarer Hardware. Für die ersten beiden 
braucht's nur einen USB-seriell Adapter, für jtag2updi einen Atmega328p 
bzw. Arduino Nano oder Uno.

Autor: guest (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Np R. schrieb:
> Wo sind die reingekommen?
>
> Auf der Projekt-Homepage ( http://savannah.nongnu.org/projects/avrdude )
> finde ich als letzte Version die 6.3.

In den Sourcen:
https://savannah.nongnu.org/svn/?group=avrdude
bzw. direkt:
http://svn.savannah.gnu.org/viewvc/avrdude/trunk/avrdude/

Beitrag #5999605 wurde vom Autor gelöscht.
Autor: Np R. (samweis)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
guest schrieb:

> In den Sourcen:
> https://savannah.nongnu.org/svn/?group=avrdude
Danke!

Habe ich gleich mal gezogen und ein Debian-Paket davon gebaut.
Nur um dann erst festzustellen, dass die Version in Debian Buster auch 
schon bis svn commit 1429 geht....

Autor: Np R. (samweis)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Marcus H. schrieb:
> Hat jemand eine weitere Idee, wie man unter Ubuntu 18.04LTS einen
> attiny1616 programmieren kann?

Die avrdude-Version in meinem Debian Buster unterstützt den Attiny1616.
Da Ubuntu 18.04 auf (einer frühen Version von) Debian Buster basiert, 
sollte es möglich sein, relativ schmerzfrei das Debian-Buster Paket auf 
dem Ubuntu zu installieren.
Auf einer Produktiv-Maschine würde ich Pakete unterschiedlicher Distris 
nicht mischen. In einer VM nur für diesen Zweck spricht aber nichts 
dagegen.

Autor: Marcus H. (Firma: www.harerod.de) (lungfish) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo samweis,
danke für Deine Bemühungen. Ich bin fasziniert davon, dass es unter 
Linux eine ganze Reihe von Möglichkeiten gibt, irgendwie einen AVR zu 
flashen. Was nicht wirklich direkt unterstützt wird, sind aktuelle Chips 
mit dem kommerziellen Standardbrenner AtmelICE. Der Bedarf an 
professionellen Werkzeugen scheint hier nicht zu bestehen.

Np R. schrieb:
> Leider behandelt Microchip Linux etwas stiefmütterlich.
Zumindest was die Atmel-Schiene angeht. MPLAB gibt es für Linux.
>
> Wenn es nur darum geht, per Linux und updi einen  Reset zu senden,
> scheint es mir erfolgversprechender, das ganze Atmel/Microchip-Geraffel
> an die Seite zu legen und es statt dessen zu versuchen mit:
>
> Pyupdi: https://github.com/mraardvark/pyupdi/blob/master/pyupdi.py
> cupdi: https://github.com/PitterL/cupdi
> jtag2updi: https://github.com/ElTangas/jtag2updi
>
> und entsprechender, leicht verfügbarer Hardware. Für die ersten beiden
> braucht's nur einen USB-seriell Adapter, für jtag2updi einen Atmega328p
> bzw. Arduino Nano oder Uno.

Leicht verfügbare Hardware wäre im professionellen Umfeld eher der für 
wenig Geld vom Hersteller gelieferte Atmel-ICE.
Wir haben eine Entwicklungs-/Prüfhardware für Windows. Im Moment mag ich 
nicht glauben, was für eine Aktion es ist, diese unter Linux, in diesem 
Fall Ubuntu 18.04LTS zum Laufen zu bringen.
Natürlich könnte ich die Prüfhardware umbauen, aber das ist irgendwie 
hirnrissig.

Np R. schrieb:
> Marcus H. schrieb:
>> Hat jemand eine weitere Idee, wie man unter Ubuntu 18.04LTS einen
>> attiny1616 programmieren kann?
>
> Die avrdude-Version in meinem Debian Buster unterstützt den Attiny1616.
> Da Ubuntu 18.04 auf (einer frühen Version von) Debian Buster basiert,
> sollte es möglich sein, relativ schmerzfrei das Debian-Buster Paket auf
> dem Ubuntu zu installieren.
> Auf einer Produktiv-Maschine würde ich Pakete unterschiedlicher Distris
> nicht mischen. In einer VM nur für diesen Zweck spricht aber nichts
> dagegen.
Danke, den Tipp werde ich mal an den Linux-Kollegen weitergeben.

Wie oben bereits geschrieben - danke für Deine Bemühungen.

Grüße,
 marcus

Autor: Marcus H. (Firma: www.harerod.de) (lungfish) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Np R. schrieb:
> guest schrieb:
>
>> In den Sourcen:
>> https://savannah.nongnu.org/svn/?group=avrdude
> Danke!
>
> Habe ich gleich mal gezogen und ein Debian-Paket davon gebaut.
> Nur um dann erst festzustellen, dass die Version in Debian Buster auch
> schon bis svn commit 1429 geht....

Heißt das, dass Du eine einfache Möglichkeit gefunden hast, einen Atmel 
ICE / attiny1616 kompatiblen avrdude in Ubuntu 18.04LTS zu installieren?
Wie läuft das ab?

Danke Dir,
 marcus

Autor: Np R. (samweis)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Marcus H. schrieb:
> Heißt das, dass Du eine einfache Möglichkeit gefunden hast, einen Atmel
> ICE / attiny1616 kompatiblen avrdude in Ubuntu 18.04LTS zu installieren?
> Wie läuft das ab?
>
> Danke Dir,
>  marcus

Nach dem Posting von guest 
Beitrag "Re: Atmel-ICE mit AVR unter Linux / atprogram.exe-Ersatz" 
habe ich mir die aktuellen Quellen ("trunk") von avrdude 
heruntergeladen, kompiliert und ein Debian-Paket davon gebaut.

Das geht auf jeden Fall auch auf dem Ubuntu.
Eine Anleitung dazu gibt's in den Quellen selbst: 
http://svn.savannah.gnu.org/viewvc/avrdude/trunk/avrdude/BUILD-FROM-SVN?view=markup
Ein paar Header-Dateien und Dependencies wirst Du noch brauchen.

Das so erstellte Paket ist aber genauso aktuell wie das aktuelle Paket 
aus Debian Buster.

Du kannst aber auch einfach das avrdude-Paket aus Debian Buster herunter 
laden: https://packages.debian.org/buster/avrdude
Das sollte mit dpkg -i <Paketname> auf dem Ubuntu installierbar sein 
(könnte aber erfordern, dass Du Abhängigkeiten nachinstallieren musst).

Oder Du benutzt gleich eine Debian Buster VM.

Autor: Marcus H. (Firma: www.harerod.de) (lungfish) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich stehe hier gerade wie die Kuh vorm Gnu...

Als Zielsystem ist Ubuntu 18.04LTS vorgegeben.
Tatsächlich fehlen ein paar Abhängigkeiten.
Insbesondere kennt aptitude unter Ubuntu 18.04LTS  nur libtinfo5.


mah@ubuntu:~$ sudo dpkg -i avrdude_6.3-20171130+svn1429-2_amd64.deb
(Reading database ... 134695 files and directories currently installed.)
Preparing to unpack avrdude_6.3-20171130+svn1429-2_amd64.deb ...
Unpacking avrdude (6.3-20171130+svn1429-2) over (6.3-20171130+svn1429-2) 
...
dpkg: dependency problems prevent configuration of avrdude:
 avrdude depends on libhidapi-libusb0 (>= 
0.8.0~rc1+git20140201.3a66d4e+dfsg); however:
  Package libhidapi-libusb0 is not installed.
 avrdude depends on libncurses6 (>= 6); however:
  Package libncurses6 is not installed.
 avrdude depends on libtinfo6 (>= 6); however:
  Package libtinfo6 is not installed.

dpkg: error processing package avrdude (--install):
 dependency problems - leaving unconfigured
Processing triggers for man-db (2.8.3-2ubuntu0.1) ...
Errors were encountered while processing:
 avrdude

  * *

Start von AVRDUDE:

mah@ubuntu:~$ avrdude
avrdude: error while loading shared libraries: libhidapi-libusb.so.0: 
cannot open shared object file: No such file or directory


  * *

Kannst Du mir bitte einen Tipp geben, wie es hier weitergeht?

: Bearbeitet durch User
Autor: Np R. (samweis)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Marcus H. schrieb:
> dpkg: dependency problems prevent configuration of avrdude:
Das ist normal.
dpkg installiert nur das Paket aber nicht dessen Abhängigkeiten. Es 
meckert nur, dass diese Abhängigkeiten fehlen.

Wenn Du jetzt z.B. aptitude startest, wird es Dir avrdude als "broken 
package" anzeigen. Aptitude kümmert sich aber auch um die Auflösung von 
Abhängigkeiten. Wenn Du in aptitude "e" drückst, zeigt Dir der 
Anhängigkeits-Auflöser die Möglichkeiten an, das Problem zu beheben. 
Blättern zwischen den Lösungen kannst Du mit "," und ".".
Eine Lösung wird sein, einfach avrdude wieder zu deinstallieren. Das 
willst du natürlich nicht. ;-)
Die andere Lösung sollte sein, die fehlenden Pakete nachzuinstallieren.

Diese sollten in den Ubuntu Repositories alle vorhanden sein. Es kann 
aber sein, dass die Versionen in dem alten Ubuntu zu alt sind. (Dann 
findet aptitude keine Lösung, sondern meckert, dass Paket abc nicht in 
Version xy verfügbar ist).
Dann müsstest Du die entsprechenden Pakete, auf die dies zutrifft, auch 
noch aus dem Debian Buster Repo holen.
Mit der Gefahr, dass auch diese wieder Abhängigkeiten nach sich 
ziehen...

Probier's einfach. Möglicherweise reicht das Ubuntu Repo. Dann bist Du 
schnell fertig.
Wenn nicht und wenn es zu kompliziert wird, bleiben Dir zwei 
Möglichkeiten:

1. Debian Buster VM
2. avrdude aus den Quellen selber kompilieren.
Dazu solltest Du vorher folgende Pakete installieren:
libhidapi-dev
libftdi1-dev
libusb-1.0-0-dev
libbison-dev

und wahrscheinlich auch noch
bison
flex
byacc
autoconf
build-essential
wenn die noch nicht installiert sind.

(Sollte ich etwas vergessen haben, wird ./configure schon meckern ;-) ).

: Bearbeitet durch User
Autor: Jörg W. (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Np R. schrieb:
> Leider behandelt Microchip Linux etwas stiefmütterlich.

Kann man in diesem Falle gar nicht mal so sagen. Der UPDI-Code ist von 
Atmicrochip direkt aus Norwegen ins AVRDUDE gekommen. Es bin hier eher 
ich, der einfach keine Zeit findet, endlich mal alle möglichen Bugs und 
Patches durchzugehen, und der sich andererseits schämt, einfach den 
Status Quo als Version 6.4 mal rauszublasen.

Aber vielleicht wäre die letztgenannte Variante wirklich die vorerst 
günstigste, nachdem nun die UPDI-basierten AVRs deutlich an Masse 
zugenommen haben. Ist schade, dass der entsprechende Code bislang nur im 
SVN und noch nicht in einem Release ist.

Wenn drei Leute jetzt rufen: „Ja, mach das so!“, dann mach ich es. :-)

Autor: Aber Aber (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jörg W. schrieb:
> dann mach ich es.

Ja wie jetzt, mit Bugfixes oder einfach den Status rauslasen?

Autor: Jörg W. (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Aber Aber schrieb:
> Jörg W. schrieb:
>> dann mach ich es.
>
> Ja wie jetzt, mit Bugfixes oder einfach den Status rauslasen?

Letzteres. Mehr als das habe ich mir zwar immer mal vorgenommen, aber 
dann doch bloß nicht die Zeit gefunden – weshalb sich ein Release immer 
weiter rausschiebt. :(

Also, wenn hier jemand auftaucht und mir zusichert, dass er die Bug- und 
Patchliste durchzugehen gewillt ist und dann die entsprechenden 
Codeänderungen einpflegt, testet und ggf. die Doku anpasst, dann würde 
er von mir sofort Commit-Rechte bekommen. Das Problem ist ja nur, dass 
ich (ungewollt) Einzelkämpfer bin und eben auch noch 'ne ganze Menge 
anderer Dinge an der Backe habe.

Autor: Aber Aber (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jörg W. schrieb:
> Wenn drei Leute jetzt rufen: „Ja, mach das so!“, dann mach ich es.

Dann melde ich mich jetzt mit drei verschiedenen User Namen
an und rufe "Ja, mach das so!"

Autor: Np R. (samweis)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jörg W. schrieb:
> Wenn drei Leute jetzt rufen: „Ja, mach das so!“, dann mach ich es. :-)

Eins.

De facto ist die Version "6.4" ja schon Teil z.B. von Debian stable (als 
Version "6.3-20171130+svn1429-2").

Jörg W. schrieb:
> Das Problem ist ja nur, dass
> ich (ungewollt) Einzelkämpfer bin und eben auch noch 'ne ganze Menge
> anderer Dinge an der Backe habe.

Das verstehe ich.
Genauso, wie ich auch verstehe, dass aus so etwas schnell eine 
(würgende) Verpflichtung wird und viele Angst haben, sie nicht wieder 
los zu werden.
Deine Werbung ist also etwas ungeschickt. ;-)

Autor: Jörg W. (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Np R. schrieb:

> De facto ist die Version "6.4" ja schon Teil z.B. von Debian stable (als
> Version "6.3-20171130+svn1429-2").

Ist ein Argument.

> Deine Werbung ist also etwas ungeschickt. ;-)

Naja, ich wollte hier auch nicht wie ein Staubsaugerverkäufer auftreten. 
:)

Autor: Marcus H. (Firma: www.harerod.de) (lungfish) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Np R. schrieb:
...

Woah, danke. Ich habe diesen Thread an den Kollegen weitergeleitet.
Bin gespannt, wie wir das Thema lösen werden. Werde Meldung erstatten.

Autor: Np R. (samweis)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jörg W. schrieb:
> Naja, ich wollte hier auch nicht wie ein Staubsaugerverkäufer auftreten.
> :)

Ich wollte nur sagen, dass Du vielleicht mehr Erfolg hast, wenn Du 
"Häppchen" anbietest, statt interessierte Enthusiasten gleich mit 175 
offenen Bugs zu erschlagen (von denen, wenn ich das richtig sehe, 
zumindest ein Teil sowieso BS ist). ;-)

@ Marcus H.

Np R. schrieb:
> Wenn Du jetzt z.B. aptitude startest,
Synaptic geht natürlich auch. Ich weiß nicht, welche Vorlieben oder 
Vorkenntnisse Dein Kollege hat.
Zum Bauen des Paketes gibt es ja prinzipiell auch zwei Möglichkeiten:
1. Den des upstream-Entwicklers:
./bootstrap
./configure
make
sudo checkinstall -D make install (checkinstall muss installiert sein).

2. Der offizielle Debian Weg:
Buster Quell-Pakete der /etc/apt/sources.list hinzufügen (deb-src ...)
apt-get build-dep avrdude
apt-get source avrdude
dpkg-buildpackage -us -uc
...

Keine Ahnung, was ich da raten soll. Viele Wege führen nach Rom...

Autor: Jörg W. (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Np R. schrieb:
> Ich wollte nur sagen, dass Du vielleicht mehr Erfolg hast, wenn Du
> "Häppchen" anbietest, statt interessierte Enthusiasten gleich mit 175
> offenen Bugs zu erschlagen

Wenn mal jemand 10 oder 20 Bugs oder Patches so einigermaßen am Stück 
durchgehen und entweder bestätigen und reparieren oder schließen würde, 
wäre das ein guter Anfang.

Selbst dazu komme ich nicht. Sind immer mal nur ein oder zwei geworden, 
die ich so nebenbei noch mit hinbekommen habe.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.