KK2.0 Flightcontrol von Hobbyking – das Feintuning

Beim Umbau des X525 Copter auf die KK2.0 Platine habe ich ja bereits das wichtigste PI-Tuning angeschnitten. Das dort versprochene Feintuning kommt jetzt….

Nachdem man das Rad nicht neu erfinden muss erst mal einige Links. Mehrere Quellen sind oft hilfreich und es gibt bereits so manches zur KK2.0.

– Die wohl beste deutsche Anleitung findet man in der FPV-Community. Alles sehr übersichtlich, leider Details manchmal etwas zu wenig erklärt, was ich hier nachholen möchte.
– wichtige Referenz ist auch die Originalanleitung von Hobbyking.

Und jetzt die Einstellungen, mit denen man noch rumspielen kann.

KK2.0 Firmware flashen

Firmware flashen ist eigentlich keine sehr lustige Arbeit, aber leider notwendig um am neuesten Stand zu sein. Die Firmware für das KK2.0 Board wird vorrangig von KapteinKuk programmiert. Die derzeit neueste Version ist die Version 1.6. Im Originalzustand wird das KK2.0 fast immer mit einer alten Firmware ausgeliefert. Das Update bringt vor allem ab V1.5 eine Kameragimbalsteuerung sowie verbesserte Flugeigenschaften. Gerade die Self-Level Funktion lässt bei älteren Versionen sehr zu wünschen übrig.

Richtiger Anschluss des Programmieradapters

Das KK2.0 Board besitzt einen ATMEL Prozessor. Es gibt unzählige Kompiler und Entwicklungsumgebungen, mit denen man diesen Mikroprozessor programmieren kann. Zum Glück wird aber im Internet eine bereits kompilierte Version der Software zum Download zur Verfügung gestellt, so dass man diese „nur“ noch auf das Board spielen muss. Dazu braucht man ein Kabel mit dem man Computer und Board verbindet. Man bekommt diesen USBasp Adapter in jedem Onlineshop für ein paar Euro. (Hier auf Amazon oder billiger aus China). Nachdem viele USBasp Prorgammieradapter 10-polig sind, die KK2.0 aber einen 6-poligen Anschluss hat braucht entweder eine 6-polige Version oder einen Adapter von 10 auf 6-polig. (Hier bei Amazon, beim Chinaset bereits dabei).

2 Programmieradapter 10 und 6 polig
2 Programmieradapter 10 und 6 polig
ISP Pinbelegung 6 und 10-polig
USBasp Pinbelegung bei der 10 und 6-poligen Variante.

Das Programmierkabel steckt man einerseits an einen USB-Port des Computers, andererseits an den 6-poligen ISP Anschluss am kk2.0. Der MISO Pin (Pin 1) ist in Flugrichtung gesehen der Pin unten rechts. Also der, der am nähesten an der linken Taste ist. Beim Programmieradapter ist es oft angeschrieben welcher Pin welcher ist. Ansonsten ist sehr häufig beim Flachbandkabel ein Kabel am Rand mit rotem Strich. Das ist Pin1 (= MISO). Achtung bei 10-poligen Anschlüssen ist MISO Pin 9. Auf den Bildern sieht man einen Übergang von 10 auf 6-polig. Nach dem Übergang ist der rote Strich (Pin 1 bei 10-polig = MOSI) nicht mehr Pin 1, sondern Pin 4.

Eine weitere Methode den PIN 1 zu identifizieren besteht darin den Stecker von vorne, waagrecht zu halten, so dass oben die kleine Kunststoffnase wegsteht. Jetzt ist oben links Pin 1 (MISO). Mit diesen Tipps müsste man es hinbekommen den Stecker richtig auf das Bord zu stecken.

ISP-Programmierstelle am KK2.0
Pinbelegung des Programmiersteckplatzes am KK2.0
USBasp 10 auf 6-polig
Übergang von 10 auf 6-polig

Multicopterflashtool

Um die Firmware auf die Platine zu spielen benötigt man Software. Hier wurde von den Molls das geniale Multikopterflashtool geschrieben, dass mühsame Eingaben auf Befehlszeilenebene übernimmt und das ganze relativ automatisch durchführt. Ausserdem werden auch noch Listen mit aktuellen Firmwareversionen etc. aktuell gehalten, so dass sich das Tool nicht umsonst zum Standardtool der Multikopterszene entwickelt hat. Auf dieser Seite findest du es. Das Multikopterflashtool ist dank Java für alle Plattformen erhältlich. Auf der Page gibt es Installationsanleitungen. Für Windows ist meist ein Treiber für den Programmieradapter notwendig. Ich hatte lange Zeit Probleme das Tool auf dem Mac zum laufen zu bringen. Er brach den Start mit der Meldung

Uncaught exception in main method: java.lang.UnsatisfiedLinkError: /Library/Java/Extensions/librxtxSerial.jnilib: no suitable image found. Did find: /Library/Java/Extensions/librxtxSerial.jnilib: no matching architecture in universal wrapper

ab. Die Lösung ist es dann einfach das File

