Standheizung per CAN-Bus steuern

  • Ich will endlich mal wissen wie die kraftstoffbetriebene Standheizung (Zuheizung) mit dem Fahrzeug kommuniziert :-)
    Hierzu fange ich mal diesen Thread an, mal sehen obs mir gelingt. Mit Eurer Hilfe sicher!


    Als erstes mal die bekannten Fakten:
    - Die Webasto TTV hat eine Ford-Spezifische Firmware drauf
    - Die Kommunikation mit dem Fahrzeug findet über den MS-CAN Bus statt.
    - Die Bedienung geschieht über das Convers+. Damit kann man:
    - Die Zuheizfunktion (bei laufendem Motor) an/aus schalten.
    - Die Standheizungs an/ausschalten (Sofort-Heizen).
    - Die Ein-/Ausschalttimer für die Standheizung programmieren.
    - Sobald die Heizung läuft wird dies im Convers+ angezeigt, auch wenn das Fahrzeug verschlossen ist.


    Fraglich ist bislang:
    - Wer steuert die Heizung wirklich? Nur das Convers oder auch das BCM, oder gar das PCM?
    - Wie sieht die CAN-Kommunikation aus (Nachrichten, Bedeutung, Vorkommen)?
    - Wie sind die Timer realisiert? Sind diese rein intern im Convers und dieses steuert bei Zeiten die Heizung, oder werden die Zeiten in die Heizungssteuerung programmiert?
    - Wer ist für die ganzen Sicherheitssperren (Kraftstoff, Außentemperatur, Anzahl der Startvorgänge, etc.) verantwortlich? Das Fahrzeug oder die Heizungssteuerung selbst?
    - Wie wird die Lüftersteuerung realisiert? Ist hier das IPC, das HVAC oder die Heizung für die Positionierung der Klappen und Luftstromstärke zuständig?


    Mein Sekundärziel:
    Ein Steuermodul zu entwickeln, welches in den OBD-Port kommt und die Heizung per CAN-Bus steuert, anstelle dem W-Bus. Dieser ist sehr leicht zugänglich und bei jedem Fahrzeug verfügbar (im Gegensatz zum W-Bus, der mitunter nachgezogen werden muss). Über ein Bluetooth bzw. GSM-Modul soll sich die Heizung bequem per Smartphone steuern lassen. Egal ob vorprogrammierte Zeit, oder Sofort-Heizen aus der Entfernung.


    Umsetzung:
    Ich habe schon unzählige Scans auf dem MS-CAN gemacht um aus dem Datenstrom die Nachrichten für die Heizung zu finden, bislang alles ohne Erfolg. Ich muss also ein Gateway-Modul direkt vor die Heizung klemmen. So kann ich genau sehen welche Nachrichten von der Heizung gesendet werden. Um zu wissen welche diese benötigt ist etwas Trial+Error angesagt. Hierzu würde ich die vom fahrzeug eintreffenden Nachrichten stückweise filtern und zwar so lange bis sich diese nicht mehr programmieren/starten lässt. Anschließend könnte ich versuche die Kommunikation selbst durchzuführen. Ob dies erfolgreich sein wird ist davon abhängig, ob die Information CAN-typisch periodisch auf dem Bus anliegt, oder nur bei Bedarf gesendet wird.

  • Im ersten Schritt werde ich die Stelle suchen, an der ich mich elegand zwischen CAN-Bus und Standheizungsmodul klemmen kann.


    Variante 1)
    Laut Schaltplan startet der MS-CAN Bus vom BCM ("C1") und geht dann direkt zum Kompaktstecker "C12" im Beifahrerfußraum. Dazwischen gibt es nur eine Abzweigung (Splice) zur Standheizung.

    In dem kurzen Stück (schätze max. 1m) zwischen C1 und C12 müssen die Abzweigpunkte SP290 und SP282 liegen. Evtl. sind die auch direkt oder in der Nähe der Steckkontakte.
    Von da aus muss es dann in Richtung Motorraum gehen. Der Durchgang dafür ist ebenfalls im Beifahrerfußraum. Am besten kommt man dran, wenn das Handschuhfach draussen ist.
    Diese Stelle werde ich suchen und mich einhängen. Da ich den Bus hier auftrennen muss, werde ich wohl zweipolige KFZ-Steckkontakte drauf klemmen.


    Variante 2)
    Alternativ könnte man auch im Motorraum am Stecker der Heizung was zwischenklemmen.


    Ich werde zunächst Variante 1 versuchen. Als Steckverbinder habe ich mir diese hier ausgesucht. Die sollten ok sein. In der Zeit wo ich mein Modul zwischenklemme, werde ich das jeweils ins Handschuhfach verlängern. Das ist sowas wie der Unversalspielplatz für meine Erweiterungen und Basteleien geworden ;-)

  • Alternativ könnte man auch im Motorraum am Stecker der Heizung was zwischenklemmen.


    Die sitzt im Radkasten.

    Gruß aus Erfurt


    Schon der dritte Ford und der Fahrer wird nicht schlau draus!

  • So, habe gestern noch kurz Zeit gefunden das Steuerteil meiner erworbenen original-SH mal an Spannung und an CANHacker anzuklemmen. Zumindest ist nun klar welche CAN-IDs die Heizung verwendet, was für mich schonmal viel wert ist, weil ich so meine MS-CAN Logs danach untersuchen kann.

    Die Heizung verwendet ID 1F0 für die Kommunikation und 509 für das Network-Management.

    Als nächstes versuche ich herauszufinden welche Befehle die Heizung starten/erhalten/stoppen/abfragen. Ich habe ja noch ein Convers+ und Lenkradtasten hier und meine Idee ist das mit einer CCC zu beschicken die SH-Steuerung erlaubt. Dann müsste ich vom Convers aus den Startbefehl geben können, was ich wiederum aufzeichnen kann.


    Mal schaun wie weit ich da komme. Mein Ziel wäre die SH, quasi alternativ zum W-Bus, über den CAN-Bus zu steuern. Das hat jetzt vielleicht keinen direkten, offensichtlichen Nutzen oder Mehrwert gegenüber dem W-Bus, aber meine Hoffnung ist herauszufinden wie die Klimasteuerung (Klappen, Motor) dadurch aktiviert werden. Mit diesem Wissen könnte man sich dann einen CAN-Adapter bauen, welcher eine Nachrüstheizung so arbeiten lässt wie eine originale. Also quasi "W-Bus <-> Ford MS-CAN Bus" Converter.

  • klingt interessant. wenn man jetzt für den Vergleich noch eine org. Webasto oder VAG hätte könnte man auch die Unterschiede raus bekommen.

  • In der von Ford ist ein MC9S12DG256 16-Bit Mikrokontroller drin. Der verfügt, wie so viele im KFZ eingesetzten uCs zwar über eine JTAG-Schnittstelle, aber auch über einen Ausleseschutz. Es gibt wohl Tools am Markt mit denen man den "knacken" kann, aber die kosten um 500€ aufwärts. Das wäre aber die Grundbedingung um die Firmware auszulesen und damit ein anderes SH-modul zu programmieren.