Und noch eine Frage: mit einem der letzten Releases kam eine Konfigurationsmöglichkeit für den Quarz des Huawei-Can Busses. Damit kann man zwischen einem 8MHz und einem 16Mhz Quarz umschalten. Das Board hat einen 8MHz Quarz - ist das bei Dir richtig eingestellt? Siehe dazu:
Release 2023.10.24 und darin Feature: AC charger: configurable CAN controller frequency
Der Default ist allerdings 8Mhz, sollte also passen, wenn Du das nichts geändert hast
@cacu15 Danke für die Hinweise.
ist hart auf DC-.
Ja, Widerstand ist aktiviert und 8 MHz-Quartz ausgewählt.
Dazu habe ich noch gesehen, dass im Schaltbild die Clock-Pins für MCP2515 (Huawei) und NRF24L01+ (Hoymiles) beide mit 'SCK' benannt sind und im PCB das wohl auch das gleiche Netz ist (Multimeter Durchgang).
Am ESP gibt’s SCK an G26 und G18.
Im
habe ich G18 dem Hoymiles und G26 dem Huawei zugeordnet. Ist das ok (oder egal, weil gleiches Netz)?
Den Clock sehe ich an SCK nur dann, wenn das NRF24L01+ eingesteckt ist(!?)
An den Pins 1 (txcan), 2(rxcan), 14(si), 15(so) des MCP2515 tut sich nichts; an 1(txd), 4(rxd), 6(canl), 7(canh) des TJA1050 auch nicht(!?)
Hmm, das darf m.E. nicht sein. Der CAN Bus für Huawei (MCP2515) und der NRF24L01+ brauchen getrennte SPI Busse, das darf nicht an einem SPI hängen, siehe dazu https://github.com/helgeerbe/OpenDTU-OnBattery/wiki/Device-Profiles#spi-bus
Der Huwei müsste auf GPIO26 und der NRF auf GPIO18 liegen und die dürfen NICHT verbunden sein. Das ist dann m.E. ein Fehler im PCB.
@lukasvfl99 - Was meinst Du?
Für Pin 14(si) des MCP2515 muss ich mich korrigieren: hier kommen wohl doch SPI-Kommandos an.
An 15(so) und den genannten Pins von U7 kommt weiterhin nichts.
Gibt es eine Stelle im PCB-Layout, an der man mit einer Bohrung oder durch Kratzen das SCK-Netz so auftrennen kann, dass die GPIOs 18 und 26 noch mit den richtigen Pins von MCP und NRF verbunden sind?
Oder eine Kombination von Auftrennen und Käbelchen-Anlöten?
Ich würde dann mal testen, ob die CAN-Kommunikation dann funktioniert.
Ich kenne mich nicht im Detail mit dem SPI Bus aus, aber nach meinem Verständnis kann das nicht funktionieren, wenn hier jetzt GPIO 18 und 26 gleichzeitig verbunden und als CLK konfiguriert sind. Da versuchen dann 2 GPIOs den Takt für den Bus vorzugeben. Da kann eigentlich nur Chaos herauskommen.
Man kann zwar mehrere Slaves an einem Bus hängen haben, die sich dann die meisten SPI PINs teilen, auch CLK. Man braucht nur einen separaten CS PIN (Client Select) je Device, über den das Ziel adressiert wird. Aber hier haben wir dann ja 2 CLKs auf demselben Bus. Siehe dazu z.B. https://randomnerdtutorials.com/esp32-spi-communication-arduino/
Mich wundert eher, dass der NRF24L01 dabei funktioniert. Hast Du mal probiert, ob der NRF noch funktioniert, wenn Du gleichzeitig auch den CAN zum Huawei konfiguriert hast?
Aus meiner Sicht müsste man die Verbindung des CLK PINs am MCP2515 zu GPIO 18 trennen, sodass nur noch die Verbindung zum GPIO 26 besteht (wenn das geht). Zwischen GPIO18 und 26 darf keine Verbundung bestehen. ZUr Not muss man das direkt am MCP2515 trennen und dann einen Draht von dort zum GPIO 26 anlöten, um das PCB zu "retten".
@cerise @CaCu15 sorry für die späte Antwort, irgendwie habe ich keine Benachrichtigung bekommen das hier jemand geantwortet hat.
Ihr habt recht, dass ist ein Bock meinerseits. SCLK darf natürlich nicht öfter belegt sein. Ich hab im nachfolgenden mal eingezeichnet welchen Track man auf der PCB ankratzen bzw. wegkratzen muss. Der Pfeil soll ein Kabel/Draht darstellen.
Die roten Tracks sind die oben auf der PCB und die blauen auf der Unterseite. Es wäre sonst auch möglich an den passenden Stellen ein Loch durch die PCB zu bohren.
Das Problem sollte es in einer nachfolgenden PCB nicht mehr geben, habe es direkt angepasst.
@lukasvfl99 und allen anderen Beteiligten schon mal vielen Dank für die Hinweise.
ich war vorhin mit Lukas in Kontakt und hab mal eins meiner beiden PCBs für einen Umbau nach oben genanntem Vorschlag geopfert (hatte gleich zwei bestellt).
Die beiden Leitungen wie im Bild hab ich durchtrennt, danach dann die zwei Kabel angelötet.
Aktueller Stand nun…
Victron kommuniziert, nRF hat Signal, Huawei zeigt 230V und versucht zu kommunizieren jedoch bekomme ich als Ausgangsspannung dort nur 2,9-3,7V angezeigt und der Lüfter dreht wahnsinnig hoch.
Falls noch jmd eine Idee hat, gerne her damit… hab am PCB ja nun eh schon rumgefriemelt und würde noch ein paar Sachen testen, bevor ihr alle den Dremel und Lötkolben unnötig auspackt.
Verstehe ich das richtig: du bekommst immerhin Daten über den CAN vom Huawei (also zB die 230V Eingangsspannung)? Das ist doch schon mal ein Erfolg.
Das Lüfterverhalten etc. kann eigentlich nur vom Slot Detect kommen, oder? Hast Du die beiden PINs fest auf den - Ausgang des Huawei verdrahtet oder geschaltet über Optokoppler des PCB oder über separates Relais? Ich würde das zum Testen erstmal fest verdrahten.
@cacu15 ja genau… Lebenszeichen vom Huawei kommen nun langsam, dank euren Ideen/Hinweisen.
Ich hab den Slot.D (beide Pins) fest auf den Minus gelegt. (Bild). Mit dem Adapter geht das ja auch gut. Ich wollte keine unnötige Schaltung/Relai/Opto… mehr dazwischen.
(Ich hatte das Huawei und den MCP2515 Umbau damals bevor es das PCB hier gab, vorab mit dem „KlausLi-BavarianSuperGuy-Mod und passendem ESP vorab auf Funktion getestet und die Verkabelung am Huawei-Anschlussadapter noch heute so beibehalten)
Oh, sehr schön, hier ging ja einiges voran heute - danke an alle.
(Habe, trotz abonniertem Thread, auch keine Benachrichtigung bekommen...)
aber nach meinem Verständnis kann das nicht funktionieren
Ich vermute, dass das, was ich an SI am MCP gesehen habe, nur 'Bruchstücke' einer SPI-Kommunikation waren und damit ungültige Befehle, die der MCP nicht in CAN übersetzen konnte(?)
Ist der SPI-Clock eigentlich ein immer anliegender Takt, oder wird der nur bei Bedarf/Kommunikation eingeschaltet? Was ich gesehen habe, waren nur unregelmäßige Pulspakete.
Hast Du mal probiert, ob der NRF noch funktioniert, wenn Du gleichzeitig auch den CAN zum Huawei konfiguriert hast?
Nein, den NRF hatte ich nur separat getestet.
Das mit dem
PCB ankratzen
werde ich auch versuchen und sehen, was der Huawei dann spricht...
Mit den zwei Bohrungen an den von @lukasvfl99 vorgeschlagenen Stellen und der Leiterbrücke von GPIO26 an den MCP funktioniert die CAN-Kommunikation mit dem Huawei jetzt! ?
Mangels Akku kann ich tatsächliches Laden noch nicht testen; ein eingestelltes Spannungslimit kann ich aber am DC-Ausgang des Netzteils messen und die V-/I-Limits tauchen in der GUI wieder auf.
Als nächstes versuche ich, ob die Slot-Detect-Schaltung via Optokoppler funktioniert.
Der CAN-Kommunikationstest mit dem Pylontech steht dann auch noch aus…
@cerise Super, es geht weiter. Hast du zufällig mal ein nRF-Modul mit aufgesteckt? Ich hatte zwischenzeitlich vor dem Umbau (Bilder oben - weißes Kabel) ohne die Brücke keine Verbinung mehr dazu. Hattest du das PCB nur mit einem aufgesteckten ESP32 getestet?
nRF-Modul mit aufgesteckt?
Ja, das Modul ist immer aufgesteckt; und wird aktuell auch (wieder) als verbunden angezeigt.
Jetzt, wo Du es sagst: nach der PCB-Modifikation und Aktivierung des Netzteils wurde der NRF tatsächlich als nicht verbunden angezeigt.
Nach Trennen der Stromversorgung und Ab-/Anstecken des NRF-Moduls war es dann aber wieder da (komisch!?).
Für was brauchst Du eigentlich das weisse Kabel auf der Unterseite? Die Verbindung von GPIO18 zum NRF-Stecker ist doch eigentlich vorhanden (hatte ich 'durchgepiepst').
@cerise der Hinweis zum zusätzlichen Kabel kam von Lukas, ich hatte ihn gestern einmal angeschieben, da ich die von euch genannten Dinge gestern einmal testweise umsetzen wollte (und hab dabei auch eine Leiterbahn zuviel durchtrennt, das Bild wurde daher inzwischen noch mal angepasst. Ich hatte es dann aber mit ner Lötbrücke überbrückt). Nachdem der nRF kein Signal mehr bekam, wurde die zusätzliche Kabelbrücke noch angelötet, um auf Nummer sicher zu gehen, das die Verbinung steht. Danach hatte der nRF auch wieder Signal. Ob sich das nach dem Neustart geändert hatte kann ich garnicht sagen. Hab heute leider keine Zeit, sonnst hätte ich noch ein paar Tests gemacht.
Hi Leute,
ich hab heute noch mal etwas mit dem PCB und dem Huawei gespielt. Ich glaub ich bin auf einem guten Weg, hab aber noch ein paar „unerklärliche Phänome“. Vielleicht kann mir hier ja einer von euch einen Tipp geben.
Ausgangssituation:
PCB4D, Victron 75/15, Huawei R4850G2 mit Adapter und fix aufgelegtem SlotD auf -48V, keine Batterie angeschlossen sondern nur das Multimeter. PV=0W da dunkel, Netzbezug 190W.
oDTUoB mit allen oben genannten Komponenten angeschlossen. 8Mhz Quarz eingestellt. Netzteil (Automatische Leistungssteuerung ) mal mit Automatik und mal ohne Automatik.
Test… Das Huawei gibt mir lediglich 3,7V am Ausgang aus, laut Anzeige und auch laut Mitmieter am Ausgang. Der Lüfter dreht extrem hoch (höher als normal) …
Lösungsversuch um Hardwarefehler auszuschließen ... war ein schneller Umbau auf den BavarianSG-Mod …Fazit > läuft und gibt mir dort auch die eingestellten 43V am Ausgang/Multimeter aus.
Also wieder umgebaut auf das PCB4D… eingeschaltet und siehe da, das Huawei hat noch die 43V gespeichert und änder klettert auf die 48v die ich in der oDTUoB voreingestellt habe. Also noch mal alles auf Neustart… so lange gewartet bis die Kondensatoren im Huawei entladen waren und nur noch 0,2V am Ausgang messbar waren.. nochmal komplett neu gestartet… gleicher Fehler wie zu Beginn… 3,7V in der oDTUoB und verweilt dort mit tönendem Lüftergeräusch.
Ich dachte erst, das es ggf. an den falschen Einstellungen im AC-Lader Menü liegt, hab mal beide Funktionen durchgespielt (Automatik und Automatik aus). Kann mir jmd erklären wo diese 3,7V her kommen und die hohe Lüfterdrehzahl und warum das Teil nicht aus dem Knick kommt? Kann ich meinen Test nur bei Tageslicht und „Überschuss“ durchführen ?… die 48V sollten doch immer anliegen oder? Ich steh grad etwas auf dem Schlauch.
Die Ausgangs-Temperaturangabe ist übrigends bei beiden Versionen 7-Stellig und zeigt mir an beiden 4194303°C an.. warum auch immer.
Kurzer Nachtrag… es hat mir jetzt doch keine Ruhe gelassen. Ich hab noch eine selbst gestecke DTU mit MCP2515 die ich grade nochmal testweise als Vergleich genommen habe. Hier passt die Spannung am Ausgang mir 48V sofort und das Huawei reagiert auf meine Änderungen … z.B. 48V auf 46V…und umgekehrt und der Lüfter zeigt ein normales Verhalten.
Als nächstes versuche ich, ob die Slot-Detect-Schaltung via Optokoppler funktioniert.
Mit DC- (Huawei) an der 0V-Klemme (PCB4Dummies) und SlotDetect1/2 (Huawei) an der Slot-Klemme (PCB4Dummies) tat sich erst mal nichts.
Am Eingang des Optokopplers liegen, bei 3.3V an GPIO21, noch ca. 1.1V an. Lt. Datenblatt des Optokopplers (wenn ich das richtig interpretiere) sollte der Eingangsstrom I_F dann ca. 2mA betragen. Damit sollte der Ausgangsstrom ca. 0.75*I_F=1.5mA sein können.
Zwischen DC- und SlotDetect fließen ca. 100uA, damit das Netzteil einschaltet. — Theoretisch sollte der Optokoppler den SlotDetect locker schalten können.
Tut er auch, wenn man die Ausgangspins '0V' und 'Slot' des PCBs tauscht. Also '0V' (PCB) an SlotDetect1/2 (Huawei) und 'Slot' (PCB) an DC- (Huawei).
An '0V' scheint der Kollektor des Optokoppler-Ausgangs angeschlossen zu sein. Der Emitter hängt an 'Slot'. Der Emitter (npn) muss aber ans tiefere Potential. Die offenen SlotDetect-Anschlüsse liegen ca. 3V höher als DC-.
Vielleicht sollten die Bezeichnungen der '0V'- und 'Slot'-Schraubklemmen getauscht werden (!?)
Nachdem der Akku nun auch da ist, war
Der CAN-Kommunikationstest mit dem Pylontech
erfolgreich und ich konnte ihn mit dem Netzteil von 50 auf 75% aufladen. ![]()
Zu den
[quote data-userid="10703" data-postid="168837"]
„unerklärlichen Phänomen“
[/quote]:
Das extreme Hochdrehen des Lüfters hatte ich auch einmal anfangs nach Aktivierung des Netzteils in den Einstellungen (ohne angeschlossene Last/Akku; ich weiss allerdings nicht mehr, ob mit oder ohne 'Automatische Leistungssteuerung').
Nach Neustart des ESPs war das dann aber ok.
Ich habe die Auswirkungen von nicht/aktivierter 'Automatischer Leistungssteuerung' in Kombination mit den in der Live-Ansicht setzbaren Spannungs- und Stromlimits noch nicht durchschaut.
Ohne Akku, ohne 'Automatische Leistungssteuerung' und ohne gesetzte Limits schaltet sich das Netzteil ein (53.7V, keine (?) Strombegrenzung).
Mit dem Spannungslimit lässt sich die Ausgangsspannung dann einstellen.
Mit einem Stromlimit von 5A schaltet sich das Netzteil aus (!?)
Mit einem Stromlimit von 1A schaltet es sich ein (!?)
Bei aktivierter 'Automatischer Leistungssteuerung' werden die Strom- und Spannungslimits wieder gelöscht. Jetzt wieder neu gesetzte Limits wirken sich nicht oder nur manchmal auf die GUI-Anzeige aus (!?)
Ich hatte aber auch schon den Fall, dass ein gesetztes Stromlimit (ohne automatische Leistungssteuerung) von 2A das Aktivieren der 'Automatischen Leistungssteuerung' überlebt hat und bestehen bleibt (!?)
Beim Laden des Akkus hatte ein gesetztes Leistungslimit (Automatische Leistungssteuerung|Limits) von 200W keine Auswirkung; es wurde mit deutlich höherer Leistung geladen (51V, 20A) (!?)
Ist das irgendwo erklärt, wie genau und wann sich die einstellbaren Limits auf das Netzteil auswirken?
@cerise, erstmal super, was Du zur Beschallung des Optokopplers beschrieben hast.
zu den Limits für das Huawei hier mal mein Verständnis:
Man muss unterscheiden zwischen ONLINE und OFFLINE Limits
online Limits wirken, solange der CAN Bus verbunden ist. Wenn der CAN getrennt wird, dann fällt das Netzteil auf die zuvor gesetzten Offline Limits zurück. Offline Limits sind also eine Art Sicherheitseinstellung, falls mal die Verbindung zum ESP ausfällt.
Die Automatische Leistungssteuerung setzt ständig neue online Limits abhängig vom aktuelle Überschuss. D.h. die maximale Spannung wird auf die vorgegebene Ladeschlussspannung gesetzt, die maximale Stromstärke abhängig vom Überschuss dann so berechnet, dass möglichst kein Überschuss mehr eingespeist wird, sondern alles für die Ladung des Akkus verbraucht wird. Deshalb werden bei automatischer Leistungssteuerung die vorher manuell eingegebenen online Limits auch überschrieben.
Ausserdem steuert die Automatik auch SlotDetect so, dass das Netzteil eingeschaltet wird, wenn geladen werden soll (also das online Limit für die Stromstärke größer als 0 ist).
Offline Limits werden m.W. durch die Automatik nicht verändert.
Die Grenzen in der Konfiguration des Ladegeräts hingegen sind Untergrenzen, d.h. Es wird nur geladen, wenn die Leistung über dem Wert liegt. Dadurch soll verhindert werden, dass das Huawei in einem ineffizienten Bereich betrieben wird.
Sehr gut, danke @cacu15 für die Erklärung; jetzt wird’s um einiges klarer.
Ich werde das, wenn alle Komponenten der Anlage mal gleichzeitig verbunden sind (nicht nur immer eine-zwei zu Testzwecken), versuchen, genauer nachzuvollziehen.
Die Offline-Limits für das Huawei sollten dann möglichst auch bei einer AC-Trennung des Netzteils erhalten bleiben — ist das der Fall?
Den 'Zeige/Setze Limit'-Tooltip in den Limit-Einstellungen (Live-Ansicht) des Netzteils verstehe ich nicht: Sollten hier irgendwo die gesetzten (Offline-)Limits zu sehen sein?
Ich hab mal begonnen ein Gehäuse zu entwickeln, bin für Verbesserungsvorschläge dankbar. Ich entwickle in OpenScad. Wenn ich fertig bin, stelle ich hier dann STL und Quellcode ein.
Ich habe für PG7 Verschraubung geplant, evtl. Belüftungsschlitze?
Bei mir soll das Ganze dann im 19´´ Schrank, in dem auch die Akkus sind untergebracht werden.
Gruß












