Haibike Yamaha: Reverse-Engineering

Diskutiere Yamaha: Reverse-Engineering im Yamaha Forum im Bereich Fertig-Pedelecs; *hust*das würde mich auch interessieren. LG Carsten
E

Evo500

Dabei seit
26.08.2019
Beiträge
23
*hust*das würde mich auch interessieren.

LG Carsten
 
gamerpaddy

gamerpaddy

Dabei seit
12.07.2015
Beiträge
284
Ort
Mannheim
Details E-Antrieb
Yamaha PW
Ich finde den link nicht mehr, und irgendwo hochladen werde ich die Software nicht.

Ist aber relativ uninteressant, damit kann man diese Akku ladezyklen und Zustand protokolle erzeugen, fehlercodes auslesen usw.
Hab es auch bisher nicht mit meinem 2016er PW koppeln können, trotz aktivierter COM schnittstelle am Bike.
Brauch wohl version 1, hab nur version 2.
 
J

JanN

Dabei seit
23.04.2020
Beiträge
4
Ooooch schade...
...trotzdem Danke!
 
Andreas123

Andreas123

Dabei seit
26.10.2019
Beiträge
273
Das geht schon mit dem 2016er PW, aber eben nur wenn zusätzlich das Yamaha Tool zum SW-Aufspielen und der SMT-Treiber für den ComPort installiert ist. Aber das Diagnose -Programm zeigt auch nur das an, was man am Display/bzw. Akku auch so auslesen kann. Lohnt also nicht...
Die machen sich halt nicht viel aus besonderer Software, usw... find ich auch gut so.

Man sieht ja bei Shimano/Bosch, dass oft nur der Hersteller etwas davon hat.
 
Zuletzt bearbeitet:
M

michara

Dabei seit
11.05.2016
Beiträge
45
Schön wäre wenn man damit die Motorvarianten anpassen könnte...also Radumfang, Ei:Shock on/off usw. damit könnte man beliebige gebrauchte Motoren auf die gewünschten Parameter anpassen. Micha
 
gamerpaddy

gamerpaddy

Dabei seit
12.07.2015
Beiträge
284
Ort
Mannheim
Details E-Antrieb
Yamaha PW
So, gibt neue dongles. aber nur wenige. 3 von 5 sind schon reserviert.
Wenn die letzten nicht so ewig gebraucht hätten bis sie alle weg waren, hätte ich diesmal mehr bestellt.


Die bauteilkosten + platinen bei 5 stück beliefen sich auf nur fast 25€, also 5€ pro Dongle. + ein..zwei stunden bleilot in der nase und weitere 2..3 stunden programmieren & testen.


Die Bestellung der Platinen und Bauteile kam letztens aus China an, und nach dem zusammen löten habe ich die Firmware entsprechend angepasst.
Neu ist der externe TCXO Oszillator mit 1mhz, damit sollte der Dongle etwas temperatur-unabhängiger sein als der alte,
welcher bei kalte/warmen tagen so weit im takt driftete dass die timings nicht mehr passten und das ebike ein fehler meldete.
Auf dauer wurden die aber noch nicht getestet.. wie denn auch. Bei Raumtemperatur haben alle die den funktionstest an meinem Hai bestanden.



Der aktuellste code ist dieser:
[C] //calibration #define SENDDELAY 198000 //delay between datasets. capture must b - Pastebin.com
Programmiert wird mittels Arduino Uno auf dem ArduinoISP läuft, mit einer EEPROM zange kann man das relativ easy machen und parallel dazu den Logicanalyzer anklemmen zum kalibrieren.
Die einstellungen sind wie folgt, Hochladen tut man über Sketch - Upload using programmer)

Wer eine bessere idee für die kapazitätsanzeige hat, eine stabiliere lösung für die Datenübertragung ohne dass man den Takt kalibrieren muss oder andere Tricks kann das gerne selbst einbauen und den Code mit anderen teilen.

Kalibrieren muss man die aber dennoch. Welche timings benötigt werden damits funktioniert steht im Code, auch mit beispielbildern vom Logicanalyzer.
wenn ihr euch welche auf der schaltung basierend baut, braucht ihr zudem einen dieser billigen china logic-analyzer um die timings zu justieren. der motor erlaubt nicht viel toleranz was das anbelangt und jeder attiny scheint etwas andere timings zu brauchen.