/Library/Java/Extension/RXTXcomm.jar

zu löschen. Seither läuft es.

Firmware flashen

Ist der Programmieradapter richtig angeschlossen und läuft das Multikopterflashtool, muss man sich noch die Einstellwerte notieren. Also alle Menüs durchgehen und die Werte aufschreiben, weil diese nach dem flashen alle wieder weg sind.

Als Programmieradapter wählt man für die Billigadapter wie oben empfohlen meist den USBasp (1.Wahlmöglichkeit) aus. Beim Controller wählt man Hobbyking KK2. Als Firmware zuerst KK2.0 und dann die aktuellste Version.

Meine Einstellungen für Multikopterflashtool für die KK2.0 von Hobbyking
Meine Einstellungen für Multikopterflashtool für die KK2.0 von Hobbyking

Dann drückt man auf den grünen Läufer unten rechts und los geht’s. Im Statusfenster sieht man hoffentlich lauter Erfolgsmeldungen und die neue Firmware ist drauf.

Erfolgsmeldung nach dem flashen.
Erfolgsmeldung nach dem flashen.

Jetzt kann man vorhandene Werte wieder eingeben und es wird empfohlen einmalig die ACC Calibration durchzuführen.

Self-Level Mode bei der KK2.0

Der normale Modus eines Quadrocopters ist es eine gewisse, mit dem Steuerknüppel herbeigeführte Lage zu halten. Kippt man den Quadrocopter also nach vorne um Fahrt aufzunehmen, und lässt die Fernsteuerung aus, so sollte er idealerweise in genau dieser Schräglage ewig weiter fliegen. Im Self Level Modus der KK2.0 versucht die Platine den Quadrocopter immer in horizontale Position zu bringen wenn die Steuerknüppel in Neutralstellung sind. Es soll dadurch deutlich ruhiger geflogen werden können. Sinn hat dieser Modus damit vor allem bei Kameraaufnahmen etc. Der Self-Level Modus klingt von der Flugbeschreibung her toll, in der Praxis hat der Modus aber Tücken. Sehr gut eingestellt fliegt der Quadrocopter tatsächlich ruhiger und sicherer, wenn die Einstellungen nicht ganz so ideal sind kann der Modus sogar eher unangenehm werden und ein schwammiges Fluggefühl verursachen. In den letzten Firmware Versionen word heftig an der Verbesserung gearbeitet, weshalb man auf jeden Fall auf wenigsten 1.5 updaten sollte, wenn man den Modus nutzen will.

Neben dem P Wert für den Ausgleich kann man ein Limit (max. Prozent der Motorleistung) angeben, sowie eine Trimmung in Roll und Nickachse.

Height Dampening

Interessante Idee ist das Height Dampening in Misc.Settings. Bewegt sich der Quadrodopter (erkannt durch den Z-Beschleunigungssensor) nach oben oder nach unten, ohne dass eine entsprechende Eingabe von der Fernsteuerung vorliegt (also nicht mehr oder weniger Gas gegeben worden ist), so wird die Beschleunigung als Störung interpretiert und ausgeglichen. Vom Konzept toll, in der Praxis nur teilweise. Gerade bei einem kleineren Holzcopter, den ich ebenfalls mit KK2.0 fliege, ist das Height Dampening trotz aller Einstellversuche immer wieder Grund für plötzliche Beschleunigung aller Motoren und regelrechte Hüpfer, die der Copter macht. Im Prinzip wird aber die Stärke der Korrektur eingestellt und mit dem Limit wieviel Prozent der Motorleistung dafür verwendet werden dürfen. Eine weitere Einstellmöglichkeit bei der man wohl ein halbes Leben lang testen kann und noch nicht zufrieden ist. (Ich fliege grossteils mit den Werten 0 und 0 😉

Stick Scaling

Eingefleischte Fernsteuerungskurvenprogrammierer werden über diese Funktion wohl lachen. Ich als Billigfernsteuerungsuser find eise aber genial. Mit dem Stick Scanning kann man seine Fernsteuerknüppel etwas entschärfen. Es wird festgelegt wieviel Prozent des maximal möglichen Ausschlags möglich ist. Setzt man einen Wert auf 50 so ist im Prinzip nur halber Ausschlag möglich. Nachdem die Factory Presets für Roll und Nick auf 30 sind, kann man sich vorstellen wie ein solcher Quadrocopter zu fliegen wäre, wenn man kein Stick Scaling hätte. Die Grundeinstellung ist gut (Nick & Roll 30, Yak 50, Gas 90), man kann aber durchaus etwas damit rumexperimentieren. Nachdem ich Expos etc. für einen Copter nicht notwendig finde ist diese Funktion völlig ausreichend um die Empfindlichkeit seiner Fernbedienung einzustellen.

Damit lässt sich schon allerhand anfangen. Natürlich gäbe es noch einige mehr zur KK2.0 zu sagen und vielleicht kommt da noch was nach. Stichwort Spannungsüberwachung, Mixer Editor, ……


Was meinst du ???

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert