"Custom Rom" für Kunteng S06S/KT36 Controller

Diskutiere "Custom Rom" für Kunteng S06S/KT36 Controller im Controller/Regler, Fahrerinformation, Elektronik Forum im Bereich Diskussionen; Was heißt woanders messen, am 5V Pin halt? Ich weiß auswendig nicht, ob z.B. auf dem roten Kabel vom PAS-Anschluß Spannung anliegt, wenn die 5V...
Hochsitzcola

Hochsitzcola

Mitglied seit
04.09.2009
Beiträge
1.965
Details E-Antrieb
NC FH154 mit EB306 und EB-Precontroller
Was heißt woanders messen, am 5V Pin halt? Ich weiß auswendig nicht, ob z.B. auf dem roten Kabel vom PAS-Anschluß Spannung anliegt, wenn die 5V vom STLink kommen. Ggf. den Controller mal mit Akku einschalten und dann probieren.
Querchecken mit einem STM8 board, ob der STLink funktioniert wäre hilfreich...

Gruß
hochsitzcola
 
H

hias9

Mitglied seit
03.03.2019
Beiträge
20
Ja, am Pin 4,8V, am Hallsensor Kabel 4,3V, am PAS Kabel 4,1V.
Ein STM8 Board habe ich leider nicht zur Hand. Aber hab schon nen zwiten Stick bestellt.

Mit Akku oder ohne macht leider keinen Unterschied. Auch nicht mit eingeschaltetem LCD3 Display
 
H

hias9

Mitglied seit
03.03.2019
Beiträge
20
Jetzt hab ich den Controller nochmal angeschlossen und er konnte den Motor nicht mehr ansteuern. Phasen/Hallkombi hab ich nichts verändert. Und vor ein paar Stunden ging er noch einwandfrei. Widerstand Phase zu Phase ist überall 20kOhm, also die FETs müssten passen. Werd mir also nen neuen Controller holen müssen.

Ist es eigentlich mit der Software möglich die Geschwindigkeit mit PAS auf 25kmh zu beschränken, ohne dabei den Gasgriff zu beschränken.
 
Xnyle

Xnyle

Mitglied seit
04.08.2011
Beiträge
308
Ort
Essen
Details E-Antrieb
48V DD 30A
Nur so als Info, weil ich grad eine Schrecksekunde hatte: Falls jemand die App benutzt, fahrt nicht mit eingeschaltetem Replaymodus los, da passieren komische Dinge und das Rad brettert mit 100% los ;-)

Muss ich bei Gelegenheit mal Debuggen, wenn der Testmotor da ist.

Edit: Könnte auch einfach daran liegen, dass mein default Assist 100%/Stufe 5 ist, ich weiss es nicht :)
 
Xnyle

Xnyle

Mitglied seit
04.08.2011
Beiträge
308
Ort
Essen
Details E-Antrieb
48V DD 30A
Da hat jemand sein Rad eingeschaltet so blöd an einen Baum gelehnt, daß das Pedal belastet war und der Motor ständig Gas gegeben hat, ohne daß er es gemerkt hat. Ergebnis: Motor durchgebrannt....
Ja, Ok, aber wie soll das gehen? Ich will doch beim Torquesensor eben genau, wenn ich auf das Pedal trete, dass es sofort losgeht, ohne dass erst eine halbe Kurbelumdrehung erfolgt ist?

Ansonsten ist es jetzt so

Code:
if (((ui16_aca_flags & TQ_SENSOR_MODE) == TQ_SENSOR_MODE)) {
               if (uint32_current_target > ui16_current_cal_b){
                   //override cadence based torque with torquesensor-throttle only if there is cadence based contribution
                   uint32_current_target = (uint32_t) float_temp;
               }
           }else{
               //override torque simulation with throttle
               uint32_current_target = (uint32_t) float_temp;
           }
Testen kann ich das nicht.
 
Hochsitzcola

Hochsitzcola

Mitglied seit
04.09.2009
Beiträge
1.965
Details E-Antrieb
NC FH154 mit EB306 und EB-Precontroller
Ich will doch beim Torquesensor eben genau, wenn ich auf das Pedal trete, dass es sofort losgeht
Ich will das nicht, es soll aber Leute geben, die schon im Stand Schub haben, also nicht einmal eine 1/32 Umdrehung Verzögerung in Kauf nehmen wollen.:eek: Wenn man das wirklich implementieren wollte, müsste man einen Zähler mitlaufen lassen, der dann halt nach einer Zeit x wieder abschaltet, wenn erps in dieser Zeit Null bleibt und erst zurückgesetzt wird, wenn entweder ein PAS-Puls kommt, oder das Torque-Signal wieder auf Null gefallen ist....

Gruß
hochsitzcola
 
H

hias9

Mitglied seit
03.03.2019
Beiträge
20
Ist es momentan eigentlich mit der Software möglich die Geschwindigkeit mit PAS z.b. auf 25kmh zu beschränken, ohne dabei den Gasgriff zu beschränken?
 
