CAN Bus Core Pro

Ja dadurch bin ich drauf gekommen die Bits zu zählen :smiley:

Hatte zwar 250 und 500 ausprobiert, aber nicht 1000 :smiley:

Ich bin da noch guter Dinge, ich hab ja in dem anderen Thread von dir mal nen Git angehängen, wo jemand im Endeffekt das gleiche gemacht hat, aber eben am Batteriecan an der Ecoflow. Oder wars doch der gleiche ?

Jedenfalls so schlimm kann es glaube ich nicht sein :smiley: die ecoflow überlad dich zwar mit Infos, aber viele wird sich ja nicht verändern.

Also, im Anhang mal ein logfie (Ahh mist, geht nicht), faaaaaaaals einer lust hat. Aber ich glaube so schwer wirds nicht.
zwar ist das wohl tatsächlich der RV/C Bus in der Doku, aber ich denke nicht, dass hier was völlig anderes abgeht, denn im RV/C wird nur gesenet, was im EcoCan eh da ist.
Schaun wa mal:

Auf dem Bus haben wir folgende Can ID’S

ID Ecoflow Länge
0x10002001 8 Byte
0x10036001 8 Byte
0x10050001 8 Byte
0x10102001 8 Byte
0x10136001 8 Byte
0x10150001 8 Byte
0x10202001 1,2,4,8
0x10236001 4,6,7
0x10250001 1,4,5,7,8
0x10602001 8 Byte
0x10650001 8 Byte

In der Dokumentation des (vermutlich RV/C) haben wir folgende für mich Relevante ID (Andere werden von einem Anderem Teilnehmer verschickt, vermutlich das Link oder das Display.

PGN Name PGN Number Can ID Default Source Address Data Länge
1 BATTERY_TOTAL_STATUS 0x00E100 0x18E1E546 0x46 8 Byte (4X2)
2 BATTERY STATUS_1 0x00E200 0x18E2E546 0x46 7
3 BATTERY_STATUS_2 0x00E300 0x18E3E546 0x46 8
4 BATTERY_STATUS-3 0x00E400 0x18E4E546 0x46 6
5 INTPUT_TOTAL_STATUS 0x00E500 0x18E5E546 0x46 2
6 INPUT_STATUS_1 0x00E600 0x18E6E546 0x46 7
7 OUTPUT_TOTAL_STATUS 0x00E700 0x18E7E546 0x46 2
8 OUTPUT_STATUS_1 0x00E800 0x18E8E546 0x46 7
9 KITS_TOTAL_STATUS 0x00EA00 0x18EAE546 0x46 4
10 LOAD_STATUS_1 0x00EB00 0x18EBE546 0x46 8
11 LOAD_STATUS_2 0x00EC00 0x18ECE546 0x46 4
12 BATTERY_CHARGE_STATUS 0x00ED00 0x18EDE546 0x46 5

Das sind zumindest schonmal eine ähnliche anzahl an Can ID’s
Und auch die Art der Can Frames scheint (für einen Can Analyse Leihen) gleich zu sein.

Ich habe schon ein wenig geguckt, welche sich garnicht ändern im Log (Ganz oder Teilweise) Hierrüber lässt sich schon eine plausibelität ableiten. aber vermutlich werde ich über einen Anlyser nicht rumkommen, um live die Daten in Savvy anzusehen. Auch muss ich mich noch in das Prgramm einarbeiten, um Muster zu erkennen. Ich kann mir vorstellen, das die ds nicht komplett u mgebogen haben, zumindest muss ja alles was über den RV/C bus läuft, auch direkt auf dem Eco Can sein.

Nächtle :smiley:

Edit: Morgen mal schaun ob ich das ans laufen bekomme.

zumindest könnte ich das auf das PiCan interface von meinem Desktop zugreifen.
@Vincent wie macht ihr das ?

@lbartsch
Kannst du, wenn du das nächste mal an deinem Bus bist, am Can Sniffen ?
Ich brauch auf jedenfall später noch die Signale die vom Display geschickt werden, um bspw. AC einzuschalten, oder Entladegrenzwerte setzbar zu machen (Wobei man hier auch immer noch die Eco App nehmen kann).
Tatsächlich währen AC/DC An so die wichtigsten sachen, oder Falls dir was einfällt was du gerne hättest. :slight_smile:

Am besten ohne Powerlink, ich will nicht wissen, was der noch alles auf den Bus haut :smiley:
Ich glaube das wird deeeeutlich einfacher werden als umgekehrt.

Ansonsten habe ich mich etwas durch das Dokument gewühlt, ich denke mit Powerlink ist das ne schnelles Ding die Eco zu integrieren, da ist echt alles Dokumentiert für den RV/C Bus :smiling_face_with_tear:

Hat noch wer eine Idee, warum ich über Sockencan(d) den Can vom PI nicht übers Netzwerk bekomme, schonmal wer ausprobiert ? Über Powershell sind die Ports erreichbar, aber Savvycan findet den Socketcand Adapter nicht.

Leider ist mein bestellter USB Dongle immer noch nicht da und es reizt weiter zu machen :smiley:

So ich bin weiter, Can Dongle ist da und Analyse kann beginnen.

Was ich bisher weiß, es gibt 11 unterschiedliche Can-Frames auf dem Bus.
Absender ist immer 0x01 (Der Powerhub)
Damit hängen die Batterien vermutlich an einem eigenen Canbus.

Emfänger sind
0x00 (4mal)

0x20 (4mal)

0x60 (3mal)

Jetzt würde es ungemein helfen zu wissen wer das ist. Vermutlich ist das eine der “Powerlink” und das zweite das Display “Powerinsight” und das dritte das “Smart distribution Panel” (Sicherungsblock)

Da ich keines der Geräte besitze, ist es etwas schwierig, hier könnte man 2/3 der Arbeit aussortieren. @lbartsch wie schauts ? :smiley: Welche geräte hast du ? Kannst du einen Candump machen mit einzelnen Geräten nur ?

1 Like

Wie gesagt, ich komme die nächsten Wochen an mein Powerkit nicht dran.Ich höre mich aber mal im.

Kein Problem, ich hab jetzt mal ein Display bestellt und schau mal was dabei rumkommt :smiley:

Also es geht weiter :smiley:

Und es ist vieeel schwieriger als gedacht.

was ich schonmal mehr weiß:
Das Display selber sendet folgende ID`s

0x10A34331 → beim einschaltern der Spannungsversogung genau 22x , danach nie wieder. Vermutlich eine Art “wakeup”.

0x10034001 → keine Ahnung, Inhalt variiert

0x10134001 → keine Ahnung, Inhalt variiert

0x10234001 → hier drin wird AC und DC eingeschaltet (Vom Display, zum HUB).

0x10634001 → keien Ahnung, immer konstant.

Dann habe ich mal die Kommunikation gesnifft und über Savvycan zurück auf das Display geloopt (ohne HUB und ohne die ID`S die das Display sendet)
Erfolg! das Display zeicht wat an :smiley: (Und bleibt beim zweiten Versuch auch an, der erste hatte nur 10sec. geloopt, hier fehlte wohl eine Art “keep alive”, worauf hin das Display neu startete und eine Art Kommunikationsneustart erzwingen wollte. (22x 0x10A… s.O.)).

