Forum: Mikrocontroller und Digitale Elektronik Suche Bootloader für Atmega644p


von Joern DK7JB .. (moin)


Lesenswert?

Hallo,
vielleicht könnt ihr mir weiterhelfen. Ich suche einen kompilierten 
Bootloader für den Atmega644p mit 16MHz oder 18,432MHz.
Schön wäre ein Arduino-Bootloader. Gibt es vielleicht bessere 
Alternativen?

von Suchdepp (Gast)


Lesenswert?

Joern D. schrieb:
> vielleicht könnt ihr mir weiterhelfen.

- ist dein Gugel kaputt?
- zu faul zum suchen?

SCNR.

https://forum.arduino.cc/index.php?topic=45494.0

von Purzel H. (hacky)


Lesenswert?

> Ich suche einen kompilierten Bootloader für den Atmega644p mit 16MHz oder 
18,432MHz.

Uiii ... ohne weitere Spezifikationen, ohne weiteres Interesse an 
Spezifikationen .. sehr mager.

von Joern DK7JB .. (moin)


Lesenswert?

Was braucht ihr noch für Spezifikationen?
Bisher habe ich einen Arduino Nano mit einem 328p und dem 
Arduino-Bootloader verwendet. Das hat immer gut funktioniert. Nun ist er 
mir zu klein geworden und ich versuche auf einen Atmega644p 
auszusatteln.
Für den Bootloader stehen zur Verfügung TXD0 und RXT0 und DTR über einem 
Kondensator an Reset. Den Quarz kann ich zwischen 16MHz und 20 MHz 
anpassen.

Mit den Informationen von Suchdepp kann ich leider nichts anfangen. Auf 
dieser Seite sind die Boodloader-Hex Files sehr versteckt und 
funktionieren nicht und die Dokumentation ist für mich icht 
verständlich. Eine der Files lässt sich auch nicht fehlerfrei brennen.

: Bearbeitet durch User
von Stefan E. (sternst)


Lesenswert?

Joern D. schrieb:
> Ich suche einen kompilierten
> Bootloader für den Atmega644p mit 16MHz oder 18,432MHz.
> Schön wäre ein Arduino-Bootloader.

Optiboot

von Michael U. (amiga)


Lesenswert?

Hallo,

wenn Du das MightyCore Package (da sind u.a. die großen ATMega drin) in 
der Arduino-IDE installiert hast, sind die Bootloader doch alle dabei...
Irgendwo in ...\packages\MightyCore\hardware\avr\1.0.8\bootloaders
Auch für den 644p und auch für Deine gewünschten Taktfrequenzen.

Die Fusebits kann man sich aus der zugehörigen boards.txt raussuchen 
wenn man den Bootloader nicht aus der Arduino-IDE flashen will.

Gruß aus Berlin
Michael

: Bearbeitet durch User
von Oliver S. (oliverso)


Lesenswert?


von Suchdepp (Gast)


Lesenswert?

Oliver S. schrieb:
> Zu faul zum suchen?
>
> https://www.mikrocontroller.net/articles/Bootloader#AVR

Da müsste er ja selbst was tun.

Das wäre zuviel verlangt.
Er will ja die gebratenen Tauben die ihm in den Mund fliegen.

von anonym20 (Gast)


Lesenswert?

Hier gibt es passendes für den 644p

https://code.google.com/archive/p/sanguino/downloads

Da ist auch ein fertiger Bootloader drin. Mit den sources lässt sich 
aber auch einer für jede beliebige Takt-/Baudrate erzeugen.

von Suchdepp (Gast)


Lesenswert?

anonym20 schrieb:
> Hier gibt es passendes für den 644p

Pappnase.

Das ist genau das was ich in der ersten Antwort schon
vorgeschlagen habe.

von anonym20 (Gast)


Lesenswert?

Suchdepp schrieb:
> Pappnase.

ja sorry ich überprüfe nicht alle Links auf dessen Inhalt. Aus dem Text 
war es nicht rauszulesen.

Auf jeden Fall funktionieren die Sources, hab mir damit selbst schon 
Bootloader für den 644p erzeugt. Kann mir deshalb auch nicht vorstellen, 
dass die beiliegende hex nicht funktioniert. Die ist ja für 16Mhz.

von Joern DK7JB .. (moin)


Lesenswert?

Ich frage mich, warum einige User so agressiv schreiben??? Ist das die 
neue gute Kinderstube?