Der Stromverbrauch war etwas höher als beim alten. etwa 3mA bei 38V. also ca. 100mW. Da sollte ein voller 400Wh akku 4 monate halten bis der BMS wegen UVLO / Tiefentladung abschaltet.
Es empfiehlt sich demnach eine abschaltung einzubauen wenn man mal länger nicht mit fährt.
zb. ein Reedschalter im Akkugehäuse welcher den Dongle einschaltet sobald man ein Magnet auf die stelle vom Gehäuse legt oder ihn auf den Sockel steckt.



Was noch zu beachten ist:
-
Der Pinout vom Dongle ist nun B+ GND Signal, nicht mehr B+ Signal GND. Damit das Signalkabel besser vor der Akkuspannung isoliert ist, sollte mal ein Wassertropfen draufkommen, damit dieser nicht die Signalleitung im Motor auf die Akkuspannung legt..
-Die Akkuanzeige wird nun für 10sek gemessen und der Durchschnitt errechnet. Die Akkuanzeige geht nicht unter 5%, sonst würde der Motor auf einer Bergfahrt ausgehen. Wenn im Stand aber dauerhaft 5% angezeigt werden ist der Akku höchstwahrscheinlich leer!




Wie immer das kleingedruckte:
Sollte irgendwas passieren, egal was. ist das nicht mein problem.
Ob die dongles in xx tagen/wochen/monaten noch funktionieren ist auch nicht garantiert.
 
Andreas123

Andreas123

Dabei seit
26.10.2019
Beiträge
273
Was passiert eigentlich, wenn man einfach den originalen BMS Controller von einem Yamaha Akku nimmt?
Würde der nicht auch das Signal zur Aktivierung übertragen, sobald der Strom vom Universalakku bekommt?
Oder kommen da Fehlercodes?
 
gamerpaddy

gamerpaddy

Dabei seit
12.07.2015
Beiträge
284
Ort
Mannheim
Details E-Antrieb
Yamaha PW
Sobald du den BMS runternimmst und wieder aufsteckst / energie zuführst fängt er an zu ticken wie eine bombe und geht in einen dauer-fehlerzustand.
Der sprengt die sicherung und es kommen keine brauchbaren Daten mehr raus.

Laut akku-reparatur shop gibt es da eine spezielle reihenfolge die man einhalten muss damit das nicht passiert. Welche das ist wurde nicht erklärt.
Alternativ könnte man den BMS auch lebend transplantieren indem man + - und alles zwischendrinn mit drähten angeschlossen lässt.

Der Mikrocontroller für das signal spricht mit dem BMS chip über I2C, wenn der ein fehler meldet ist's sowieso vorbei.
Wenn man die reset-prozedur rausfinden könnte, wäre das alles wohl kein thema mehr.
 
gamerpaddy

gamerpaddy

Dabei seit
12.07.2015
Beiträge
284
Ort
Mannheim
Details E-Antrieb
Yamaha PW
Die letzten dongles waren schneller weg als gedacht.
Darum hab ich 10 weitere bestellt. 8 sind aber schon vorerst reserviert.
Alle wurden an meinem haibike kurz auf funktion geprüft nachdem ich sie kalibriert habe.

Vom aussehen sind diese etwas anders, da ich mir die nun beim Chinesen zusammenbauen lasse statt selbst zu löten.
Das spart ne menge zeitund kostet nur minimal mehr. programmieren, kalibrieren und lötstellen ausbessern muss ich aber noch selbst.

Damit der diese zusammenbauen kann muss die Platine größer sein und teile aus deren Assembly library nutzen, darum sehen die jetzt etwas anders aus und nutzen andere bauteile.
zb. ein 8 statt 1mhz tcxo, ein anderen dc-dc wandler und induktor... darum leider stromverbrauch wieder etwas höher. ca 200..300mW, abschaltung bei nichtnutzung empfohlen.

Es gibt ein kleiner jumper weil ich ADC1 mit AIN1 für die Spannungsmessung verwechselt habe.
Wenn man die firmware mal ändern will, muss man vorher den jumper entfernen und danach wieder anbringen, sonst zeigt es dauerhaft 100% an.
Auf jedem dongle stehen die Timing-Kalibrierungsdaten hinten drauf, diese muss man vor dem flashen nur noch oben eintragen.

Firmware source code: //calibration #define SENDDELAY 23500 //delay between datasets. capture must be - Pastebin.com
Projektdateien: yamaha accu dongle v4 - EasyEDA (da sind schon einige fehler behoben wie überlappende beschriftung, pin verwechselung.)

 
gamerpaddy

gamerpaddy

