Hallo,
ich habe für den Victron Multiplus eine Go Library zur Kommunikation und ein einfache Regelung in Zusammenhang mit einem Shelly-EM3 geschrieben.
Das besondere ist, dass es ohne GX oder Venus OS funktioniert. Stattdessen redet man über den MK3-Adapter mit dem Multiplus direkt. Dazu gibt es vielerlei Codebeispiele, aber alle die ich gesehen habe sind rein zur Statusabfrage geschrieben worden. Victron selbst schreibt zum MK2/3 Protokoll: "Note that, as also indicated on the Data Communication whitepaper, the MK2/3 protocol is not an easy protocol. That is unfortunate, but it is what it is. [..]" - stimmt finde ich, könnte einfacher sein, geht aber trotzdem.
Der code in go ist hier abrufbar: GitHub - yvesf/ve-ctrl-tool: Experimental tool to interact with Victron VE.Bus devices Das asynchrone schreiben/lesen würde ich bei Gelegenheit gerne mal aufräumen aber erstmal funktioniert es so. Test-coverage ist auch meist eher so im Bereich "unfortunate, but it is what it is." :).
Mein test-setup ist ein RaspberryPi-4 auf dem der Shelly-gesteuerte Regler (ve-ess-shelly) mit NixOS deployed wird. Es ist getestet mit einem MultiPlus "12/500/20" und "MultiPlus 48/2000/25". Es müsste aber auch mit anderen Geräten funktionieren.
Gruss, Yves