Jump to content
local stone

Smart 451 CDI Daten über CAN-Bus auslesen

Empfohlene Beiträge

Hallo liebe Smart-faszinierte...

Ich habe ein kleines Projekt, das ich endlich mal machen will.

Über OBD2 mit einem CAN-Adapter Daten auslesen und Filtern (Füllstand Tank, Öltemp, Kühlflüssigkeittemp usw).

Dazu folgende Bauteile:

 

https://www.amazon.de/AZDelivery-MCP2515-Shield

https://www.amazon.de/gp/product/B081N7G2BR/ref=ewc_pr_img_1?smid=A3LR51RN935ZZX&psc=1

Einen Arduino habe ich bereits.


Aufbau:

----------------------------------------------------------------------------

Verbindung des MCP2515-Moduls mit dem OBD2-Port

OBD2-Port MCP2515-Modul
Pin 6 (CAN-H) CAN-H
Pin 14 (CAN-L) CAN-L
Pin 4 (GND)

GND

-----------------------------------------------------------------------------

 

 

Ist das bei dem Smart technisch möglich? Ich muss nur das wissen und vielleicht ein paar nützliche Tipps falls das jemand schonmal gemacht hat.

 

Danke!

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

Ja, ist möglich. Beim 451 ist im Gegensatz zum 450 ja praktischerweise der CAN-Bus gleich über die OBD-Dose erreichbar.

 

Wenn du die Nachrichten-IDs mit den Werten noch nicht kennst, ist die Analyse mit einem Arduino aber recht mühsam, da man von der Masse der Daten sofort erschlagen wird.

Ich habe mir dafür eine Lösung mit einem RaspberryPI Zero W und diesem Adapter (KLICK) gebaut, als WLAN AccessPoint konfiguriert und eine Powerbank drunter geschnallt. Zugriff dann drahtlos mit dem Notebook über SSH. 

Der Adapter wird von Linux unterstützt und man kann z.B. die CAN-Tools verwenden.

Damit geht die Auswertung, in welchen Nachrichten sich die gesuchten Werte verstecken, viiiiel einfacher und schneller :classic_smile:

 

raspi_can_interface.jpg.5ecc3f9f4749c9c76678e6e55ec0ee4b.jpg

 

Vieles von dem, was über die Diagnose als Parameter ausgelesen werden kann, liegt aber auch gar nicht direkt auf dem CAN-Bus. Für diese Werte müsstest du dann noch zusätzlich das Diagnoseprotokoll emulieren, um die Parameter aktiv beim Steuergerät abzufragen, so wie es auch das Diagnosegerät macht.

Das Diagnoseprotokoll selbst läuft beim 451 dann aber auch wieder auf dem CAN-Bus, kann also ebenfalls recht einfach analysiert werden, wenn du dich parallel zum Diagnosegerät an den Bus klemmst und den Datenverkehr beobachtest.

 

bearbeitet von 450-3

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen
vor 7 Minuten schrieb 450-3:

Ja, ist möglich. Beim 451 ist im Gegensatz zum 450 ja praktischerweise der CAN-Bus gleich über die OBD-Dose erreichbar.

 

Wenn du die Nachrichten-IDs mit den Werten noch nicht kennst, ist die Analyse mit einem Arduino aber recht mühsam, da man von der Masse der Daten sofort erschlagen wird.

Ich habe mir dafür eine Lösung mit einem RaspberryPI Zero W und diesem Adapter (KLICK) gebaut, eine Powerbank drunter geschnallt und als WLAN AccessPoint konfiguriert. Zugriff dann drahtlos mit dem Notebook. 

Der Adapter wird von Linux unterstützt und man kann z.B. die CAN-Tools verwenden.

Damit geht die Auswertung, in welchen Nachrichten sich die gesuchten Werte verstecken, viiiiel einfacher und schneller :classic_smile:

 

raspi_can_interface.jpg.5ecc3f9f4749c9c76678e6e55ec0ee4b.jpg

 

Vieles von dem, was über die Diagnose als Parameter ausgelesen werden kann, liegt aber auch gar nicht direkt auf dem CAN-Bus. Für diese Werte müsstest du dann noch zusätzlich das Diagnoseprotokoll emulieren, um die Parameter aktiv beim Steuergerät abzufragen, so wie es auch das Diagnosegerät macht.

Das Diagnoseprotokoll selbst läuft beim 451 dann aber auch wieder auf dem CAN-Bus, kann also ebenfalls recht einfach analysiert werden, wenn du dich parallel zum Diagnosegerät an den Bus klemmst und den Datenverkehr beobachtest.

 

Das nenne ich mal informativ!. Mega!. Ich habe noch einen esp8266. Müsste mit dem ja auch gehen weil er auch wlan hat, oder sind die Datenmengen so groß? Welche Libary nutzt du auf dem Raspi, bzw wie funktioniert es im Detail? Dann bestelle ich das OBD Kabel oder vielleicht ein günstigeres und den Can-bus Adapter.

 

Für die Analyse gibt es ja dann relativ praktische Tools, die die Auswertung erleichtern.

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

Auf dem PI Zero (nicht die Pico-Version mit dem Microcontroller sondern nur der etwas geschrumpfte Standard-PI) läuft bei mir raspbian Linux mit dem Paket "can-utils".
Damit gibt es dann ein paar Kommandozeilen Tools zur Auswertung, z.B. den cansniffer, der aus den Tausenden Nachrichten pro Sekunde schön übersichtlich nur die anzeigt, die sich wirklich geändert haben.

