
CAN-Signal generieren, wie
esgey, Freitag, 16.12.2022, 18:39 (vor 904 Tagen)
Sodele, jetzt hab ich auch mal was.
An meinem M62TU erwartet der in die DME(ME7.2) integrierte Tempomat das Speedsignal via CAN-Bus vom DSC.
Meine bisherige Idee ist, einen Arduino mit einem CAN-Shield zu verwenden um das Rechtecksignal in ein Datenwort zu verwandeln und in den Bus zu senden.
Soweit so gut, nur wie müssen die Datenwörter lauten, bzw. wie heißt die PID für dieses Speedsignal?
Ich weiß aktuell noch nicht mal, welches CAN-Protokoll die ME7.2 verwendet.
Hat sich schonmal jemand in diesem Themengebiet ausgetobt? Klar Tino beim E-Touring...
Gibt's eventuell eine einfachere Lösung über sowas wie CAN-Checked, Awron etc.?
CAN-Signal generieren, wie
Andreas Schneider , Freitag, 16.12.2022, 19:43 (vor 904 Tagen) @ esgey
bearbeitet von Andreas Schneider, Freitag, 16.12.2022, 20:03
Hi,
ich hatte mit Tino was ähnliches (andere Problemstellung) besprochen.
Dabei hatte ich ne handvoll Seiten/Hersteller von solchen Spielzeugen gesammelt.
Hab grade alle Links durchgesehen - unbrauchbar.
Aber wenn man nach CAN IO Modulen sucht, kann man was finden:
https://www.autosportlabs.com/product/analogx-4-channel-analog-to-can-bus-interface/
https://www.accuratetechnologies.com/Products/CANverter
https://www.csselectronics.com/products/analog-to-can-bus-digital-pulse
https://inomatic.de/produkte/can-bus-adapter/
Gruß
Andi
--
Reparaturen von Kombiinstrumenten - E23 - E24 - E28 - E30
https://forum.6ercoupe.de/
http://e28-forum.lewonze.de/forum/
http://www.7-forum.com/forum/forumdisplay.html?f=6

