Arducopter 2.8.1 selbst kompilieren

#1
Hallo zusammen!
Da ich aktuell einen Octo Quad baue, möchte ich natürlich auch die entsprechende Firmware auf das APM 2.5 laden. Die Auswahl für einen Octo Quad gibt es aber leider nicht.
Ich habe gesehen, dass man in der Datei APM_Config.h die entsprechenden #defines selbst setzen kann. Meine Frage ist jetzt: Wie kann ich den Code selbst kompilieren (mit welchem Tool, Befehle, etc.) und wie bekomme ich den Code auf das APM. Normalerweise mache ich das ja mit dem Missionplaner...

Schon mal vielen Dank vorab!
Grüße
 
#5
Also ich habe es mal probiert und einfach mal comiliert! Leider bekomme ich direkt einen Error und zwar in der Parameters.h Datei.
Diese Datei wurde aber nicht angefasst, ich habe den Quellcode direkt aus dem Download (Arducopter 2.8.1) genommen und compiliert... Funktioniert ja super! Hat das schon mal jemand gehört? Das richtige Board ist ebenfalls ausgewählt...
 
#7
Nachtrag:
Ich hatte den Ordner für das Sketchbook definiert und in diesem Verzeichnis die Ordner "ArduCopter" und "libraries" kopiert, direkt aus der heruntergeladenen zip. Datei. Nach der Fehlermeldung oben habe ich die mitgelieferten libraries auch in den Programmordner libraries von Arduino kopiert. Danach waren sie in der IDE auch unter Sketch -> Library importieren sichtbar.
Das Kompilieren ging danach besser, aber ich bekomme trotzdem nach einger Zeit die Fehlermeldungen:

c:/documents and settings/jkauba/desktop/arduinopilot apm 2.5/arduino-1.0.2-windows/arduino-1.0.2/hardware/tools/avr/bin/../lib/gcc/avr/4.3.2/../../../../avr/bin/ld.exe: ArduCopter.cpp.elf section .text will not fit in region text
c:/documents and settings/jkauba/desktop/arduinopilot apm 2.5/arduino-1.0.2-windows/arduino-1.0.2/hardware/tools/avr/bin/../lib/gcc/avr/4.3.2/../../../../avr/bin/ld.exe: region text overflowed by 18896 bytes
 
#8
Kurze Frage:
Wenn man den Speicher- bzw. Ablageort für die Sketchbooks definiert und dort auch ablegt (wie in der Anleitung beschrieben),
dann scheint die IDE beim Compilieren die dort abgelegten Libraries nicht zu finden.

Wie und wo legt ihr den Ordner Arducopter inkl. Bibliotheken ab?
 

Roberto

Erfahrener Benutzer
#9
EINFACH WIE IN DER ANLEITUNG VORGEHEN: http://fpv-community.de/showthread.php?14911-Ardupilot-Mega-updaten!&p=220096&viewfull=1#post220096 nur dabei die 2.8.1 herunterladen und nicht die 2.8.0.
Dann die APM_Config.h durch diese ersetzen: http://fpv-community.de/showthread....ad-X8-Firmware&p=237944&viewfull=1#post237944

2.: Hier http://code.google.com/p/arducopter/downloads/list
den Quellcode herunterladen und in eigenes Verzeichnis entpacken. Dann die Arduino 1.0.1 http://www.arduino.cc/en/Main/software starten und unter Datei/Einstellungen das angelegte Verzeichnis als "Sketchbook" definieren. Arduino 1.0.1 neu starten (nimmt jetzt das Arducopter Sketchbook) und unter Datei/Sketchbook Arducopter auswählen. Die config jetzt so wie gewünscht bearbeiten und dann kompilieren und aufspielen lassen. Dabei muss der richtige Comport und ArduinoMega2560 als Board ausgewählt sein.
Wahrscheinlich kopierst Du nur irgendwelche libs durch die Gegend statt einfach mal nach Anleitung vorzugehen.

1 Sketchbook wählen
2 Arduinoprogramm neustarten ,
3 Für passende Config sorgen
4 RICHTIGES BOARD EINSTELLEN, RICHTIGEN COMPORT EINSTELLEN
5 HOCHLADEN UND FERTIG
 
#10
Hallo Rob! Glaub mir, ich habe es genau so gemacht wie in der Anleitung beschrieben. Allerdings habe ich die Arduino Version 1.0.2 (aktuell) heruntergeladen und damit versucht die Arducopter Version 2.8.1 zu compilieren. Ich werde es nochmal mit Version 1.0.1 versuchen...
Von rumkopieren irgendwelcher Libs kann nicht die Rede sein. Zumal die Beschreibung der Arduino Seite (IDE Wiki) aussagt, dass die Libs wie oben beschrieben sichtbar sein müssen. Und das sind sie nicht! Darum habe ich die Libs extra eingebunden um die Referenzen auflösen zu können.

Evtl. ist aber auch Version 1.0.2 nicht ganz in Ordnung...
 

Roberto

Erfahrener Benutzer
#12
@ iSynchronize

Hi!

Zuerst möchte ich mich entschuldigen, dass ich so ungeduldig und nicht besonders höflich war.
Ich habe Dir hier ein fertiges .hex - File für Deine Konfiguration gemacht, das sich eigentlich über den Missionplanner laden lassen müsste. Ich kann es nicht testen, daher: Versuch auf eigene Gefahr...

LG
Rob
 

Anhänge

Erhaltene "Gefällt mir": gfunk
#14
Das sehe ich auch so! Danke dir Rob!
Ich habe das Ganze auf meinem Win7 Laptop wiederholt und es hat geklappt. Compile und Upload erfolgreich :)
Als Board habe ich "Arduino Mega 2560 or Mega ADK" ausgewählt!
 
FPV1

Banggood

Oben Unten