HowTo Flash AlkaMotors / AM32-MultiRotor-ESC-firmware

    • HowTo Flash AlkaMotors / AM32-MultiRotor-ESC-firmware

      AM32 ist ein Open Source Projekt welches uns die Möglichkeit bietet unsere Motoren mit variablem eRPM basiertem PWM anzusteuern. BLHeli macht dies anhand der Stickposition. Aufgrund der Ansteuerung der Motoren anhand der tatsächlich anliegenden Drehzahl ist die Ansteuerung der Motoren linearer und präziser / smoother. Mit AM32 drehen die Motoren bereits bei 0.1% im Konfigurator rund. Mit BLHeli braucht es hier mindesten 1.8-2%.

      Vorteile

      • Wie bei jedem Open Source Projekt geht es hier um die Qualität der Software und nicht darum die Cashcow zu melken
      • eRPM based variable PWM Frequenz :thumbsup:
      • Stuck Rotor Protection (reduziert den Strom sobald nicht eine gewisse Anzahl zero Crossings erkannt werden) Das finde ich persönlich das Feature schlechthin, da es beim turtlen nicht mehr zu verbrannten Motoren oder durchgebrannten Mosfets kommen kann.


      Nachteile

      • noch recht umständlich zu flashen
      • begrenzte Anzahl offiziel bestätigter ESCs


      Was Ihr braucht:

      • Lötkolben/Lötzinn mit möglichst kleiner Spitze (Ich habe hier die kleinste Spitze des TS100 im Einsatz)
      • Alkohol und Q-Tips um das vom Hersteller evt. aufgebrachte Coating zu entfernen um die Ausrichtung des STM erkennen zu können (PINs oben links)
      • Eine Lupe oder noch besser ein Mikroskop, es sei denn Ihr seit in der Lage die kleinen Lötpads auch ohne Sehhilfen zu erkennen. Meine Augen schaffen das leider nicht mehr und ein Mikroskop ist eine enorme Erleichterung.
      • Einen STLink V2
      • Ein paar Dupont Konnektoren (vereinfacht die Verkabelung
      • Bissle AWG28 Kabel
      • STM32F501 basiertes ESC


      Bevor Ihr loslegt, seid Euch darüber bewusst, dass es kein zurück mehr auf BLHeli gibt (warum auch? :thumbsup: ) Falls Euer ESC in der Liste der supporteten ESCs aufgeführt ist so braucht Ihr Euch überhaupt keine Gedanken machen, dass das ESC danach nicht läuft wie es soll wenn Ihr alles richtig macht. Ist Euer ESC nicht in der Liste, so besteht trotzdem ein recht hohe Wahrscheinlichkeit, dass einer der beiden Bootloader in Kombination mit einem der Firmware Targets funktioniert. In meinem Fall habe ich z.B ein 45A Foxeer Reaper getestet/riskiert und herausgefunden dass der P2A Bootloader und das HGLRC Target funktioniert. :thumbup:

      Üblicherweise haben die ESCs Lötpads für SWCLK und SWDIO des STM32. Hat Euer ESC keine Lötpads so müsst Ihr an die Beinchen des STMs ran. Habe ich persönlich noch nicht gemacht und gehe daher auch nicht näher drauf ein.

      Lötpads am STM32, pro Motorausgang je ein STM der geflasht werden muss.



      Zusätzlich zu diesen beiden Kabeln muss noch GND des STLink an GND des ESCs angelötet werden. Ich habe immer an Masse des XT60 Abgangs angelötet.



      Wenn Ihr das geschafft habt, schliesst Ihr einen Akku (ich benutze hier auf Nummer sicher immer zusätzlich einen Smokestopper) ans ESC und steckt den STLink per USB am PC an.

      Wichtig hier: kein FC an den ESC anschliessen und schon garnicht den FC zusammen mit Akku am ESC und STLink via USB am PC anschliessen. Das führt zu einer kleinen aber fatalen Rauchwolke des ESC. :whistling:

      Zur Programmierung brauchen wir ein Programm Names STM32CubeProg. Wenn Ihr alles richtig gemacht habt kommt nach dem Connect mit dem Programm die folgende Meldung. Das liegt daran dass wir noch OptionBytes setzen müssen. Fakt ist jedoch, wenn Ihr das Data Read Failed seht, seit Ihr auf dem richtigen Weg. Einfach die Meldung wegklicken und auf der rechten Seite entweder auf "OB" klicken oder aber das Menü ausklappen.



      Die Option Bytes setzt Ihr wie folgt



      Danach können wir uns ans flashen begeben. Die Reihenfolge ist egal, Hauptsache Ihr flasht nicht an die falsche Stelle.

      Bootloader




      EEPROM




      Firmware Target




      Die Prozedur der Verkabelung und das Programmieren des STM32 wiederholt Ihr nun für die Verbleibenden STM32. Insgesamt immer vier, für jeden Motorausgang einen, auf einem Single ESC natürlich nur einen. Das war es dann auch schon, fürwar kein Hexenwerk. An der Stelle könnt Ihr die STLink Verkabelung komplett entfernen und den FC ans ESC anschliessen. FC wie gehabt via USB an den PC um die ESC Einstellungen vorzunehmen.

      Die ESC Einstellungen nehmt Ihr mit dem aktuellen ESCConfigTool vor. Hier braucht Ihr lediglich die KV Eurer Motoren einstellen, ich habe zusätzlich das Timing auf 22.5 hochgesetzt und bislang keinerlei Problem mit diversen Motoren gehabt.






      Fazit: der Unterschied zur Linearität ist sehr subtil wahrnehmbar. Für den Anfänger wahrscheinlich eher nicht zu bemerken, für intermediate und Pro Piloten aber definitiv hiflreich. Gerade im unteren Drehzahlbereich ist die Kraftentfaltung linearer als mit BLHeli. Bei BLHeli habe ich immer einen Punkt an dem der Kopter nach vorne geht wie ein bockiges Pferd. So zumindest meine Wahrnehmung. Hinzu kommt die Stuck Rotor Protection die ein verbrennen des Motors bzw. durchbrennen des Mosfets verhindert. Ich bin nach initialen Tests komplett überzeugt gewesen und hab mittlerweile meine gesamte Flotte umgestellt. :thumbsup:

      Ich habe mich an dieser Anleitung durchgehangelt und möchte Euch diese natürlich nicht vorenthalten.


      Zum Schluss noch eine Anfrage in eigener Sache bzw. um mehr unterstützte ESCs in die Liste zu bringen. Falls Ihr defekte 4in1 ESCs habt die noch nicht gelistet sind und an denen nur ein Motorausgang defekt ist bzw. noch ein Motorausgang funktioniert, würde ich diese gerne gegen Portogebühren haben um ausfindig zu machen welcher Bootloader/Firmware Target auf dem jeweiligen ESC funktionieren.
      too much stuff