Dabei seit
12.07.2015
Beiträge
284
Ort
Mannheim
Details E-Antrieb
Yamaha PW
Ich hab mal ein SyncDrive Sport auseinander genommen, ist ja auch nur ein yamaha.
Nur mit dem unterschied dass zum Akku 3 datenleitungen gehen.. wie die reden fand ich nicht raus da ich kein passenden akku habe.
zwei davon sind auf 2.5V, eine auf 0V.
Der Motor lässt sich auch nicht mit einem dongle ansprechen, muss wohl ein komplett anderes protokoll / übertragungsart sein.

Auf der unterseite ist ein Microcontroller mit CAN / LIN tranceiver.
http://www.image.micros.com.pl/_dane_techniczne_auto/uir5f10pgjkfb.pdf


Auch anders ist; es gibt kein Eingangs-mosfet und kein 7805 spannungsregler, stattdessen ein dc-dc buck wandler.
das layout ist auch minimal anders als bei der normalne platine.









Zusätzlich hatte ich einen Giant Energypak 500 3pin akku in der Hand, aber konnte über den Datenpin keine daten empfangen, wie beim Yamaha hab ich dort 5V angelegt (hochohmig) aber er zog die leitung nie auf Masse. Entweder is der kaputt oder es ist eine andere Übertragungsart.
DIe zwei lassen sich auch nicht miteinander verbinden.

Wieso macht Giant / yamaha das? Es gibt kein technischen grund dafür, es geht nur darum die Kunden auszunehmen wo es nur geht.
Mich würde es nicht wundern wenn der Microcontroller auf der Platine die CAN / LIN daten vom 5pin in die üblichen 1pin seriell daten umwandelt.
 
Andreas123

Andreas123

Dabei seit
26.10.2019
Beiträge
273
Das hab ich mich auch schon gefragt...
Allein für Haibike gibt es je nach Baujahr, Ausstattung und Geschwindikeit 6 verschiedene Controller Platinen.
Und das auch nur für den europäischen Markt...

Man könnte ja auch einfach mit nur einer einzigen Platine, alle Funktionen per Software "umschaltbar" machen,
und damit an die Anforderungen der jeweiligen Hersteller anpassen.

Ich denke es hat auch damit zu tun, dass der Kunde gar nicht erst diese Möglichkeit hat, etwas per SW zu ändern.
Oder einen Giant Motor an ein Haibike zu bauen...
 
Zuletzt bearbeitet:
JoWa

JoWa

Dabei seit
12.06.2020
Beiträge
1
Details E-Antrieb
Yamaha PW-X
Hallo gamerpaddy,
könntest du mich mal per PN anschreiben, da ich es nicht schaffe eine Unterhaltung zu beginnen.
 
P

pilcik

Dabei seit
18.06.2020
Beiträge
3
Bitte geben Sie mir einen Rat
Ich kann die 18650-Zellen in der YAMAHA (Haibike) 36V / 400WH-Rahmenbatterie ersetzen, da dies das BMS nicht beschädigt und es in keiner Weise zurückgesetzt werden muss. Kann ich mit größeren Zellen auch die Kapazität auf 500 WH erhöhen? danke für den Rat
 
Cosas

Cosas

Dabei seit
29.10.2016
Beiträge
191
Ort
Bayrischer Wald, da wo andere Urlaub machen
Details E-Antrieb
2x Sduro 27,5 Yamaha, Hardtail 2016 mit Alfine 11
Hallo @pilcik,
selbst kannst du die Zellen nicht wechseln, da das Systemboard ausgelötet werden muss. Wenn es dann wieder eingelötet wird, funktioniert es nicht mehr, da der Systemschutz ausgelöst wurde (AFE Fehlermeldung).
Es gibt Servicefirmen, die den Zellentausch durchführen, der aber auf Grund des hohen Aufwands vergleichsweise sehr teuer wird.
Ich empfehle dir, nach einem günstigen 500Wh Akku oder auch größeren Akku von Beltrona oder E-bike Vision zu suchen.
Gruß
Cosas
 
gamerpaddy

gamerpaddy

Dabei seit
12.07.2015
Beiträge
284
Ort
Mannheim
Details E-Antrieb
Yamaha PW
du kannst den Zellenpack transplantieren indem du den alten angeschlossen lässt (dünne lange drähte) und den neuen parallel schließt, dann den alten trennst.
beide müssen aber die selbe spannung haben sonst fließt ungewollt strom.

dabei wird das bms nie vom strom genommen (weder B+ B- noch jeder zellenabgriff) und geht nicht in den schutzmodus.
 
Cosas

Cosas

