Akku hacken? Ja, nee, ist klar!
Zugegeben, es ist kein Hack, es ist eine Kurzgeschichte über chinesischen Unfug.
Ich habe eine Menge Greenworks-Geräte der 24-V- und 40-V-Gruppe von einem Elektroverwerter ergattern können. So weit, so nett – leider waren sie ohne Akkus.
Da ich selbst auf einer anderen chinesischen Akkufamilie reite (Worx) und diese selbstverständlich nicht passt, waren die GW-Geräte erst einmal nutzlos. Doch warum? Legt man zum Beispiel 24 V an einen Akkuschrauber an, dreht er kurz an und bleibt dann wieder stehen. Anfangs vermutete ich, mein Labornetzteil hätte nicht genug Power. Dem war aber nicht so. Die Geräte wollen ihre eigenen Akkus und haben dafür einen Pin. Auf den Greenworks-Akkus ist dieser mit dem Ohm-Zeichen markiert.
Nach ein paar Recherchen stellte ich schnell fest, dass der als Ohm-Port (englisch auch Omega-Port) bezeichnete Anschluss nicht etwa, wie man es vielleicht kennt, einen NTC zur Temperaturüberwachung oder eine analoge Spannung führt. Nein, der Akku quasselt darüber mit der Maschine – eine One-Wire-Kommunikation also. Nachdem ich mir einen schlappen 40-V-Akku zum Testen besorgt und einen Laubbläser auseinandergenommen hatte, trennte ich dessen Omega-Port und legte ihn samt Masse heraus. Im ersten Versuch kam das Oszilloskop dran, und siehe da: Die beiden quatschen wirklich miteinander. Erkennbar war das an zwei unterschiedlichen Spannungspegeln. Das konnte nur bedeuten, dass einer vom Akku und der andere vom Gerät selbst erzeugt wird.

Der Einfachheit halber habe ich das Ganze mit dem Saleae Logic noch einmal mitgeschnitten:

Nach etlichem Grübeln und Hin- und Herrechnen bin ich zu keinem sinnvollen Ergebnis gekommen, welche Art von Kommunikation das ist. Also blieb mir nur übrig, alles stumpf nachzubauen.
Ein Arduino Nano und ein paar Zeilen Code später war der erste Teil der Kommunikation fertig. Also einfach mal ausprobieren … Läuft! Zur Gegenprobe habe ich den zweiten Teil ebenfalls in Code gefasst und getestet: Geht nicht.
Okay, also sendet der Akku als Erstes ein Signal, und die Maschine antwortet?
Später kam mir die Idee, den Omega-Port selbst mit 5 V zu beaufschlagen. Und siehe da: Der Akku fängt von sich aus an zu reden, allerdings mit einem anderen, sehr viel einfacheren Muster.
Auch das noch einmal nachgebaut und siehe da: Es funktioniert mit externer Stromversorgung.
Mittlerweile habe ich einige 24-/40-/80-V-Akkus von Greenworks auslesen können, und alle senden dasselbe Signal.
Ich habe daraus ein Miniprogramm entwickelt, um den Greenworks-Geräten beziehungsweise allen Geräten der Globe Group (daher kommt der ganze Krempel) mit einem ATmega einen echten Akku vorzugaukeln.
Warum der ganze Aufwand? Ganz einfach: weil ich jetzt einen 40-V-Akku-Rasenmäher mit meinen vorhandenen 2 × 20-V-Worx-Akkus befeuern kann.
Hier noch eine Liste der Hersteller, die alle zur Globe Group gehören und technisch identisch sind:
Zum Schluss hier noch der Link zu dem kleinen Programm:
https://github.com/softwarecrash/OmegaFaker
- Greenworks
- Powerworks
- Duramaxx
- Craftsman
- McCulloch
- Poulan Pro
- Victa
- Sterwins
- Kobalt
- StrikeMaster
- … und viele mehr. Wenn ihr weitere kennt, schreibt sie bitte in die Kommentare; dann nehme ich sie in die Liste auf.

Schreibe einen Kommentar