DIY Hella IBS Batteriecomputer

  • atterietyp, aber wozu ist das dritte -> 3c 02 06 b2 3a...???


    Da liest der Master-Knoten den Batterietyp aus.


    Du meinst schon dieses?

    Code
    00008.168  3c 01 06 b2 3a ff 7f ff ff 8c ERR
    00008.217  7d 01 02 f2 00 ff ff ff ff 0a ERR


    00 sollte in dem Fall der Batterietyp sein... Wobei es den gar nicht gibt...


    Auch trotz der Unterlagen bleibt wohl einiges mysteriös ;)


    Gruß Max

  • Sollte der Kalibrierungsprozess neu gestartet werden wenn ich die Kapazität und den Batterietyp neu an den Sensor sende oder muss man den explizit starten?


    Ne, das geschieht mit setzen des Typs und Kapazität.

    Ich kann senden was ich möchte das bit für die Kalibrierung(0x2C - 5) bleibt 1.


    Die Batterie ist schon noch gut?

  • @wolkenschaufler


    Das unbekannte Diagnostic-Frame muss was anderes sein. In jedem deiner Logs sind die Bytes in dem Frame gleich...


    Knaus BoxStar Solution 2017 130PS Multijet, 260Watt Solar + DIY Hella IBS Batteriemonitor, AHK + Atera DL3

  • @xspots


    nutzt du exakt das Arduinosketch mit der Softwareserial-Schnittstelle? Wenn du eine Hardwareserial-Schnittstelle nutzt liegen die Bytes anders im Array, dann empfängst du auf jeden Fall noch dein selber versendetes Sync Byte + das Frame ID Byte (PID)

    Knaus BoxStar Solution 2017 130PS Multijet, 260Watt Solar + DIY Hella IBS Batteriemonitor, AHK + Atera DL3

  • @breezer Dann bin ich da auch überfragt. Evtl wird die Konfiguration gelöscht? Würde zumindest Sinn machen...


    Ich deute die „1“ als Kalibrierung abgeschlossen ist das richtig oder genau umgekehrt?


    1 bedeutet die Kalibrierung ist abgeschlossen und der SoC sollte korrekt dargestellt werden...

  • Wie hast du das Log aufgezeichnet? Hast du die neuen Werte im Display eingegeben und das dann aufgezeichnet?


    Ich bin jedes Mal in Einstellungen gegangen und hab den Typ und die Kapazität gesetzt. Ist jedes mal der identische Dialog am Display. Und während dessen natürlich aufgezeichnet.

  • ok, das unbekannte Diagnostic-Frame kommt immer zuerst. Evtl. wird wirklich erstmal der Sensor damit auf "Werkseinstellung" zurückgesetzt bevor die neuen Einstellungen kommen...


    Da wird ja hoffentlich nichts kaputt gehen wenn ich das mal an den Sensor schicke. Hast du das in deiner Funk-Eigenbaulösung implementiert?

    Knaus BoxStar Solution 2017 130PS Multijet, 260Watt Solar + DIY Hella IBS Batteriemonitor, AHK + Atera DL3

  • @breezer


    ich nutze in meinem Code Softwareserial sollte also somit keine Probleme geben.


    Trotzdem habe ich es gestern Abend nicht geschafft den Sensor dazu zu bringen sich neu zu Kalibrieren.


    Ich habe zuerst die Batteriekapazität gesendet und bekomme die gesendete Kapazität wieder zurück (PID:2C).
    Danach habe ich den Batterietyp gesendet und bekomme auch im "Response Frame PID:7D" den gesendeten Batterietyp zurück.


    Das Calibration Bit bleibt aber dauerhaft 1.

  • @xspots


    vielleicht solltest du mal wirklich dieses unbekannte Diagnostic-Frame an deinen Sensor schicken, damit er sich zurücksetzt oder so...


    Code
    00005.731  3c 02 06 b2 3a ff 7f ff ff 8b ERR
    00005.780  7d 02 02 f2 0a ff ff ff ff fe ERR


    Eventuell wird das Calibration-Bit auch erst zurückgesetzt wenn sich der Batterietyp ändert, wenn du z.b. immer AGM sendest änderst du den Batterietyp ja nicht..., wobei bei mir schon das Calibration-Bit auf null gesetzt wird wenn ich den Sensor von der Stromzufuhr trenne...

    Knaus BoxStar Solution 2017 130PS Multijet, 260Watt Solar + DIY Hella IBS Batteriemonitor, AHK + Atera DL3

    3 Mal editiert, zuletzt von breezer ()

  • @xspots


    ich kann mir nur vorstellen das du nicht das richtige Byte ausliest oder das falsche Bit in diesem Byte.
    Das entsprechende Byte ist das 6. Byte im Frame 0x2c. Es ändert sich auch nur das Bit 0 in diesem Byte, die anderen 7 Bits bleiben immer auf 1...


    @wolkenschaufler


    Ich habe etwas mit dem unbekannten Diagnostic-Frame experimentiert. Im Response Frame wird bei mir tatsächlich der eingestellte Batterietyp ausgegeben. Komisch das bei dir in den Logs immer nur 0x0a zurückgegeben wird.
    Jedenfalls kann ich nun dieses Frame nutzen um den einstellten Batterietyp auszulesen...

    Knaus BoxStar Solution 2017 130PS Multijet, 260Watt Solar + DIY Hella IBS Batteriemonitor, AHK + Atera DL3

  • @breezer


    Ok das will ich nicht ausschließen:
    ich werde grundsätzlich diesen code als Grundlage: https://github.com/frankschoeniger/LIN_Interface


    dort gehe ich davon aus das folgender teil für den Kalibrierungszustand ist:
    ...
    readFrame(0x2C);
    ...
    int Calib = bitRead(LinMessageA[5], 0)


    Nach deiner Beschreibung sollte das 6.Byte: 0xFE bzw 11111110 für unkalibriert oder 0xFF bzw 11111111 für kalibriert sein.
    hier die ausgäbe meines Logs:


    ID: EC --> 2C: 0:FF:BC:2:57:1:46:FF:B5: Lesen Ende


    6. Byte = "1" würde 00000001 entsprechen.


    das würde ja gar nicht passen.


    Ich möchte euch schonmal für eure Unterstützung Danken !!!!

  • 0xFE bzw 11111110 für unkalibriert oder 0xFF bzw 11111111 für kalibriert


    Richtig, so sollte es sein. Ist auch so in den Logs von wolkenschaufler zu sehen:


    Code
    00012.919  ec bc 02 dc 01 46 ff 30
    00012.935  3c 02 03 b5 3a 1e ff ff ff ec ERR
    00012.988  7d 02 03 f5 3a 1e ff ff ff ac ERR
    00013.038  e2 31 84 1e dd 30 7b 7a 45
    00013.054  25 94 c8 ff bd 00 00 bf
    00013.070  a6 ee 02 2e 02 4b ff ec
    00013.087  a8 7e 84 1e c8 30 7c 7a 46
    00013.099  2b 88 c8 ff bd 00 00 c5
    00013.115  ec bc 02 dc 01 46 fe 31


    Man beachte das erste Frame (EC) und das letzte Frame (EC), da ändert sich das besagte Byte nach dem Batterietyp setzten von 0xff auf 0xfe.
    Also irgendetwas läuft da bei dir beim Auslesen schief...

    Knaus BoxStar Solution 2017 130PS Multijet, 260Watt Solar + DIY Hella IBS Batteriemonitor, AHK + Atera DL3

  • habe mir das jetzt. noch mal genauer angesehen:


    Code
    # LOG von Wolkenschaufler
    ec bc 02 dc 01 46 fe 31
    
    
    #mein LOG
    0:FF:BC:2:57:1:46:FF:B5


    dann würde mein code das falsche byte benutzen, das würde auch erklären warum ich einen komischen SOH und SOC bekomme.
    Aber warum werden Spannung Strom und Temperatur richtig angezeigt? Es könnte natürlich sein das dort die Bytes angepasst sind.
    Ich werde das nachher mal probieren!

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!