[Selbstbau] Arduino Nano mit MCP2515 und OBD oder Infotainment System verbinden

  • Ich hab mich mal ran gesetzt und eine kleine Skizze angefertigt, mit der ihr super einfach und günstig euer Auto via OBD Port abhören könnt.


    Außerdem habe ich die Pinbelegung für NAC, RCC und Smeg hinzugefügt, sowie die entsprechende Baudrate, die benötigt wird.

    Sollte das entsprechende Infotainment bereits mit einem Zentralsteuergerät (BSI) verbunden sein, könnt ihr entsprechend auch über die Pins am Infotainment System ebenfalls die Canbus Nachrichten abhören.


    Benötigtes Material:





    OBD_Pinout.png




    Schema:


    308 GTi (╯°□°)╯︵ ┻━┻

    Einmal editiert, zuletzt von Mittns () aus folgendem Grund: OBD Skizze hinzugefügt

  • Zur hilfreichsten Antwort springen
  • Guten Tag allerseits!

    Ich tappe bei diesem Thema noch sehr im Dunkeln.

    Frage: Was kann ich nun alles mit diesen Verbindungen (BSI bzw. NAC) anstellen?


    Auf meiner Wunschliste stehen folgende Tasks:

    1. Eco-Modus vorübergehend abschalten

    2. Absenken der Fensterscheiben mittels FB aktivieren

    3. Die Lautstärke des Alarmhorns senken

    4. Die Cornering Funktion (Nebellampen leuchten beim Einlenken) aktivieren (Wurde so bestellt, geht aber nicht)

    5. Einzelne CAN-Befehle aus dem Strom herausfiltern, kopieren und selber einspeisen, z.B. Park Assist direkt aktivieren statt über mehrere Schritte einschalten


    Vielleicht sind einige dieser Wünsche realisierbar, aber ich habe keine Ahnung wie vorgehen, wie lauten die Befehle, usw.


    Was da ist: Ein Arduino uno mit CAN-Shield und funktionierender SW, d.h. die Verbindung mit dem BSI kommt zustande. (Meldung Diagnose Sitzung läuft)

    Ebenso läuft die SW PSA-Arduino-NAC.exe. das Abspeichern der Werte hat geklappt.

    Kann man mit CanHacker.exe etwas anstellen, z.B. Sachen herausfiltern?


    Viele Fragen. Es wäre sicher für viele "Bastler" interessant hier weiterzukommen.

    Ganz vielen Dank schon mal im Voraus für Eure Antworten.

    Grüsse aus Zürich

    Yule

  • Frage: Was kann ich nun alles mit diesen Verbindungen (BSI bzw. NAC) anstellen?

    Schwer zu beantworten, man kann vieles damit anstellen.

    Man kann auf dieser Weise mit den entsprechenden Befehlen auch Codierungen vornehmen, so wie Diagbox, nur ohne Diagbox.

    Oder Fehler auslesen (Daten müssen natürlich umgewandelt werden) oder einfach nur Daten abfangen.


    Am Auto sollte man es allerdings meiden, wenn man nur spielen will, denn man kann mit falschen Befehlen auch vieles kaputt codieren. :P


    Eco-Modus vorübergehend abschalten

    Der Befehl für das BSI2010 lautet: 3101DF0A3C

    Ob der auch für BSI2017 kompatibel ist, kann ich leider nicht testen, hab nur ein 2010er zum spielen hier.

    Davor muss das BSI einmal entsperrt werden, ansonsten nimmt das BSI keine Befehle entgegen.

    Dazu schickt man 3 Befehle nacheinander.

    Code
    >752:652

    danach

    Code
    :E4D8:03:03

    Und dann der Befehl zum deaktivieren des Eco Modus.

    Code
    3101DF0A3C


    2. Absenken der Fensterscheiben mittels FB aktivieren

    3. Die Lautstärke des Alarmhorns senken

    4. Die Cornering Funktion (Nebellampen leuchten beim Einlenken) aktivieren (Wurde so bestellt, geht aber nicht)

    Hab ich noch nicht ausgelesen, muss ich demnächst mal gucken.

    Im Moment ist wenig Zeit. :see_no_evil_monkey:


    Hab bereits eine funktionierende Anwendung dafür geschrieben, weil's Spaß macht. ^^

    (Auch mit Filter ^_^ )


    Ich kann zum Beispiel die 2 Funktionen (siehe Bild) de- & aktivieren oder beim Nac Android Auto aus- & einschalten oder Fahrgestellnummern ändern.



    Vielleicht sind einige dieser Wünsche realisierbar, aber ich habe keine Ahnung wie vorgehen, wie lauten die Befehle, usw.

    Im Prinzip ist die einfachste Methode, wenn man mit Diagbox codiert, die Befehle von Diagbox filtern und notieren.


    Kann man mit CanHacker.exe etwas anstellen, z.B. Sachen herausfiltern?

    Ja, kann man.

    Canbus ist ja nichts neues, im Prinzip kann man jede Can Library nehmen und etwas umschreiben, damit es funktioniert.

    Der Sketch von Github erleichtert es allerdings schon enorm.

  • Ganz vielen Dank für die vielen wertvollen Infos!! Toll!


    Uiii, BSI entsperren macht mir Angst.... (Garantie), da lasse ich im Moment doch lieber die Mühle laufen, während ich Versuche mache, Es ist sicher ein neueres BSI, da Baujahr 2020.


    Gerne werde ich hier berichten, wenn ich mit den Sachen weiterkomme.

    Grüsse

    Yule

  • Uiii, BSI entsperren macht mir Angst.... (Garantie), da lasse ich im Moment doch lieber die Mühle laufen, während ich Versuche mache, Es ist sicher ein neueres BSI, da Baujahr 2020.

    Naja, es sperrt sich ja nach 5 Sekunden eh wieder, wenn es innerhalb der 5 Sekunden keinen Befehl bekommt.

    Also kein einmaliges entsperren, sondern es muss jedes mal entsperrt werden.

    So wie die alle anderen Steuergeräte auch.

    Dient der Sicherheit.


    Gerne werde ich hier berichten, wenn ich mit den Sachen weiterkomme.

    Feedback ist immer willkommen. :thumbs_up:

    Das hilft dann auch anderen weiter.

  • Guten Tag allerseits!

    Eigentlich sind es ja 2 verschiedene Themen, über die wir hier schreiben:

    1. Was über die ODB-Buchse Anschlüsse 3 + 8 machbar ist, und

    2. Was über den CAN-Anschluss des NAC möglich ist.


    Ich möchte nun ein Projekt via NAC starten, d.h. gewisse CAN-Befehle abhören und dann selber ins System eingeben.

    Konkret als erstes die Temperatureinstellungen der Klimaanlage über externe Drehregler beeinflussen.

    Dazu braucht es einen fixen CAN-Bus Anschluss. Die richtigen Drähte im Kabelgewirr zu finden habe ich aber bisher nicht geschafft. Wer weiss Rat?

    Happy Day

    Yule

  • Das hier schon gesehen? ;)

  • Ja, habe ich gesehen. (Die Skizze ist bei mir sehr verschwommen und nicht lesbar).

    Ich möchte aber das NAS nicht ausbauen, weiss auch nicht wie, sondern den Kabelstrang irgendwo anzapfen, wo er ohne viel Demontage zugänglich ist.

    Also ist die Frage, wo befindet sich das andere Ende? Wo geht er hin? Es muss sich ja um ein verdrilltes Adernpaar handeln, welche Farbe haben die Drähte?

    Um welchen Bus handelt es sich überhaupt? CAN-INFO-DIV? Low Speed oder High Speed. (Sorry, bin in dieser Technik ein Greenhorn) ^^

  • Ja, habe ich gesehen. (Die Skizze ist bei mir sehr verschwommen und nicht lesbar).

    Bildschirm vielleicht reinigen? xD

    Du kannst das Bild auch als Original ohne Frame anzeigen lassen, da ist alles lesbar.



    Ich möchte aber das NAS nicht ausbauen, weiss auch nicht wie, sondern den Kabelstrang irgendwo anzapfen, wo er ohne viel Demontage zugänglich ist.

    Also ist die Frage, wo befindet sich das andere Ende? Wo geht er hin? Es muss sich ja um ein verdrilltes Adernpaar handeln, welche Farbe haben die Drähte?

    Die Drähte haben von Modell zu Modell unterschiedliche Farben, danach kann/sollte man nicht gehen.

    Die 2 Drähte gehen zum BSI.


    Beim BSI2010 ist es:

    Stecker 60V BE - Pin 27 (Can High)

    Stecker 60V BE - Pin 29 (Can Low)


    Um welchen Bus handelt es sich überhaupt? CAN-INFO-DIV? Low Speed oder High Speed. (Sorry, bin in dieser Technik ein Greenhorn) ^^

    Pin 10 und 21. ;)

    Low Speed (125kbps).


    Müsste ich mal in der Tabelle irgendwann hinzufügen.

  • Ja, habe ich gesehen. (Die Skizze ist bei mir sehr verschwommen und nicht lesbar).

    Ich möchte aber das NAS nicht ausbauen, weiss auch nicht wie, sondern den Kabelstrang irgendwo anzapfen, wo er ohne viel Demontage zugänglich ist.

    Also ist die Frage, wo befindet sich das andere Ende? Wo geht er hin? Es muss sich ja um ein verdrilltes Adernpaar handeln, welche Farbe haben die Drähte?

    Um welchen Bus handelt es sich überhaupt? CAN-INFO-DIV? Low Speed oder High Speed. (Sorry, bin in dieser Technik ein Greenhorn) ^^

    you can connect with (low speed sketch) or sketch from canhacker library cdc to parking module in the boot


  • Morning! Thanks for the tip.

    Can still not see the pictures in detail.


    Frage: Kann ich hier ein neues Thema eröffnen? "Direktwahltasten entwickeln"

    Nicht alle Drivers sind glücklich darüber, dass alles über den Touchscreen bedient werden muss. Es gibt einen Trend der Hersteller zu Direktwahltasten. So gesehen beim neuen C4. Da kann man offenbar die Heizung wieder mittels Knöpfen einstellen. Das war zuletzt bei meinem C4 von 2013 so, es gab schöne Drehregler mit Anzeige, 1 x links, 1 x rechts separat.

    Ich denke, das möchten einige wieder haben?

    Mithilfe wäre sehr willkommen......

  • Frage: Kann ich hier ein neues Thema eröffnen? "Direktwahltasten entwickeln"

    Sofern es mit Programmierung zutun hat, gerne. :thumbs_up: :)

    Ansonsten, wenn es ein anderes Projekt wird, dann erstmal hier.


    Wir finden dann schon einen passenden Ort.


    Und Elektronik Fragen ist auch kein Problem.

    Meine Beruf ist Strippenzieher. ^_^

  • Toll!

    Mir schwebt ein universell programmiertes "Kästchen" vor, das für andere leicht nachbaubar ist. Das heisst:

    1. Einen gut erreichbaren Busanschluss finden (Can-Info-Div)

    2. Die richtigen Can-Botschaften ermitteln und abspeichern

    3. Ausprobieren, ob diese Can-Befehle von einem externen Knoten (also dem Kästchen) akzeptiert werden, also wunschgemäss wirken

    4. Die Elektronik in ein passendes kleines Gehäuse einbauen. Arduino, Drehgeber, Tasten, evtl. auch Anzeigen

    5. Ein Programm für den Arduino schreiben, das auch leicht an verschiedene Wünsche anpassbar ist. (kann ich eher nicht :/ )

    6. Im Endausbau könnte man das Ganze noch drahtlos betreiben, via IR oder BT oder 433MHz Funk. (Das Kästchen soll ohne Kabel auskommen)

    Geht halt nur mit Teamwork.


    Was möchte ich steuern? Heizungstemperatur und Fan-Speed, Aktivieren des Parking Assist, und so weiter.

    Natürlich soll es für verschiedene PSA Modelle anpassbar sein.

    Meinungen dazu sind sehr willkommen!

  • 2.und 3. sollten für die Multimedia Tasten mit dem Sketch auch möglich sein.

    Das Steuergerät empfängt ein Befehl und gibt auch gleichzeitig wieder eins zurück.


    Wenn nicht, gibt es noch einen "Read" Befehl, womit man immer einen aktuellen Status abfragen kann.

    Kann man zum Beispiel im Programm Setup machen, um beim Start des Arduinos einmalig den Status abzufragen.


    4. Ist ja auch nix wildes, der Fantasie ist ja keine Grenzen gesetzt und Gehäuse gibt's wie Sand am Meer. 8)


    5. Buttons ansprechen usw. ist nicht so schwer, dann müsste man das Programm dafür nur mit dem Cambus Sketch kombinieren.

    Oder einen komplett neuen Sketch, da wir ja nur die Befehle senden und empfangen müssen und der von Github dafür viel zu oversized ist.


    6. Dafür gibt es auch Module mit Sender + Empfänger.

    Hab ich demnächst auch als Erweiterung für mein Smart Home geplant.

    Muss mich dann ein bisschen reinlesen aber sollte auch absolut kein Problem sein.


    Funktioniert alles 1A und sogar OTA Updates kann ich bequem ohne Kabelverbindung machen.

    (Nutze hier allerdings nen ESP32, da ich mehr Leistung benötige)

    Alles selbst geschrieben und designt. ^_^



    Ist nur noch nicht ganz fertig, wie man sieht. xD

    Es kommen noch diverse Sachen dazu.

  • Very interesting project, for this project in my opinion 2 can shield must be used, a similar project I am undertaking to make some things work that after replacing the instrument panel with one of 3008, and now no longer work

  • Shield and Uno is comparatively expensive, you can also simply use 2 Nano's and 2 MCP2515 modules.


    I also found a useful obd splitter on aliexpress, to connect VCI and both Arduinos.



    For example i use one arduino to telecode and another to catch the commands from diagbox.

    There are many options to live out your creativity.:)

  • Always very interesting your projects, I recommend everyone to buy arduino and mcp2515 from china (AliExpress).


    I have already done some shopping, but there is always little time to rehearse.


    I would be curious to understand the connections of your splitter, are they simple y on the line?

  • I would be curious to understand the connections of your splitter, are they simple y on the line?

    Exactly.

    Just a simple 1:1 pin connection to each side.

    It's a lot more convenient with this splitter.


    I have already done some shopping, but there is always little time to rehearse.

    What are you going to do with so many modules?

  • Vielleicht muss ich meinen Arduino doch mal wieder aus dem Regal holen, viel interessante Ideen hier!


    Viel Erfolg allerseits mit dem Entwickeln!


    Groetjes,

    Hermann

  • Gibt es bezüglich 2. (Absenken der Fensterscheiben mittels FB aktivieren) schon etwas neues? Das wäre eine Funktion für die ich meinen Arduino zu entmotten und mit dem Auto zu verbinden....

Jetzt mitmachen!

Hey! Es scheint, als ob Dir dieser Austausch gefällt, aber Du hast bisher noch kein Benutzerkonto erstellt. Mit einem Konto kannst Du über neue Antworten informiert werden, Foto's in unsere Galerie hochladen, unsere Tools nutzen, anderen mit einem „Gefällt mir“ danken oder selbst dabei unterstützen, anderen zu helfen. Gemeinsam können wir dazu beitragen, diese Community zu etwas größerem zu machen.