Xnyle

Xnyle

Mitglied seit
04.08.2011
Beiträge
308
Ort
Essen
Details E-Antrieb
48V DD 30A
Ja, ist aber, da im Strassenverkehr illegal, nicht aktiviert und nur im Offroad Modus möglich. Zumindest von mir gibts dazu auch keine Weiteren Infos. Musst Du dir dann halt selber den Quellcode angucken bzw. ändern, dann bist Du auch ganz allein verantwortlich wenn Du dir was illegales gebastelt hast.
 
Zuletzt bearbeitet:
Xnyle

Xnyle

Mitglied seit
04.08.2011
Beiträge
308
Ort
Essen
Details E-Antrieb
48V DD 30A
Es gibt ein paar neue Features in der Entwicklung / Beta:

Das Erste sind zwei neue Optionen:
Idle disables offroad (60s)
Idle locks controller (60s)

Die erste sollte klar sein, die zweite setzt nach 60 Sek ohne Raddrehung! einen Schalter auf aus. Diesen Schalter kann man sich momentan nur in der App im linken Debug Panel ansehen, heisst lockStatus, 255 ist gelockt, die eigentliche Funktion, nämlich eben Power zu verhindern ist noch abgeklemmt, so lang das Beta ist, nicht dass irgendwer strandet.

Das Zweite ist ein Passcode:

Dieser setzt ebenfalls den Schalter auf aus, wenn der Code nicht stimmt.
Hat momentan natürlich auch noch keinen Effekt, ausser, dass man sich den Schalter zum Test ansehen kann.

Das funktioniert so:

In der App kann man einen 4 Stelligen Passcode setzen.
Ist der 1000, bedeutet das, dass der Schutz aus ist, das ist der Standardwert.
Jeder andere Wert wird ins Eeprom geschrieben
Und die App sendet diesen Wert ab und zu zum Controller.
Wenn der länger nichts mehr gehört hat -> lockStatus 255, nix geht mehr.

Den Wert ändern kann man natürlich nur dann, wenn die App vorher den richtigen Wert gesendet und damit den Controller unlocked hat, man muss also in der App erst mal korrekt den alten Wert einstellen, kurz waren, dann kann man ihn ändern (weil dann ja der Controller unlocked ist)

Ist der Wert vergessen hilft nur noch neu Flashen incl. EEPROM Wipen (die Checkbox im Java Tool)

Das ist jetzt natürlich nicht kryptografisch gesichert, man kann auch hacken und alle 9k durchprobieren, aber der Gelegenheitsdieb bekommt das Ding halt ohne passende verbundene App nicht an, grad beim Directdrive wird er dann wohl ohne Doping nicht weit kommen. Gegen auf Laster packen hilft das natürlich auch nicht.

Das Dritte ist ein GPS basierter Hill Climb Assist:

Kann man per App einstellen (Hill climb assist factor).
GPS muss natürlich dazu erlaubt sein
Wie dort schon steht ist der Wert dann in +%/m/s.
Heisst die App gibt X% Power dazu pro positivem vertikalem Speed in m/s
Mehr als 100% geht natürlich nicht, fliegen tuts nicht ;-)
Da GPS für Höhenbestimmung ziemlich verrauscht ist, wird der Wert etwas geglättet, es dauert also ein paar Meter, bis was kommt.
Ich würd das momentan noch als Alpha bezeichnen.
 
Zuletzt bearbeitet:
Xnyle

Xnyle

Mitglied seit
04.08.2011
Beiträge
308
Ort
Essen
Details E-Antrieb
48V DD 30A
"Idle locks controller" ist wieder raus, ist ja kompletter Quatsch gewesen, Lock durch Passcode hat jetzt nichts mehr mit Idle zu tun, sondern nur noch, ob die App einen Passcode setzt. :)

In dem Zusammenhang (ich teste grad mit einem Getriebemotor mit Freilauf). Der liefert im Freilauf natürlich weder einen Speed (weil keine Hallsensor-Signal Änderungen), noch ist Rekuperation möglich.

Das ist einerseits klar, allerdings hatte ich mal ein Getriebemotor Kit, das hat auch bei Freilauf eine Geschwindigkeit angezeigt. Das hatte auch nur die 3 Signalanschlüsse und ein weisses Kabel. Gibt es Motoren, die über das weisse Kabel/X4 nicht Temperatur, sondern ein zusätzlichen Speed Signal übertragen?
 
Lumilux

Lumilux

Mitglied seit
08.10.2008
Beiträge
575
Ort
61250
Details E-Antrieb
Mittelmotore Q85 und 100,Tongxin VR,Bafang HR
"
Gibt es Motoren, die über das weisse Kabel/X4 nicht Temperatur, sondern ein zusätzlichen Speed Signal übertragen?
Ja,ein Q85 macht das so.
Auf den Bildern kann man den eingeklebten Magneten im Gehäuse und den 4ten Hallsensor im Platinenfenster für die Geschwindigkeit erkennen.

