ᐅ Arotherm Plus / Homeassistant EBUSD
Erstellt am: 18.10.2023 11:09
chrizzz 11.03.2025 22:30
hausbauer2023 schrieb:
Das Ebus-Interface habe ich ebenfalls laufen. Aber den Bivalenzpunkt kann ich über meine 15.ctlv2.csv nicht setzen/ist nicht vorhanden. Wie hast du das realisiert? Und hast du eine Möglichkeit gefunden den Flüsterbetrieb über ebus zu setzen?
Die Prozent-Angabe des Flüsterbetriebes in der Hydraulikstation würde ich gerne auch über ebus schreiben können, aber bisher erfolglos.Geht alles, am einfachsten wenn Du lokale CSV-Dateien hast, die Du editieren kannst. Für Bivalenz- und Alternativpunkt brauchst Du folgende Einträge in der 15.ctlv2.csv:
*r,,,,,,B524,02000000,,,IGN:4,,,
*w,,,,,,B524,02010000,,,,,,
r;w,,HwcBivalencePoint,,,,,0100,,,tempv,,,
r;w,,HcAlternativePoint,,,,,2200,,,tempv,,,(-21=off)
r;w,,HcBivalencePoint,,,,,2300,,,tempv,,,Für Warmwasser und Heizen gibt es separate Bivalenzpunkte, der Alternativpunkt gilt nur im Heizmodus (den für Warmwasser gibt es wohl erst im Regler ab VRC720/3, das zugehörige ebus-Register ist leider noch nicht bekannt).
Die Prozentangabe für den Flüsterbetrieb (40-60%) setzt man über die 08.hmu.csv:
*r,,,,,,B51A,05,,,IGN:3,,,,,,,,,,,,,,,,,,,,,
*w,,,,,,B51A,06,,,,,,,,,,,,,,,,,,,,,,,,
r;w,,CompressorSilentOperationLevel,,,,,FF3428,,,percent0,,,,,,,,,,,,,,,,,,,,,Das Aktivieren/Deaktivieren des Flüsterbetriebs ist etwas trickreicher. Man muß das Zeitprogramm für den Flüsterbetrieb setzen. Die Settings dazu stehen in der 15.ctlv2.csv:
*r,,,,,,B555,a50004,,,,,,
*w,,,,,,B555,a60004,,,,,,
r,,silentTimer.TimeSlotsPerWeekday,Configured slot count for each weekday,,,B555,a40004,,,slotCountWeek,,,Amount of configured slots per weekday
r,,silentTimer.Monday,timer monday read,,,,00,index,m,UCH,,,,,,rTimeSlotWithoutTemp
w,,silentTimer.Monday,timer monday write,,,,00,,,wTimeSlotWithoutTemp,,,
r,,silentTimer.Tuesday,timer tuesday read,,,,01,index,m,UCH,,,,,,rTimeSlotWithoutTemp
w,,silentTimer.Tuesday,timer tuesday write,,,,01,,,wTimeSlotWithoutTemp,,,
r,,silentTimer.Wednesday,timer wednesday read,,,,02,index,m,UCH,,,,,,rTimeSlotWithoutTemp
w,,silentTimer.Wednesday,timer wednesday write,,,,02,,,wTimeSlotWithoutTemp,,,
r,,silentTimer.Thursday,timer thursday read,,,,03,index,m,UCH,,,,,,rTimeSlotWithoutTemp
w,,silentTimer.Thursday,timer thursday write,,,,03,,,wTimeSlotWithoutTemp,,,
r,,silentTimer.Friday,timer friday read,,,,04,index,m,UCH,,,,,,rTimeSlotWithoutTemp
w,,silentTimer.Friday,timer friday write,,,,04,,,wTimeSlotWithoutTemp,,,
r,,silentTimer.Saturday,timer saturday read,,,,05,index,m,UCH,,,,,,rTimeSlotWithoutTemp
w,,silentTimer.Saturday,timer saturday write,,,,05,,,wTimeSlotWithoutTemp,,,
r,,silentTimer.Sunday,timer sunday read,,,,06,index,m,UCH,,,,,,rTimeSlotWithoutTemp
w,,silentTimer.Sunday,timer sunday write,,,,06,,,wTimeSlotWithoutTemp,,,Dazu braucht es auch noch folgende Einträge in der _templates.csv:
slotIndex,UCH,,,array index for the zones. Array Index start at 0 for the first element
slotCount,UCH,,,Number of total slots in the array. May be Zero.
slotCountWeek,IGN:1;slotCount;slotCount;slotCount;slotCount;slotCount;slotCount;slotCount;IGN:1,,,Number of total slots in the array for a week. Mon-Sun
startTime,HTM,,,Starting time of the timeframe
endTime,HTM,,,Ending time of the timeframe
slotTimeFrame,startTime;endTime,,,Timeslot from/until
wTimeSlotWithoutTemp,slotIndex;slotCount;slotTimeFrame;HEX:2,,,Complete slot for writing the time table settings without a temperature.
rTimeSlotWithoutTemp,IGN:1;slotTimeFrame;IGN:2,,,Complete slot for reading the time table settings without a temperature.Hat man diese Einträge kann man den Flüstermodus-Timer per 'ebusctl'-Kommando oder auch per MQTT setzen.
Lesen des Timers unter Nutzung der index (-i) Option von 'ebusctl':
z.B. [ICODE]ebusctl r -f -i 0 -c ctlv2 silentTimer.Monday[/ICODE]
Schreiben des Timers mit 'ebusctl':
Payload Definition: slot_index;total_slotnumber_day;start_time;end_time;ff ff
z.B. [ICODE]ebusctl w -c ctlv2 silentTimer.Monday "0;1;00:00;24:00;ff ff"[/ICODE]
WICHTIG:
Es müssen ggf. immer alle Zeitfenster (slot) eines Tages geschrieben werden (also wenn mehr als eins definiert ist), auch wenn nur eines geändert wird. Macht man das nicht, dann werden die Änderungen für den Tag nicht übernommen:
Das Setzen per MQTT (z.B. per Home Assistant) geht auch. Wäre vielleicht einen separaten Post wert, wenn Interesse besteht.
Yessi09 12.03.2025 07:36
Super, dass du dieses Wissen so detailliert teilst. Ist das auch irgendwo im Netz dokumentiert? (GitHub..., private Seiten,,...)
chrizzz 12.03.2025 22:14
Yessi09 schrieb:
(GitHub.....)Genau dort, wenn man nach 'john30' sucht (dem Entwickler von ebusd).
Meine vorige Antwort dazu ist irgendwie weg...
hausbauer2023 13.03.2025 01:52
Vielen Dank für den hilfreichen Input. Die csv Dateien habe ich in HA lokal am Laufen, aber eine _templates.csv habe ich nicht. Das Setzen per mqtt würde mich interessieren. Hast du das über ein yaml-script gelößt? Und noch eine Frage, wie nutze ich unter HA ebusctl um die von dir genannten Befehle auszuführen/zu senden?
chrizzz 13.03.2025 09:59
hausbauer2023 schrieb:
Die csv Dateien habe ich in HA lokal am Laufen, aber eine _templates.csv habe ich nicht. Das Setzen per mqtt würde mich interessieren. Hast du das über ein yaml-script gelößt? Und noch eine Frage, wie nutze ich unter HA ebusctl um die von dir genannten Befehle auszuführen/zu senden?Seltsam, daß Du keine _templates.csv hast. Die ist ja in der Standard-ebusd-Konfiguration eigentlich mit dabei (sogar zwei, im Vaillant-Verzeichnis) und definiert viele der Datentypen der einzelnen Entitäten. Ohne die _templates.csv wird das Setzen der Timer recht mühsam.
Für das Aktivieren bzw. Deaktivieren des Flüstermodus habe ich je ein Skript in HA, das den Flüsterbetrieb für alle Wochentage aus- bzw. einschaltet:
Deaktivieren:
mqtt_wp_flustermodus_aus:
alias: 'MQTT: Wärmepumpe Flüstermodus Aus'
sequence:
- service: mqtt.publish
metadata: {}
data:
qos: '2'
retain: false
topic: ebusd/ctlv2/silentTimer.Monday/set
payload: 0;1;00:00;00:00;ff ff
- service: mqtt.publish
metadata: {}
data:
qos: '2'
retain: false
topic: ebusd/ctlv2/silentTimer.Tuesday/set
payload: 0;1;00:00;00:00;ff ff
- service: mqtt.publish
metadata: {}
data:
qos: '2'
retain: false
topic: ebusd/ctlv2/silentTimer.Wednesday/set
payload: 0;1;00:00;00:00;ff ff
- service: mqtt.publish
metadata: {}
data:
qos: '2'
retain: false
topic: ebusd/ctlv2/silentTimer.Thursday/set
payload: 0;1;00:00;00:00;ff ff
- service: mqtt.publish
metadata: {}
data:
qos: '2'
retain: false
topic: ebusd/ctlv2/silentTimer.Friday/set
payload: 0;1;00:00;00:00;ff ff
- service: mqtt.publish
metadata: {}
data:
qos: '2'
retain: false
topic: ebusd/ctlv2/silentTimer.Saturday/set
payload: 0;1;00:00;00:00;ff ff
- service: mqtt.publish
metadata: {}
data:
qos: '2'
retain: false
topic: ebusd/ctlv2/silentTimer.Sunday/set
payload: 0;1;00:00;00:00;ff ff
mode: single
icon: mdi:heat-pumpAktivieren:
mqtt_wp_flustermodus_an:
alias: 'MQTT: Wärmepumpe Flüstermodus An'
sequence:
- service: mqtt.publish
metadata: {}
data:
qos: '2'
retain: false
topic: ebusd/ctlv2/silentTimer.Monday/set
payload: 0;1;00:00;24:00;ff ff
- service: mqtt.publish
metadata: {}
data:
qos: '2'
retain: false
topic: ebusd/ctlv2/silentTimer.Tuesday/set
payload: 0;1;00:00;24:00;ff ff
- service: mqtt.publish
metadata: {}
data:
qos: '2'
retain: false
topic: ebusd/ctlv2/silentTimer.Wednesday/set
payload: 0;1;00:00;24:00;ff ff
- service: mqtt.publish
metadata: {}
data:
qos: '2'
retain: false
topic: ebusd/ctlv2/silentTimer.Thursday/set
payload: 0;1;00:00;24:00;ff ff
- service: mqtt.publish
metadata: {}
data:
qos: '2'
retain: false
topic: ebusd/ctlv2/silentTimer.Friday/set
payload: 0;1;00:00;24:00;ff ff
- service: mqtt.publish
metadata: {}
data:
qos: '2'
retain: false
topic: ebusd/ctlv2/silentTimer.Saturday/set
payload: 0;1;00:00;24:00;ff ff
- service: mqtt.publish
metadata: {}
data:
qos: '2'
retain: false
topic: ebusd/ctlv2/silentTimer.Sunday/set
payload: 0;1;00:00;24:00;ff ff
mode: single
icon: mdi:heat-pumpWie man 'ebusctl' aus HA heraus aufruft (Skript), damit habe ich mich noch nicht beschäftigt. Geht sicher, man muß aber beachten, daß ebusd (wenn das HA ebusd-Addon genutzt wird) in einem eigenen Container läuft, was man beim Ausführen von 'ebusctl' berücksichtigen muß. Daher ist für mich MQTT der einfachere Weg.
_Allgaeuer_ 30.03.2025 19:41
Hallo, hab auch den Ebus Adapter C6 am laufen und alles in HA integriert mit den aktuellen Daten von John30.
Wie genau bekomme ich hin, dass ich mit dem E-Bus schreiben kann? Dass will nicht klappen.
Wie genau bekomme ich hin, dass ich mit dem E-Bus schreiben kann? Dass will nicht klappen.
Ähnliche Themen