Wenn du also wissen willst, ob der Status der Klimaanlage auf dem Bus verfügbar ist, startet man das Tool, schaltet die Klima einmal ein und aus und sieht sofort, welche Nachrichten sich geändert haben und interessant sein könnten.

 

Es gibt auch Tools, um Nachrichten zu erzeugen und dann zu sehen was passiert. Damit habe ich am Kombiinstrument die verfügbaren Symbole in der Ganganzeige gefunden, mit einem Shellscript, dass einfach über zwei Schleifen alle Bits durchprobiert hat. 

Das kann man natürlich auch alles irgendwie in den Arduino programmieren aber mir fehlt da die Flexibilität um schnell mal etwas auszuprobieren. Und warum sich unnötig Arbeit machen, wenn es die Tools schon gibt.

 

Sobald dann alle Infos bekannt sind und es an die Umsetzung des Projekts geht, nehme ich natürlich auch einen Arduino oder einen ESP. Allein schon weil der PI Zero mit seinem fetten Betriebssystem für die meisten Projekte total überdimensioniert ist und auch nicht echtzeitfähig.

 

bearbeitet von 450-3

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen
vor 1 Minute schrieb 450-3:

Auf dem PI Zero (nicht die Nano-Version mit dem Microprozessor sondern nur der etwas geschrumpfte Standard-PI) läuft bei mir raspbian Linux mit dem Paket "can-utils".
Damit gibt es dann ein paar Kommandozeilen Tools zur Auswertung, z.B. den cansniffer, der aus den Tausenden Nachrichten pro Sekunde direkt nur die anzeigt, die sich wirklich geändert haben.

Wenn du also wissen willst, ob der Status der Klimaanlage auf dem Bus verfügbar ist, startet man das Tool, schaltet die Klima einmal ein und aus und sieht sofort, welche Nachrichten sich geändert haben und interessant sein könnten.

Es gibt auch Tools, um Nachrichten zu erzeugen und dann zu sehen was passiert. Damit habe ich am Kombiinstrument die verfügbaren Symbole in der Ganganzeige gefunden, mit einem Shellscript, dass einfach über zwei Schleifen alle Bits durchprobiert hat. 

Das kann man natürlich auch alles irgendwie in den Arduino programmieren aber mir fehlt da die Flexibilität um schnell mal etwas auszuprobieren. Und warum sich unnötig Arbeit machen, wenn es die Tools schon gibt.

 

Sobald dann alle Infos bekannt sind und es an die Umsetzung des Projekts geht, nehme ich natürlich auch einen Arduino oder einen ESP. Allein schon weil der PI Zero mit seinem fetten Betriebssystem für die meisten Projekte total überdimensioniert ist und auch nicht Echtzeitfähig.

Cool, leider habe ich aktuell nicht so viel Zeit, habe eine Petition gegen 30 auf der Bundesstraße gestartet und bin ziemlich eingebunden (6800 Unterschriften bis jetzt).

Mein Smart mag 30 nicht. 40 oder 50 war ihm doch lieber. Vor allem weil der Spritverbrauch steigt durch das ganze Stop and Go.

 

Ich werde auf dich zurückkommen. Ich glaube ich habe sogar nen raspi 4 noch da. Dann hole ich mir den can-hat für raspi und den für den ESP. Macht das Sinn?

 

Danke für die Hilfe

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden

  • Aktuell beliebt

  • Der letzte Post

    • Damit gibst Du Dir doch schon selbst die Antwort. Die größten Anti-Elektroargumente Reichweite und Laderei somit doch kein Thema. und die Lebensdauer der Akkus ist weit besser als von den Petrolheadstammtischen behauptet. Jedenfalls wenn man die fragt, die auch aus ErFAHRung mitreden können und nicht den Mist glaubt, der im web herumstinkt.   Und die Kosten betreffend steckst Du bei mind 10 Jahre alten Gebrauchten auch nicht drin. Außer Motoren gibts noch Kupplungen, AGRs, Turbos etc, die auch ins Geld gehen können wenn sie kommen und man nicht selber schrauben kann oder will.   Wenn Du das Sorglospaket willst, dann ja, stell Dir einen 0815Aygo etc vors Haus und reite ihn ohne jede Wartung einfach runter. Billiger fährst nicht Auto. Aber das ist wie Sterben unter Neonlicht.   Wenn das Fahren auch ein wenig SPASS machen darf und soll, dann dreh einfach mal ne Runde mit dem smarten ED-Kugelblitz. Von dem muß man nicht Dich nicht überzeugen, das kann der ganz alleine, zumindest als 453. 1x gefahren, für immer verliebt.   Sagt der unverbesserliche 450-Fan DIESELbub.
  • Forenstatistik

    • Themen insgesamt
      151.734
    • Beiträge insgesamt
      1.588.326
×
×
  • Neu erstellen...

Wichtige Information

Wir haben Cookies auf Ihrem Gerät platziert, um die Bedinung dieser Website zu verbessern. Sie können Ihre Cookie-Einstellungen anpassen, andernfalls gehen wir davon aus, dass Sie damit einverstanden sind.