Q85 Neodym im Gehäuse eingeklebt.jpg Q85 mit Hallsensorplatine.jpg Q85 Hallsensorplatine mit Speedsensor.jpg Q85 Hallplatine Kabelfarben.jpg
 
Xnyle

Xnyle

Mitglied seit
04.08.2011
Beiträge
308
Ort
Essen
Details E-Antrieb
48V DD 30A
Ist ja witzig, der XF15 hat das auch so. Und passend dazu hab ich auch 2 Controller, wo einmal weiss an X4 geht und einmal an CS.

Wundert mich, dass sich da noch keiner beschwert hat, hab die App jetzt auch angepasst, so dass sie dann auch Speed im Freilauf korrekt anzeigt (sofern weiss an CS geht und man external Speedsensor einstellt)
 
I

imja

Mitglied seit
20.08.2018
Beiträge
43
Hallo,
ich möchte nur ein paar Parameter in meinem KT-Controller einstellen (durch OSEC Parameter Configurator) .

Beschreibt bitte kurz, wozu braucht man noch SDCC und STVP?
 
Xnyle

Xnyle

Mitglied seit
04.08.2011
Beiträge
308
Ort
Essen
Details E-Antrieb
48V DD 30A
Könnte bitte mal jemand mit externem Speedsensor (wenn der Motor nicht im Freilauf ist) die Werte
speedRaw / verpsSpeed / electricRevolutionsPerSec
in der App, oder alternativ
ui16_virtual_erps_speed / ui32_SPEED_km_h /ui32_erps_filtered
per Debug überprüfen.

Bei mir ist schon der Wert ui32_SPEED_km_h / speedRaw viel zu niedrig / sinnlos, bin grad etwas ratlos, ob da ein Bug in der FW ist (wenn ja find ich es nicht), oder einfach mein Sensor kaputt.

Vom code her sieht das alles korrekt aus

Code:
ui32_SPEED_km_h  =(wheel_circumference * PWM_CYCLES_SECOND * 36L) / (10L * ui16_time_ticks_between_speed_interrupt)


ui16_virtual_erps_speed = ui16_speed_kph_to_erps_ratio * (ui32_SPEED_km_h / 100) / 1000


ui16_speed_kph_to_erps_ratio =  ui8_gear_ratio * 1000000.0 / ( wheel_circumference * 36.0)
Ergibt ineinander eingesetzt

Code:
ui16_virtual_erps_speed = ui8_gear_ratio * PWM_CYCLES_SECOND / ui16_time_ticks_between_speed_interrupt
 
Xnyle

Xnyle

Mitglied seit
04.08.2011
Beiträge
308
Ort
Essen
Details E-Antrieb
48V DD 30A
... vermutlich Normierung, ich räum da mal auf,
ui32_SPEED_km_hwird eh nur noch an einer Stelle benutzt.
 
A

Antonio

Mitglied seit
05.06.2017
Beiträge
3
Hallo, bin bis jetzt nur passiver Forums Teilnehmer, finde das Projekt sehr gut,
und habe mittlerweile auch schon einen
Controller erfolgreich programmiert.
Bin nun dabei den Controller zu Parametieren.
Dabei ist mir aufgefallen, dass auch bei
externem Speedsensor der Wert Gear Ratio einen Einfluss auf die
Geschwindigkeitsanzeige hat.
Mein Motor momentan ein Mac/Puma (Clone?).
 
Xnyle

Xnyle

Mitglied seit
04.08.2011
Beiträge
308
Ort
Essen
Details E-Antrieb
48V DD 30A
Keine Ahnung, irgendwo bei den ganzen Umformungen war wohl ein Bug drin, jetzt gehts.

---

Das hab ich auch schon im englischen Forum geschrieben: Wenn ihr "proven settings" für neue Motor/Controller Kombinationen habt, dann postet die bitte hier, so dass ich die ins Git packen kann und auch andere was davon haben.
 
Zuletzt bearbeitet:
A

Antonio

Mitglied seit
05.06.2017
Beiträge
3
neues...
seit der vorletzten Aktualisierung kann ich den Controller nicht mehr programmieren, mit den vorherigen Versionen geht's nach wie vor problemlos...
folgende Fehlermeldung erscheint dabei: g -oACAcontrollerState.c ACAcontrollerState.c
ACAcontrollerState.c:149: syntax error: token -> ';' ; column 30
make: *** [ACAcontrollerState.rel] Error 1 ...dies die Ursache ?
sorry meine Progammierkenntnisse tendieren gen null
 
Xnyle

Xnyle

Mitglied seit
04.08.2011
Beiträge
308
Ort
Essen
Details E-Antrieb
48V DD 30A
Musst Du dir mit dem Java Tool erst mal eine aktuelle config.h erzeugen lassen nehme ich an.
 
Thema:

"Custom Rom" für Kunteng S06S/KT36 Controller

Oben