Was ich weis, wenn ich im Loop (vom HUB) die ID`s teilweise unterdrücke passiert folgendes:

0x10136001 oder 0x10236001 → die Anzeige mit Restlaufzeit und Batterie Staus verschwindet.
0x10102001 oder 0x10202001 → die Anzeige für Solar 1+2 und Wechselstrom Laden Verschwindet.
0x10050001 oder 0x10150001 → die Anzeige für Lichtmaschine verschindet.
0x10250001 → die Anzeige für Ausgangsleistung verschwindet.

Es sind unglaubliche viele Abhängigkeiten in der Übertragung die ich nicht verstehe.
Die Werte selber habe ich auch noch nicht gefunden.
Etliche Werte zählen zyklisch hoch etc.

Am weitesten bin ich bisher beim Display Frame 0x10234001

Da ist ein Frame immer 2 sec. lang, wobei die Abstände innerhalb des Frames am Anfang größer werden und am Ende kleiner.
Die Frames beginnen mit der Doppelt (Uptime?) läuft hoch mit Systemstart in sec. von 03 bis FF
also
03 03 ?? ?? ?? ?? 00 00 bis FF FF ?? ?? ?? ?? 00 00
Und endet jeweils mit doppel Byte, jeweils +1 hochgezählt.

Dann recht interessant:
Toogle ich am Display AC in, gibt es immer ein zwischen Frame (im Laufenden Frame). Die Gesammtlaufzeit des Frames wird nicht beeinflusst, sondern dazwischen gehauen.

Hierbei ist:
FF FF FF FF ?? ?? 00 00 → AC an UND aus ?!?
50 22 FF 01 ?? ?? 00 00 → DC AN

50 22 FF 00 ?? ?? 00 00 → DC AUS
Die Abhängigkeit der ?? verstehe ich nicht.
Irgendwie ne Checksumme aus Festwert/laufender Zähler?/BEfehlt selber?
(AC An/Aus muss ja auch noch unterschieden werden)

Mor ist eben eine für mich geniale Kleinigkeit beim Basten aufgefallen.

Das bisherige Problem war ja, der Core Pro am DC port hängt und sobald ich diesen Abschalte, der Core tod ist. Damit entfällt auch eine Sinnhaftigkeit DC abschalten zu wollen.

Aber, wie ist denn das Originale Display mit Strom versorgt ? :smiley: richtig über die RJ45 CAN Dose.

Diese ist always on, denn das Display kann über Can den Hub immer einschalten. Die Specs des Display sind:

Dann wird der Stromverbrauch des Core nicht mehr unter DC gemessen, das würde er aber über einen DC/DC auf 48V auch nicht. (Der Eigenverbrauch des Hub generell auch nicht :/)

Ich weiß nicht wie genau die shunts in den Batterien sind, aber damit kann ich guuut leben.

Zwar finde ich nix zu der Max Stromaufnahme des Core Pro, aber selbst wenn wir von den Max Werte des Pi ausgehen mit 8.8W, die wir nie erreichen werden, ist da dick Luft :slight_smile:

Damit sollte sich auch das “Aufhängen” des Core Netzteils erledigt haben. (Das sich komischerweise auch nicht mit einer diode bezwingen ließ)

also bei mir (CorePro mit Rpi5 mit 16gb und 1TB SSD) braucht er im Idee 8W + ca 0,5W pro angezogenem Relais

summiert sich schon ganz gut um ehrlich zu sein

Bei meinem LiFePo4 Batterien JK BMS habe ich auch Tests gemacht bezüglich Stunt und hab mitbekommen das unter 1A also ca 24W nicht einmal ein verbrauch angezeigt wird und somit auch nicht gemessen

im idle modus hat das bms keinen SOC Verlust obwohl die batterie irgendwann mal leer ist da ich aber sowieso einen victron Stunt verbaut habe is mir der wert eh lieber

8W?? Das ist ja wahnsinnig viel.

Hast du die nvme oder USB?

Die jk BMS sind leider dafür bekannt :smiley: . Die haben keinen richtigen shunt, sondern nur einen relativ kleinen Wiederstand (aber faktor 10-100 höher als ein richtiger shunt, da die Strommessung des BMS ursprünglich nur für die Überstromabschaltung da ist.

Die Ecoflow nmbatterien zeigen zumindest minimal 0.1 A an. Das sind bei 50V immerhin noch 5 W Genauigkeit.

Leider aber bei 3 Batterien parallel schon fast 15W in der Theorie. :smiley:

Fällt mir ein, könnte man nicht über die Tankwiderstand Eingänge einen mini shunt anschließen ? Also im <50W Bereich?

NVME

Ja da Is 1A mehr oder weniger egal ^^

Sind die Batterien in Serie? Wenn parallel wäre es ja egal dann hättest no immer 5W

was würde es dir bringen? müsstet ja dann den SOC der Batterie selber berechnen dann mit einem Offset

ob es ned besser wäre einen richtigen Stunt in die Batterieleitung hängen aber da die ja nur glaub gestapelt werden gibts wohl keine anschlusskanbel

Ne, die sind parallel geschaltet. Aber wenn jede Batterie quasi knapp 5 Watt undedektiert lässt (ich weiß ja nicht ab wann der Wert auf 0.1 lA spring, sind es ja maximal 15W die insgesamt nicht gemessen werden bei drei Stück parallel.

Dem Preis der Batterien nach zu urteilen, müssen die shunts aber aus Gold und hochprezise sein :smiley:

Alternative shunts hatte ich ursprünglich mal überlegt, aber die sind auch zuaufwendig.

Dazu kann nur der Victron überhaupt 48V Systeme verkraftet. Dann bräuchtest du 3 Stück (nebst serial Wandler, bzw Bluetooth) um gegenseitige Entladung überhaupt zu bemerken. Das alles macht das System ja eigentlich schon ab Werk und gibt es über den Canbus aus.

Ansonsten ja, mann müsste den soc selber neu berechnen. :smiley:
Es gibt von Ecoflow noch das distribution panel (Sicherungsblock) , von der Idee geil, mir aber zu teuer. Dort hast du quasi auf jeden AC/ DC kanal gleich noch nen Shunt nebst Relais mit drauf.