"---Da müsste er ja selbst was tun. Das wäre zuviel verlangt.
Er will ja die gebratenen Tauben die ihm in den Mund fliegen."

oder

"- ist dein Gugel kaputt?     - zu faul zum suchen?
SCNR."

Ich bedanke mich natürlich für alle Hilfestellungen, auch wenn bei mir 
momentan noch nichts funktioniert ;-)

Natürlich habe ich vorher gesucht und bin mit den Ergbnissen aber leider 
nicht zurecht gekommen. Natürlich hätte ich mir einen Bootloader selbst 
kompiliert, wenn ich es schonmal gemacht hätte. Dann wäre ich doch schon 
lange am Ziel.

Der Vorteil von einer Nachfrage in diesem Forum ist, dass man eine 
Empfehlung oder echte Hilfe zur Selbsthilfe  bekommen kann.

Mit dem Links zu Sanguino oder mikrocontroller.net (die mir schon vorher 
bekannt waren) komme ich leider nicht weiter. Auch für Optiboot benötige 
ich Hilfestellung um zu einem fertiges Ergebnis zu bekommen - also so 
etwas wie eine intensive Anschubhilfestellung.

Mich wundert, dass ich trotz meiner umfangreichen Suche im Netz keine 
Seiten gefunden habe, die für mehrere ATMEGAs die Bootloadere fertig zur 
Verfügung stellen. Jeder von uns ist doch auf irgendeinem Gebiet 
Fachmann oder Fachfrau und gibt sein Wissen weiter.

Wisst ihr vielleicht wie sich die Bootloader aus dem MightyCore Package 
unterscheidet zu dem Bootloader von Optiboot? Oder steckt im dem 
MightyCore  ein Optiboot-Bootloader

Ich probiere mich gerade an dem Bootloadeer aus dem MightyCore Package. 
Eine boards.txt kann ich aber nicht finden. Daher probiere ich die 
entsprechenden Fusebits einfach aus ;-). Irgendwie ist da noch der Wurm 
drin.
Ich verwende dieses File aus dem Package 
"optiboot_flash_atmega644p_115200_16000000L.hex"

: Bearbeitet durch User
von Oliver S. (oliverso)


Lesenswert?

Joern D. schrieb:
> Mich wundert, dass ich trotz meiner umfangreichen Suche im Netz keine
> Seiten gefunden habe, die für mehrere ATMEGAs die Bootloadere fertig zur
> Verfügung stellen.

Das dich das wundert, mag sein. Die Erklärung ist trotzdem ganz einfach.

Ein Bootloader ist ein ganz normales Pogramm wie jedes andere auch. Wer 
den nicht kompilieren kann, kann auch kein anderes Programm kompilieren, 
und braucht daher gar keinen Bootloader.

Oliver

von Michael U. (amiga)


Lesenswert?

Hallo,

Joern D. schrieb:
> Wisst ihr vielleicht wie sich die Bootloader aus dem MightyCore Package
> unterscheidet zu dem Bootloader von Optiboot? Oder steckt im dem
> MightyCore  ein Optiboot-Bootloader


Warum mag der Ordner wohl optiboot_flash heißen?

> Ich probiere mich gerade an dem Bootloadeer aus dem MightyCore Package.
> Eine boards.txt kann ich aber nicht finden. Daher probiere ich die
> entsprechenden Fusebits einfach aus ;-). Irgendwie ist da noch der Wurm
> drin.

Muß ich Dir den Ausschnitt der boards.txt auf meine alten Tage jetzt 
wirklich hier noch reinkopieren?

# Clock frequencies
644.menu.clock.16MHz_external=16 MHz external
644.menu.clock.16MHz_external.upload.speed=115200
644.menu.clock.16MHz_external.bootloader.low_fuses=0xf7
644.menu.clock.16MHz_external.bootloader.high_fuses=0xd6
644.menu.clock.16MHz_external.bootloader.file=optiboot_flash/{build.mcu} 
/optiboot_flash_{build.mcu}_{upload.speed}_{build.f_cpu}.hex
644.menu.clock.16MHz_external.build.f_cpu=16000000L

Die boards.txt liegt in dem Ordner wo auch der Ordner bootloaders 
liegt...