CAN-Signal generieren, wie
esgey, Freitag, 16.12.2022, 20:20 (vor 904 Tagen) @ Andreas Schneider
bearbeitet von esgey, Freitag, 16.12.2022, 20:30
Hi, ja ein Modul finden ist jetzt weniger das Problem.
CAN-Shield an einen Arduino und fertig.
Aber ich müsste erstmal wissen, wie das Datenwort aussieht, welches das DSC an die ME7.2 schickt...
Andererseits treibt mich gerade noch der Gedanke um, ob man die DME nicht dazu überreden könnte, das analoge Signal für den Tempomat einfach zu "fressen".
CAN-Signal generieren, wie
Mikes 318iS Cabrio, Samstag, 17.12.2022, 17:22 (vor 903 Tagen) @ esgey
auf revlimited gibts ne anleitung wie man zumindest mit der MSS54(?) den Tempomaten zum laufen bringen kann.
Im Endeffekt braucht man dafür eine Box vom Z3 der das Signal vom Tempomathebel umwandelt, da die neueren Modelle den Tempomat ja per Lenkrad ansteuern.
Im Steuergerät muss man par Dinge umändern, z.b. dass das Signal nicht mehr über das Lenkrad kommt und noch den Umfang der Reifen muss man (codiert) eingeben, da das ganze System wirklich ohne Geschwindigkeitssignal funktioniert.
Anbei der Link: https://www.r3vlimited.com/board/forum/e30-technical-forums/24v-engine-swaps/m54-s54/38...
--
Im Endeffekt braucht man dafür eine Box vom Z3 der das Signal vom Tempomathebel umwandelt, da die neueren Modelle den Tempomat ja per Lenkrad ansteuern.
Das Modul habe ich bereits.
Bist Du nicht im Talk unter Black Hurricane angemeldet?
Im Steuergerät muss man par Dinge umändern, z.b. dass das Signal nicht mehr über das Lenkrad kommt und noch den Umfang der Reifen muss man (codiert) eingeben, da das ganze System wirklich ohne Geschwindigkeitssignal funktioniert.
Das oben erwähnte Modul erzeugt genau die Signale wie das Lenkrad und die kommen über den selben Pin ins selbe Steuergerät.
Dafür muß in keinem der Motorsteuergeräte was geändert werden, dafür ist schließlich dieses Modul da.
Den Umfang der Reifen musst Du ändern, damit Dein Speedsignal -das brauchst Du also weiterhin- richtig ausgewertet wird. Grundsätzlich würde es aber auch ohne funktionieren, nur eben nicht korrekt wie angedacht. Also 1 km/h und 10 km/h sind dann eben 1,1 und 11 km/h o.ä.
Aber die allerwichtigste Info ist, dass man zumindest inn der MSS54 die Quelle, welche der Tempomamat verwertet, ändern kann.
Ich hoffe das kann die ME7.2 auch!!!
Ich hoffe das kann die ME7.2 auch!!!
![]()
![]()
Nunja, habe mich jetzt bis nachts um 4 durch sämtliche zugänglichen Parameter der ME7.2 gequält.
Eine Umschaltung der Quelle, wie in der MSS54, scheint es nicht zu geben.
Zumal das auch dort alles mit Fragezeichen hinterlegt ist und der Typ ja auch klar sagt, dass er das so ändert, weil man das eben so macht und er auch nicht weiß warum...
Das einzige in der ME7.2 was ich finden konnte war ein Parameter für die Anzahl der Geschwindigkeitsimpulse pro 1km mit dem Wert 27645417 (01 A5 D5 E9).
Wegimpulszahl E30 müsste irgendwas im 4700er Bereich sein.
Aber mein kopf ist gerade leer gebrannt...
CAN-Signal generieren, wie
Mikes 318iS Cabrio, Sonntag, 18.12.2022, 10:33 (vor 903 Tagen) @ esgey
Bist Du nicht im Talk unter Black Hurricane angemeldet?
Das ist richtig, das bin ich ;).
Das oben erwähnte Modul erzeugt genau die Signale wie das Lenkrad und die kommen über den selben Pin ins selbe Steuergerät.
Dafür muß in keinem der Motorsteuergeräte was geändert werden, dafür ist schließlich dieses Modul da.
Ah, interessant. Ist ein bisschen her dass ich mich damit beschäftigt habe, aber scheinbar hatte ich das falsch in Erinnerung. Man hat dann also die Möglichkeit entweder das Modul zu nehmen oder die Codierung im Steuergerät zu ändern (zumindest beim MSS54)
Den Umfang der Reifen musst Du ändern, damit Dein Speedsignal -das brauchst Du also weiterhin- richtig ausgewertet wird. Grundsätzlich würde es aber auch ohne funktionieren, nur eben nicht korrekt wie angedacht. Also 1 km/h und 10 km/h sind dann eben 1,1 und 11 km/h o.ä.
Aber die allerwichtigste Info ist, dass man zumindest inn der MSS54 die Quelle, welche der Tempomamat verwertet, ändern kann.
Ich hoffe das kann die ME7.2 auch!!!![]()
![]()
Ich hab da den Typen mal angefragt und er hat gemeint, dass das alles ohne Speedsignal funktioniert (ok, dann sind aber vielleicht 10 kmh nicht wirklich 10 kmh sondern eben 11) aber man trotzdem den Umfang der Reifen braucht weil es sonst sein kann, dass die DME den Tempomat deaktiviert. Hat wohl was damit zu tun, dass sich sonst beim Beschleunigen/Verzögern mit dem Tempomat die Drehzahl zu schnell ändern und dann denkt die DME irgendwas stimmt nicht und deaktiviert den Tempomat zur Sicherheit mal.
--
Ich hab da den Typen mal angefragt und er hat gemeint, dass das alles ohne Speedsignal funktioniert (ok, dann sind aber vielleicht 10 kmh nicht wirklich 10 kmh sondern eben 11) aber man trotzdem den Umfang der Reifen braucht weil es sonst sein kann, dass die DME den Tempomat deaktiviert. Hat wohl was damit zu tun, dass sich sonst beim Beschleunigen/Verzögern mit dem Tempomat die Drehzahl zu schnell ändern und dann denkt die DME irgendwas stimmt nicht und deaktiviert den Tempomat zur Sicherheit mal.
Ja, das mit den Geschwindigkeiten pro Gang wird wirklich zum Problem, da erkennt er dann die Geschwindigkeitsänderung als unplausibel und kickt den Tempomat.
Warum er dann wieder behauptet das ginge ohne Speedsignal, wenn er es doch selbst vom Diff auf Pin22 im X6004 legt will mir nicht in den Kopf. Hab die Forenbeiträge dazu ja auch durchgeackert.
CAN-Signal generieren, wie
Andreas Schneider , Sonntag, 18.12.2022, 14:20 (vor 903 Tagen) @ esgey
Hi,
wäre es möglich, dass man statt dem eigentlichen Speedsignal die Drehzahl + Übersetzung + Reifenumfang zu verwenden?
Gruß
Andi
--
Reparaturen von Kombiinstrumenten - E23 - E24 - E28 - E30
https://forum.6ercoupe.de/
http://e28-forum.lewonze.de/forum/
http://www.7-forum.com/forum/forumdisplay.html?f=6
CAN-Signal generieren, wie
Stefan-TS
, Traunstein, Samstag, 17.12.2022, 16:43 (vor 903 Tagen) @ esgey
Unabhängig davon, dass ich Arduino denkbar ungeeignet finde für den Anwendungsfall würde ich mal 0x153 Mask 0x 00 FF F8 00 00 00 00 probieren, das sollte E46 Std. sein.
Unabhängig davon, dass ich Arduino denkbar ungeeignet finde für den Anwendungsfall würde ich mal 0x153 Mask 0x 00 FF F8 00 00 00 00 probieren, das sollte E46 Std. sein.
Dankeschön.
Wobei mein Verständnis der Angelegenheit nicht im Ansatz die Tiefe hat wie Deines.
Ich gehe mal davon aus, dass die hex 00 00 00 00 am Ende mit Argumenten analog zum speedsignal gefüllt werden müssen.
Gefunden habe ich dafür Faktor 1.28 und Maximalwert 325.12km/h was die ME7.2 frisst.
Ab hier hört's dann bei mir auf...ich habe das Studium der technischen Informatik nicht umsonst sehr früh wieder abgebrochen!
E46 Std. sollte passen. Ich denke, dass E38/39 mit der selben Elektronikarchitektur unterwegs waren, zumindest wenn die selben Motoren/DME verbaut waren.
Also die Generation M54/M62TU...
CAN-Signal generieren, wie
Tom330CI, Sonntag, 18.12.2022, 10:32 (vor 903 Tagen) @ esgey
CAN Arbitration ID for ASC1 is 0x153.
Its sent out by the traction control module at a refresh rate of 10ms for ASC and 20ms for DSC.
Byte 0 - Bitfield
Bit 0 - LV_ASC_REQ
Demand for ASC intervention
Bit 1 - LV_MSR_REQ
Demand for MSR intervention
Bit 2 - LV_ASC_PASV
Status ASC passive (for EGS)
Bit 3 - LV_ASC_SW_INT
ASC Switching influence
Bit 4 - LV_BLS
Status Brake Light Switch
Bit 5 - LV_BAS
Bit 6 - LV_EBV
Bit 7 - LV_ABS_LED
Byte 1 - Bitfield
Bit 0 - LV_ASC_REQ
Bit 1 - LV_MSR_REQ
Bit 2 - LV_ASC_PASV
Bit 3 - VSS [0]
Bit 4 - VSS [1]
Bit 5 - VSS [2]
Bit 6 - VSS [3]
Bit 7 - VSS [4]
Byte 2 - VSS [MSB]
Vehicle speed signal in Km/h
Calculation = ( (HEX[MSB] * 256) + HEX[LSB]) * 0.0625
Min: 0x160 (0 Km/h)
Byte 3 - MD_IND_ASC
Torque intervention for ASC function
Calculation = HEX * 0.390625
Min: 0x00 (0.0%) max. reductiuon
Max: 0xFF (99.6094%) no reduction
Byte 4 - MD_IND_MSR
Torque intervention for MSR function
Calculation = HEX * 0.390625
Min: 0x00 (0.0%) no engine torque increase
Max: 0xFF (99.6094%) max engine torque increase
Byte 5 - Unused
Byte 6 - MD_IND_ASC_LM
Torque intervention for MSR function
Calculation = HEX * 0.390625
Min: 0x00 (0.0%) max. reductiuon
Max: 0xFF (99.6094%) no reduction
Byte 7 - ASC ALIVE
00h - 0Fh
Alive counter to verify message integrity
Herzliche Grüße an Robin
CAN-Signal generieren, wie
Stefan-TS
, Traunstein, Sonntag, 18.12.2022, 11:31 (vor 903 Tagen) @ Tom330CI
CAN Arbitration ID for ASC1 is 0x153.
Its sent out by the traction control module at a refresh rate of 10ms for ASC and 20ms for DSC.
Byte 0 - Bitfield
Bit 0 - LV_ASC_REQDemand for ASC intervention
Bit 1 - LV_MSR_REQ
Demand for MSR intervention
Bit 2 - LV_ASC_PASV
Status ASC passive (for EGS)
Bit 3 - LV_ASC_SW_INT
ASC Switching influence
Bit 4 - LV_BLS
Status Brake Light Switch
Bit 5 - LV_BAS
Bit 6 - LV_EBV
Bit 7 - LV_ABS_LED
Byte 1 - Bitfield
Bit 0 - LV_ASC_REQ
Bit 1 - LV_MSR_REQ
Bit 2 - LV_ASC_PASV
Bit 3 - VSS [0]
Bit 4 - VSS [1]
Bit 5 - VSS [2]
Bit 6 - VSS [3]
Bit 7 - VSS [4]
Byte 2 - VSS [MSB]Vehicle speed signal in Km/h
Calculation = ( (HEX[MSB] * 256) + HEX[LSB]) * 0.0625
Min: 0x160 (0 Km/h)Byte 3 - MD_IND_ASC
Torque intervention for ASC function
Calculation = HEX * 0.390625
Min: 0x00 (0.0%) max. reductiuon
Max: 0xFF (99.6094%) no reductionByte 4 - MD_IND_MSR
Torque intervention for MSR function
Calculation = HEX * 0.390625
Min: 0x00 (0.0%) no engine torque increase
Max: 0xFF (99.6094%) max engine torque increaseByte 5 - Unused
Byte 6 - MD_IND_ASC_LMTorque intervention for MSR function
Calculation = HEX * 0.390625
Min: 0x00 (0.0%) max. reductiuon
Max: 0xFF (99.6094%) no reductionByte 7 - ASC ALIVE
00h - 0Fh
Alive counter to verify message integrityHerzliche Grüße an Robin
Es ist schon eine Zeit her als ich damit gearbeitet habe, ist ja jetzt auch nicht mehr das jüngste Model, aber so wie von Tom geschrieben habe ich das auch grob in Erinnerung.
Der Multiplier den du genannt hast würde bei 12bit wenig Sinn ergeben, daher auf jeden Fall mit den 0.0625 starten.
CAN Arbitration ID for ASC1 is 0x153.
Its sent out by the traction control module at a refresh rate of 10ms for ASC and 20ms for DSC.
Byte 0 - Bitfield
Bit 0 - LV_ASC_REQDemand for ASC intervention
Bit 1 - LV_MSR_REQ
Demand for MSR intervention
Bit 2 - LV_ASC_PASV
Status ASC passive (for EGS)
Bit 3 - LV_ASC_SW_INT
ASC Switching influence
Bit 4 - LV_BLS
Status Brake Light Switch
Bit 5 - LV_BAS
Bit 6 - LV_EBV
Bit 7 - LV_ABS_LED
Byte 1 - Bitfield
Bit 0 - LV_ASC_REQ
Bit 1 - LV_MSR_REQ
Bit 2 - LV_ASC_PASV
Bit 3 - VSS [0]
Bit 4 - VSS [1]
Bit 5 - VSS [2]
Bit 6 - VSS [3]
Bit 7 - VSS [4]
Byte 2 - VSS [MSB]Vehicle speed signal in Km/h
Calculation = ( (HEX[MSB] * 256) + HEX[LSB]) * 0.0625
Min: 0x160 (0 Km/h)Byte 3 - MD_IND_ASC
Torque intervention for ASC function
Calculation = HEX * 0.390625
Min: 0x00 (0.0%) max. reductiuon
Max: 0xFF (99.6094%) no reductionByte 4 - MD_IND_MSR
Torque intervention for MSR function
Calculation = HEX * 0.390625
Min: 0x00 (0.0%) no engine torque increase
Max: 0xFF (99.6094%) max engine torque increaseByte 5 - Unused
Byte 6 - MD_IND_ASC_LMTorque intervention for MSR function
Calculation = HEX * 0.390625
Min: 0x00 (0.0%) max. reductiuon
Max: 0xFF (99.6094%) no reductionByte 7 - ASC ALIVE
00h - 0Fh
Alive counter to verify message integrityHerzliche Grüße an Robin
Es ist schon eine Zeit her als ich damit gearbeitet habe, ist ja jetzt auch nicht mehr das jüngste Model, aber so wie von Tom geschrieben habe ich das auch grob in Erinnerung.
Der Multiplier den du genannt hast würde bei 12bit wenig Sinn ergeben, daher auf jeden Fall mit den 0.0625 starten.
Danke Euch mal soweit!
Werde weiter fragen, wenn ich mal da reingeackert habe.
CAN-Signal generieren, wie
dirk_335i , Seeheim-Jugenheim, Sonntag, 18.12.2022, 14:33 (vor 903 Tagen) @ esgey
warum nicht bei soviel Aufwand auch auf das MK60 umrüsten und dann auch ESP nutzen?
CAN-Signal generieren, wie
Tom330CI, Sonntag, 18.12.2022, 15:59 (vor 902 Tagen) @ dirk_335i
Aus Erfahrung kann ich sagen, dass das sehr gut klappt mit dem MK60.
Auch wenn andere da anderer Meinung sind.
Wenn es aber nur das V Signal bedarf, kannst du auch die ASC (MK20?) Einheit von den frühen E46 nehmen.
Das sollte auch mit normalen E30 induktiv Sensoren funktionieren ( teste ich in naher Zukunft ) , hat CAN Bus, ist recht Kompakt, weniger Aufwand und günstiger als das MK60.
MK60 war immer eine Überlegung, hat aber beim aktuell anliegenden Workload an der Karre einfach nicht drin.
Am liebsten wäre mir, wenn ich das in der ME7.2 selbst ändern kann, die EWS habe ich ja auch raus gekriegt.
Ansonsten wollte ich eh schon immer mal mit Arduino und CAN rumspielen.
CAN-Signal generieren, wie
Stefan-TS
, Traunstein, Montag, 19.12.2022, 09:53 (vor 902 Tagen) @ Tom330CI
Hab ich mich auch schon gefragt warum man nicht einfach die ABS Einheit übernimmt, die agieren ja ziemlich autark. Ich bin ein heimlicher MK20 Fan. Den Aufwand ein MK20 gangbar zu machen halte ich persönlich für geringer als ein CAN Signal ohne Vorkenntnisse zu generieren.
Am CAN kannst du dann ja immer noch rumspielen wenn du mal Zeit hast.
Muss aber jeder selber wissen.
Beste Grüße