Spacefish Geschrieben am 17. April 2019 Heute mal Spaßeshalber einen CAN-Logger an den CAN-Bus des Smarties gehängt (451 CDI).Logfile geht von vor dem drehen des Zünschlüssels, danach eine kleine Fahrt über die AB mit Stau + danach etwas fahrt in der Stadt mit viel Stau bis zum abschalten des Smarties (keine CAN Aktivität mehr). Wenn es interessiert hier ist das rohe Logfile: CAN Dump lässt sich z.B. mit Quote:sudo ip link add dev vcan0 type vcansudo ip link set up vcan0canplayer vcan0=can0 -I candump-2019-04-17_171943.log unter linux wiedergeben (canutils Paket wird benötitgt). Bisher gefunden habe ich: 0C2 Byte 0 und Byte 1 = Lenkwinkel0C2 Byte 2 und Byte 3 = Erste Ableitung Lenkwinkel?!23A = Geschwindigkeit in cm/sec?423 Byte 1 = Blinker Bit 0 und Bit 1 für rechts und links irgendwo ist auch ein Wert gewesen welcher vermtl. dem Druck im Bremssystem entspricht, jedenfalls geht dieser hoch wenn man stärker auf die Bremse drückt, wenn man loslässt bleibt er kurz konstant auf einem niedriegeren Wert solange das automatische Bremsen aktiv ist und fällt dann auf 0 wenn die Bremse wieder komplett offen ist.. bei 23A bin ich mir nicht sicher in was der Wert genau angegeben ist, ich schätze cm/s, das würde etwa hinkommen. Der Wert wird beim Rückwärtsfahren nicht negativ. Bin ziemlich erstaunt bei wie extrem kleinen Bewegungen der Räder der Wert schon hochgeht, der Sensor muss ziemlich fein auflösend sein an den Rädern. Edit:Statistken wie oft welche ID Message vorkommt:101 5111 5510 6560 66FA 180305 2504408 25033412 25034443 25064608 25430236 1251651E1 125295119 125335328 125335300 125335270 125335208 125335200 125335149 125338156 125338423 126713210 126884308 126909418 12703923A 1270390C2 250322312 253682212 253767218 254078 Edit 2:Hm 101, 111, 510 und 560 hat wohl irgendwas mit der Wegfahrsperre zu tun, wenn ich die Messages filtere kommt das Schlüsselsymbol im Kombiinstrument und Smartie geht nicht an.. [ Diese Nachricht wurde editiert von Spacefish am 17.04.2019 um 23:44 Uhr ] Diesen Beitrag teilen Link zum Beitrag Auf anderen Seiten teilen
Petros_T Geschrieben am 17. April 2019 Ein weiterer verrückter wie ich! Schön zu sehen das sich noch andere mit diesem Thema auseinandersetzen, ich bin eher im bereich der Mikrocontroller tätig (hobby). Habe aber ebenso den Smart gecheckt und habe schon ein gutes Stück Herausgefunden. Ich bin dabei die Can Schnittstelle des Smarts Visuell darzustellen und so Echtzeit-werte anzeigen zu lassen. Hier mal ein paar einblicke: -----------------Smart ForTwo 2011 // 71 PS mhd. // 2010 // Smart ForTwo Brabus Xclusive 102 // Diesen Beitrag teilen Link zum Beitrag Auf anderen Seiten teilen
Petros_T Geschrieben am 18. April 2019 EDIT: Ich habe noch folgendes gefunden:IDs:0C2 : ESP212 : Motorsteuergerät23A : Geschwindigkeit418 : Getriebe200 : Traktionskontrolle423 : KI (Licht, Türen, Zündung)236 : Schalt wippen608 : Allgemein?(Temperatur / Pedalstellung) Kann ich auch Online Stellen. Ich bin gerade daran den SJA1000 Can Controller So zum laufen zu bringen das ich nach ID´s filtern kann und so die passenden werte abfrage, leider gibt es dafür nicht die passenden Bibliotheken (kann auch sein ich bin zu doof :-D ). Das Display soll naher noch Via Bluetooth das iPhone Koppeln und Dir whatsapp & co. Nachrichten Anzeigen (das läuft schon ganz gut). -----------------Smart ForTwo 2011 // 71 PS mhd. // 2010 // Smart ForTwo Brabus Xclusive 102 // Diesen Beitrag teilen Link zum Beitrag Auf anderen Seiten teilen
Spacefish Geschrieben am 18. April 2019 Ziemlich cool :)! Mit dem Display macht natürlich schon was her! Danke für die weiteren Codes! Hm kurzer Blick ins Datenblatt vom SJA1000, sagt mir auch nur das es scheinbar etwas komplizierter ist das Acceptance Bit Register u.s.w. zu setzen. Erklärt mir aber jetzt auch warum die arbitration IDs der Frames so komisch mit 1 2 4 oder 6 vorne beginnen, das sind vermtl. genau die Bits auf die auch die CAN Controller in den Steuergeräten Filtern.Macht ja auch Sinn, dass sowas wie ESP oder Traktionskontrolle niedriege Arbitration IDs hat und so nen mist wie Wegfahrsperre hohe 5** (niedrige Prio). Ich hab mir es relativ einfach gemacht und verwende erstmal ein USBCAN interface welches einfach die vollen 2 MBit schafft da muss ich nicht filtern :-D. Im Linux kann man das als Netzwerkinterface aufsetzen über Socket CAN (wurde mal von VW entwickelt). Welchen IC benutzt du um mit dem SJA1000 zu reden? Hast du da ne bestehende Library die den CAN Chip konfigurieren kann oder setzt du die Register von Hand? Edit: ist das dein Smart mit LB Kennzeichen? Ich bin aus Ditzingen b.t.w. ;-)[ Diese Nachricht wurde editiert von Spacefish am 18.04.2019 um 00:13 Uhr ] Diesen Beitrag teilen Link zum Beitrag Auf anderen Seiten teilen
Petros_T Geschrieben am 18. April 2019 Jetzt machst du mich aber fertig... Schreib mir doch mal ne PN ich komme ebenfalls aus Ditzingen (die Welt ist nun mal ein Dorf). :-D Der SJA ist im ESP32 Mikrocontroller bereits integriert, somit habe ich es mir einfach gemacht und diesen benützt. Die bib habe ich von github: CANBUS LIB Leider ist die Dokumentation nie so dolle, weil alles Opensource, und ich kein C++ Genie. Dann fällt einem das nicht immer so leicht. -----------------Smart ForTwo 2011 // 71 PS mhd. // 2010 // Smart ForTwo Brabus Xclusive 102 // Diesen Beitrag teilen Link zum Beitrag Auf anderen Seiten teilen
450-3 Geschrieben am 18. April 2019 Ich habe zwar keinen 451 aber beim 450er waren die Nachrichten 0x510 und 0x560 für den Tachoabgleich mit dem SAM. Sobald das Kombiinstrument hochgefahren ist, sendet es die 0x510 mit 0x01 im ersten Byte, dann antwortet das SAM mit 0x560.Die Antwort besteht aus drei Teilen mit der Nachrichtennummer im ersten Byte. Die FIN wird über alle Nachrichten verteilt*, in der dritten sind die letzten vier Bytes der Kilometerstand im SAM und eine Checksumme.Wenn der Abgleich fertig ist, sendet das KI in der 0x510 einen anderen Wert, beim 450 war es 0x7F, hier 0x44.Wenn sich der Algorithmus nicht geändert hat, müsstes du über 250.000km auf der Uhr haben. * Beim 450er wurde nur die Seriennummer (hier ab dem "K") übertragen und die ersten drei Datenbytes der dritten Nachricht waren in allen Samples die ich gesehen hatte immer 0.[ Diese Nachricht wurde editiert von 450-3 am 18.04.2019 um 01:11 Uhr ] Diesen Beitrag teilen Link zum Beitrag Auf anderen Seiten teilen
Spacefish Geschrieben am 18. April 2019 Ui, danke für die detailierte Erklärung. Ja habe bald 252.000 geschafft :) nutze das Auto täglich zum pendeln! Könnte ich theoretisch die letzte 560er Nachricht einfach selbst senden mit einem höheren km Stand? z.B: 500.000?! :-D Dann dürfte sich doch das Kombiinstrument updaten und beim nächsten Start Kombiinstrument -> SAM lol[ Diese Nachricht wurde editiert von Spacefish am 18.04.2019 um 01:10 Uhr ] Diesen Beitrag teilen Link zum Beitrag Auf anderen Seiten teilen
Spacefish Geschrieben am 18. April 2019 Oh ich hab den Algorithmus rausgefunden die Checksumme zu berechnen :) einfach alle bytes der drei Messages addieren ohne das erste Byte (0x01, 0x02, 0x03 weglassen). Als bytes, den überlauf ignorieren. Das was im Byte stehenbleibt ist die Checksumme. Code: <br />int checksum = 0;<br /><br />checksum += 0x57+0x4D+0x45+0x34+0x35+0x31+0x33;<br />checksum += 0x30+0x30+0x31+0x4B+0x31+0x37+0x32;<br />checksum += 0x35+0x36+0x36+0x03+0xD8+0x00;<br /> hex ist das Ergebnis 0x4A8 :lol: Diesen Beitrag teilen Link zum Beitrag Auf anderen Seiten teilen
450-3 Geschrieben am 18. April 2019 Quote:Am 18.04.2019 um 01:08 Uhr hat Spacefish geschrieben:Könnte ich theoretisch die letzte 560er Nachricht einfach selbst senden mit einem höheren km Stand? z.B: 500.000?! :-D Dann dürfte sich doch das Kombiinstrument updaten und beim nächsten Start Kombiinstrument -> SAM lolSo wird es vermutlich sein. Wie ein Update genau abläuft, weiß ich bisher noch nicht. Das mal auzuprobieren, steht aber auf meiner Wunschliste relativ weit oben ;-) Gut, Checksumme hast du schon rausgefunden, kannst ja mal 07 A1 00 als Kilometerstand schicken und berichten :lol:Am echten Fahrzeug würde ich sowas aber natürlich nicht testen. Zum experimentieren habe ich für je 'nen 10er bei ebay eine alte ZEE und einen Tacho gekauft und eine kleine Software geschrieben, die den Datenstrom der verschiedenen Steuergeräte simuliert, mit der ich zum probieren die einzelnen Bytes der Nachrichten steuern kann. Die Software läuft auf einem RasPi Zero W mit Waveshare CAN-HAT, der auch gleich noch als Datenlogger dient. Mit dem RasPi als WLAN AcessPoint konfiguriert, melde ich mich vom Notebook per SSH drauf an und mit einer kleinen Powerbank druntergeschnallt, läuft das Teil ewig.Ein komfortableres CAN-Interface für unter 50 Euro kann man gar nicht kaufen :-D [ Diese Nachricht wurde editiert von 450-3 am 18.04.2019 um 02:30 Uhr ] Diesen Beitrag teilen Link zum Beitrag Auf anderen Seiten teilen
Petros_T Geschrieben am 18. April 2019 Hier noch der Auszug der Excel Tabelle: :-D :-D :-D :-D -----------------Smart ForTwo 2011 // 71 PS mhd. // 2010 // Smart ForTwo Brabus Xclusive 102 // Diesen Beitrag teilen Link zum Beitrag Auf anderen Seiten teilen
Petros_T Geschrieben am 18. April 2019 -----------------Smart ForTwo 2011 // 71 PS mhd. // 2010 // Smart ForTwo Brabus Xclusive 102 // Diesen Beitrag teilen Link zum Beitrag Auf anderen Seiten teilen
450-3 Geschrieben am 18. April 2019 Der laufende Kilometerstand steht, wie es aussieht, jetzt in Nachricht 0x412 Bytes 3-5. Der Unterschied zu 0x560 kommt daher, dass das SAM für den Tachoabgleich aus dem 24-Bit Wert die niederwertigsten 6 Bits auf Null setzt und ignoriert, was anscheinend eine Art Pufferbereich ist, in dem der Abgleich auch funktioniert, wenn das KI etwas voreilt, zumindest hat es sich bei mir nicht beschwert, wenn sich mein Fake-SAM mit einer Differenz innerhalb des 63-Kilometer-Fensters gemeldet hat. Ansonsten hat sich leider so viel geändert, dass aus meiner ID-Sammlung vom 450er auf den ersten Blick nichts mehr passt :( [ Diese Nachricht wurde editiert von 450-3 am 18.04.2019 um 21:23 Uhr ] Diesen Beitrag teilen Link zum Beitrag Auf anderen Seiten teilen
Petros_T Geschrieben am 23. April 2019 bin noch auf der suche nach der Öl temp, falls wer was findet bitte melden :-D -----------------Smart ForTwo 2011 // 71 PS mhd. // 2010 // Smart ForTwo Brabus Xclusive 102 // Diesen Beitrag teilen Link zum Beitrag Auf anderen Seiten teilen
450-3 Geschrieben am 23. April 2019 Quote:Am 23.04.2019 um 01:31 Uhr hat Petros_T geschrieben:bin noch auf der suche nach der Öl temp, falls wer was findet bitte melden :-D Wird die Temperatur überhaupt erfasst? Ich sehe da nur einen Öldruckschalter im Plan. Diesen Beitrag teilen Link zum Beitrag Auf anderen Seiten teilen
Ahnungslos Geschrieben am 23. April 2019 Wenn Du die Öltemperatur haben willst, musst Du erst mal einen Sensor verbauen. ;-) Wie schon mein Vorposter schrieb, wird diese nämlich mangels Geber serienmäßig nicht gemessen. Diesen Beitrag teilen Link zum Beitrag Auf anderen Seiten teilen
Petros_T Geschrieben am 23. April 2019 Ich kann mit der Delphi Diagnose meine Öltemperatur auslesen, wieso sollte es nicht möglich sein die aus dem Bus zu lesen? 2010 // Smart ForTwo Brabus Xclusive 102 // Diesen Beitrag teilen Link zum Beitrag Auf anderen Seiten teilen
Ahnungslos Geschrieben am 23. April 2019 Dann wurde entweder bereits ein Sensor für die Öltemperatur nachgerüstet oder die wird irgendwie durch das System durch eine Interpolationsroutine über die Temperatur des Motors bzw. Kühlwassers errechnet, was aber natürlich mehr als fehlerträchtig ist!So nach dem Motto, wenn meine Kinder Fieber haben, dann schaue ich den Urin an und dann weiss ich die Körpertemperatur! ;-)Es entbehrt doch nicht einer gewissen Logik, daß ohne Temperatursensor keine genaue Messung stattfinden kann, oder sehe ich das falsch? :-? Auch um die auf dem Bus anzeigen zu lassen, müsste erst mal eine Messeinrichtung vorhanden sein! Oder es handelt sich tatsächlich um eine errechnete Temperatur mit entsprechenden Fehlertoleranzen und Ungenauigkeiten! Ich hoffe mal, unser max kann hier mal was zu sagen! :)[ Diese Nachricht wurde editiert von Ahnungslos am 23.04.2019 um 17:15 Uhr ] Diesen Beitrag teilen Link zum Beitrag Auf anderen Seiten teilen
Funman Geschrieben am 23. April 2019 Ich glaube, Petros meint den Smart 451, Ahnungslos meint den Smart 450. Ob der 451 einen Sensor ab Werk hat, weiß ich jetzt aber nicht. Grüße, Hajo 705 Kilometer mit 19,43 Litern sind 2,75 Liter/100 Km. Diesen Beitrag teilen Link zum Beitrag Auf anderen Seiten teilen
Ahnungslos Geschrieben am 23. April 2019 Also ich meinte schon auch den 451er und ich bin der Meinung, daß auch dieser nur einen Öldruckschalter verbaut hat und keinen Öltemperatursensor.Aber wie geschrieben, ich hoffe mal, daß maxpower mich aufschlauen kann, was es mit der Öltemperatur auf sich hat.Der weiss es ganz genau.[ Diese Nachricht wurde editiert von Ahnungslos am 23.04.2019 um 14:58 Uhr ] Diesen Beitrag teilen Link zum Beitrag Auf anderen Seiten teilen
maxpower879 Geschrieben am 23. April 2019 Öl Temperatursensor hat einzig und allein der 54 PS Diesel im 451.Alle anderen haben werksseitig keinen. Egal ob 450 oder 451. [ Diese Nachricht wurde editiert von maxpower879 am 23.04.2019 um 16:10 Uhr ] Smart 450 Cabrio 2002 599 71 PS Smart 451 2007 Turbo Cabrio 115 PS Seres 3 Diesen Beitrag teilen Link zum Beitrag Auf anderen Seiten teilen
Ahnungslos Geschrieben am 23. April 2019 Quote:Am 23.04.2019 um 13:14 Uhr hat Petros_T geschrieben:Ich kann mit der Delphi Diagnose meine Öltemperatur auslesen, wieso sollte es nicht möglich sein die aus dem Bus zu lesen?Danke für die Info, max, die meine Kenntnis der Sachlage bestätigt.Aber woher kommt dann die angebliche Anzeige der Öltemperatur über OBD bei Petros_T über das Delphi? :-?Gemäß seiner Signatur hat er ja einen 71 PS mhd![ Diese Nachricht wurde editiert von Ahnungslos am 23.04.2019 um 17:12 Uhr ] Diesen Beitrag teilen Link zum Beitrag Auf anderen Seiten teilen
450-3 Geschrieben am 23. April 2019 Quote:Am 23.04.2019 um 13:14 Uhr hat Petros_T geschrieben:Ich kann mit der Delphi Diagnose meine Öltemperatur auslesen, wieso sollte es nicht möglich sein die aus dem Bus zu lesen?Nicht alles, was in den Liveparametern zu sehen ist, liegt auch zwangsläufig auf dem Bus - gerade bei Sensorwerten die nur vom Steuergerät intern verwendet werden und sonst niemand braucht. Diesen Beitrag teilen Link zum Beitrag Auf anderen Seiten teilen
Petros_T Geschrieben am 23. April 2019 Jetzt war ich nochmal im Auto und habe den Laptop dran gehabt, siehe da - ich habe folgendes mal abfotografiert. Somit hat der Smart sogar mehr Sensorik wie gedacht. Ich denke diese Parameter sind auch wichtig um den Start Stop betrieb zu regeln. Alles was über den OBD Port abgreifbar ist, sollte auch ohne Diagnose auslesbar sein.-----------------Smart ForTwo 2011 // 71 PS mhd. // 2010 // Smart ForTwo Brabus Xclusive 102 // Diesen Beitrag teilen Link zum Beitrag Auf anderen Seiten teilen
450-3 Geschrieben am 23. April 2019 Tolle Sensorik, die aus nicht vorhandenen Sensoren irgendeinen Temperaturwert zaubert. Wo kommt denn die Getriebetemperatur her? Den entsprechenden Sensor gibt es schon seit dem B03 im 450er nicht mehr und der Wert wird nur noch vom Computer berechnet.Bestimmt gibt es auch noch irgendwo einen Fake-Wert für den Drehwinkelsensor, der beim 451 doch auch abgeschafft wurde, wenn ich mich richtig erinnere. Quote:Am 23.04.2019 um 21:15 Uhr hat Petros_T geschrieben:Alles was über den OBD Port abgreifbar ist, sollte auch ohne Diagnose auslesbar sein.Sicherlich, wenn man das Diagnoseprotokoll selbst implementiert und darüber mit den Steuergeräten kommuniziert. Ansonsten: Nein. Hast du dir mal eine Diagnose-Session im CAN-Logger angeschaut? Das läuft komplett parallel zu dem, was z.B. hier in dem verlinkten Dump drin steht, verpackt in ganz andere Nachrichten.Oder meinst du, dass AutoCom die angezeigten Werte tatsächlich aus den regulären CAN-Frames ausliest? [ Diese Nachricht wurde editiert von 450-3 am 23.04.2019 um 21:55 Uhr ] Diesen Beitrag teilen Link zum Beitrag Auf anderen Seiten teilen
Ahnungslos Geschrieben am 23. April 2019 Also mich frage mich ja immer noch, wie er ohne Sensor die Öltemperatur bestimmt!Das kann eigentlich nur ein hochgerechneter Wert sein! Diesen Beitrag teilen Link zum Beitrag Auf anderen Seiten teilen