PS: Du hast am Anfang "Schön wäre ein Arduino-Bootloader." gesagt.
Das MightyCore ist Zubehör zur Arduino-IDE, läßt sich also aus dem 
Boardmanager nachinstallieren und nutzen.
Die Suche nach Arduino Mega644 bringt ausreichend passende Treffer.

Gruß aus Berlin
Michael

: Bearbeitet durch User
von Joern DK7JB .. (moin)


Lesenswert?

Mit dem kompilierten Code aus dem MightyCore Package funktiert es nun.
Der Fehler warum es nicht schon vorher funktioniert hat, war ein 
gebrochener SMD-Kondensator an dem 5V Pin des ATMEGAs. Der Hinweis zu 
den richtigen Fuse-Bits hat dann auch geholfen.
Vielleicht hätte es auch mit dem Sanguino-Bootloader geklappt, wenn ich 
den defekten Kondensator eher entdeckt hätte.

Selbst kompilieren war mir mit zu vielen Unbekannten verbunden, da ich 
in den dafür notwendigen Programmierumgebungen nicht zuhause bin. Ich 
arbeiten mit LunaAVR und bin sehr zufrieden damit. Der 
Ardunio-Bootloader kann über Avrdude direkt und bequem angesprochen 
werden.

Vielen herzlichen Dank für eure Hilfe.

von Arduinoquäler (Gast)


Lesenswert?

Oliver S. schrieb:
> Ein Bootloader ist ein ganz normales Pogramm wie jedes andere auch. Wer
> den nicht kompilieren kann, kann auch kein anderes Programm kompilieren,
> und braucht daher gar keinen Bootloader.

Nicht ganz .... ein Bootloader verlangt ein paar wenige
Linker-Einstellungen die eine vorfertigende IDE nicht hergibt.

Man muss mit den Adressen also schon wissen was man tut,
sonst liegt der selbst compilierte Bootloader bei Adresse
Null, und das ist mehr als sub-optimal.

Auch die Bootsize und die Baudrate muss stimmen ... ein paar
Compiler-Flags setzen ....
.... ja es gibt ein paar Fallstricke .... auf den Build-Knopf
zu drücken alleine reicht nicht.

von Joern DK7JB .. (moin)


Lesenswert?

"... ja es gibt ein paar Fallstricke .... auf den Build-Knopf zu drücken 
alleine reicht nicht."

Das ist auch der Grund, warum ich um Hilfe gebeten hatte. Bei zu vielen 
Unbekannten in einem unbekannten Gebiet "Bootloader", kann man sonst 
endlos probieren. Letztlich habt ihr auch hier mich auf den richtigen 
Weg geleitet, was sonst sehr viel länger gedauert hätte. Da ich mir nun 
recht sicher sein  konnte, dass alles rund um die Software richtig war, 
konnte ich auch erst den Hardwarefehler finden, der sich in Verbindung 
mit einer direkten Programmierung (ISP) nicht gezeigt hatte. Defekte 
Kondensatoren sind immer extrem schwer zu finden.

von Oliver S. (oliverso)


Lesenswert?

Joern D. schrieb:
> Ich
> arbeiten mit LunaAVR und bin sehr zufrieden damit.

Hm. Und warum dann nicht den hier:

http://avr.myluna.de/doku.php?id=de:funktionsweise_luna-bootloader

Oliver

von Joern DK7JB (Gast)


Lesenswert?

Ich habe nach einem bewährten Bootloader gesucht, da es sonst zu viele 
Unbekannten gibt. Der MightyCore-Arduino-Bootloader war dann hoffentlich 
die richtige Empfehlung.

von Patrick J. (ho-bit-hun-ter)


Lesenswert?

Hi

Es dürfte aber recht egal sein, wie gut Andere irgend einen Bootloader 
finden - Der muß bei Dir passen!
Auch sollte zum Bootloader was zum Lesen dabei sein - ein Stück 
unbekannte Software aus noch unbekannterer Quelle kann hier nicht 
plötzlich der heilige Gral für Alles sein.

Wie im Leben:
Millionen von Fliegen können nicht irren: Schei?e schmeckt gut

... würdest Du deshalb diesen Millionen von zufriedenen Fliegen folgen??

: Bearbeitet durch User
von Joern DK7JB .. (moin)


Lesenswert?

Naja, ganz so einfach ist es dann doch nicht. Der Optiboot-Bootloader 
wurde mir auch schon von anderer Seite empfohlen. Letztlich hat es nun 
mit ihm geklappt.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.