Dabei seit
29.10.2016
Beiträge
191
Ort
Bayrischer Wald, da wo andere Urlaub machen
Details E-Antrieb
2x Sduro 27,5 Yamaha, Hardtail 2016 mit Alfine 11
Theoretisch geht das so, aber in Praxis eigentlich nicht durchführbar, da die Zellen einzeln in das Gehäuse eingesetzt werden müssen. Man braucht ein drittes Zellpaket für die Platine, dann kann man die Platine entnehmen und die Zellen ausbauen, die neuen Zellen einsetzen und wieder verschweißen. Dann die Platine einsetzen, verlöten und vom Hilfsakkupack trennen. In der Hoffnung, dass der Processor nichts gemerkt hat geht der Akku wieder.
Das Risiko, dass doch etwas schief geht, ist leider sehr hoch und man sollte in solchen Dingen schon geübt sein. Deshalb lieber nicht versuchen.
Gruß
Cosas
 
gamerpaddy

gamerpaddy

Dabei seit
12.07.2015
Beiträge
284
Ort
Mannheim
Details E-Antrieb
Yamaha PW
Ich meine ein weg gefunden zu haben, den AFE fehler zurückzusetzen aber hab kein akku hier dies auszuprobieren.
vom BQ77Pl900 (welches das AFE ist, der BMS chip der alles regelt.) datenblatt, seite 35.
wenn man im OUTPUT_CONTROL register den bit0 einmal kurz an/aus macht, setzt sich der alarm zurück.
OUTPUT_CONTROLb0(LTCLR): When a fault is latched, this bit releases the fault latch when toggled (default). 0→1→0 clears the fault latches, allowing STATUS to be cleared on its next read
auf seite 9 steht mehr zu den fehlerzuständen die der chip haben kann.

aber ich finde für die leitungen kein testpunkt auf der oberseite, ohne entlöten kann man wohl keine daten reinsenden.
 
Thema:

Yamaha: Reverse-Engineering

Yamaha: Reverse-Engineering - Ähnliche Themen

  • Yamaha PW-ST Zusatzakku

    Yamaha PW-ST Zusatzakku: Hallo liebe Pedelec-Gemeinde. Ich bin neu hier und hoffe ihr könnt mir helfen. Ich fahre ein Haibike Sduro 4.0 mit einem Yamaha PW-ST Antrieb...
  • Motorenvergleich von Rob - Bosch, Brose, Shimano, Yamaha

    Motorenvergleich von Rob - Bosch, Brose, Shimano, Yamaha: .....Biker71h .... äh Jasi ist ab morgen direkt in Japan , Chefetage Shimano Kann SO definitiv nicht angehen, welcher ist denn nun der beste...
  • suche Suche Yamaha PW Motor X9413 kann auch defeckt sein

    suche Suche Yamaha PW Motor X9413 kann auch defeckt sein: Suche ein Yamaaha PW X9413 Motor kann auch defeckt sein
  • verkaufe Yamaha Ebike Akku 36 Volt, 400Wh, 11 Ah

    verkaufe Yamaha Ebike Akku 36 Volt, 400Wh, 11 Ah: Biete hier einen Yamaha Unterrohrakku 36 Volt, 400Wh, 11Ah, passend für Trekking- und Mountainbikes von Haibike, Winora, Raymon, BH-Bikes, ...
  • Ähnliche Themen
  • Yamaha PW-ST Zusatzakku

    Yamaha PW-ST Zusatzakku: Hallo liebe Pedelec-Gemeinde. Ich bin neu hier und hoffe ihr könnt mir helfen. Ich fahre ein Haibike Sduro 4.0 mit einem Yamaha PW-ST Antrieb...
  • Motorenvergleich von Rob - Bosch, Brose, Shimano, Yamaha

    Motorenvergleich von Rob - Bosch, Brose, Shimano, Yamaha: .....Biker71h .... äh Jasi ist ab morgen direkt in Japan , Chefetage Shimano Kann SO definitiv nicht angehen, welcher ist denn nun der beste...
  • suche Suche Yamaha PW Motor X9413 kann auch defeckt sein

    suche Suche Yamaha PW Motor X9413 kann auch defeckt sein: Suche ein Yamaaha PW X9413 Motor kann auch defeckt sein
  • verkaufe Yamaha Ebike Akku 36 Volt, 400Wh, 11 Ah

    verkaufe Yamaha Ebike Akku 36 Volt, 400Wh, 11 Ah: Biete hier einen Yamaha Unterrohrakku 36 Volt, 400Wh, 11Ah, passend für Trekking- und Mountainbikes von Haibike, Winora, Raymon, BH-Bikes, ...
  • Oben