ebusd-lueftung – Vaillant recoVAIR 275/3¶
Übersicht¶
Der LXC-Container ebusd-lueftung (ID 107, IP 192.168.178.19) verbindet die Vaillant recoVAIR 275/3 Lüftungsanlage über den eBUS-Protokollbus mit Home Assistant.
Geräte auf dem Bus¶
| Adresse | Gerät | SW | HW | Beschreibung |
|---|---|---|---|---|
| 0x15 (VAI00) | Fernbedienung/Regler | 0125 | 8901 | Steuert Lüftungsstufen, Bypass, Intensivmodus |
| 0xC0 (WTW04) | Wärmetauscher | 0127 | 9001 | Temperatursensoren, Ventilator, Bypass-Position |
ebusd Konfiguration¶
Startbefehl (/etc/default/ebusd)¶
EBUSD_OPTS="--device=ens:192.168.178.14:9999 \
--configpath=/etc/ebusd/ebusd-2.1.x/en \
--scanconfig \
--latency=10 \
--mqttint=/etc/ebusd/mqtt-hassio.cfg \
--mqtthost=192.168.178.5 \
--mqttport=1883 \
--mqtttopic=ebusd-lueftung \
--mqttuser=mqtt-usr \
--mqttpass=mqtt-usr \
--mqttretain \
--mqttjson \
--loglevel=notice"
Wichtige Pfade¶
| Pfad | Inhalt |
|---|---|
/etc/ebusd/ebusd-2.1.x/en/vaillant/15.vai00.csv |
VAI00-Konfiguration (Regler) |
/etc/ebusd/ebusd-2.1.x/en/vaillant/c0.wtw04.csv |
WTW04-Konfiguration (Wärmetauscher) |
/etc/ebusd/mqtt-hassio.cfg |
MQTT Autodiscovery-Konfiguration für HA |
CSV-Konfiguration VAI00 (15.vai00.csv)¶
PBSB: Read B509,0D / Write B509,0F
# type,circuit,name,comment,QQ,ZZ,PBSB,ID,field,part,datatype,values,unit
*r,,,,,,B509,0D,,,,,,
*w,,,,,,B509,0F,,,,,,
r5;w,,Lueftungsstufe_Status,Lüftungsstufe,,,,2400,,,UCH,1=Tag;2=Aus;3=Auto;5=Nacht,,
r5;w,,Lueftung_HI_Status,Lüftung Intensiv,,,,5800,,,UIN,0=Aus;31=30 min;61=1h;91=1.5h;121=2h;181=3h;241=4h;301=5h;361=6h;421=7h;481=8h;541=9h;601=10h;661=11h;721=12h,,
r5;,,Bypass_Status,Bypass aktueller Status (heat/cool),,,,0a00,,,UCH,1=heat;2=cool,,
r5;w,,Bypass_Tage,Bypass Tage (0=aus),,,,3600,,,UCH,,,d
r5;,,Party,Party-Modus Status,,,,3200,,,UCH,0=off;1=on,,
r5;,,EcoMode,Eco-Modus,,,,4f00,,,UCH,0=off;1=on,,
r5;w,,NormalFlow,Volumenstrom Tag,,,,1700,,,UIN,,m3/h,
r5;w,,ReducedFlow,Volumenstrom Nacht,,,,1800,,,UIN,,m3/h,
r5;w,,IntenseFlow,Volumenstrom Intensiv,,,,4a00,,,UIN,,m3/h,
r5;w,,BypassFlow,Volumenstrom Bypass,,,,4800,,,UIN,,m3/h,
r5;w,,HolidayFlow,Volumenstrom Urlaub,,,,4900,,,UIN,,m3/h,
r5;w,,FilterDays,Filter Resttage,,,,4600,,,UCH,,,d
r5;w,,FilterDaysAlarm,Filter Alarm Tage,,,,4500,,,UIN,,,
r5;,,Yield,Ertrag Gesamt kWh,,,,4d00,,,UIN,,,
Wichtige Eigenheiten VAI00¶
Lueftung_HI_Statusnutzt UIN (nicht HCD:2!) und Minuten als Einheit- Das Gerät decrementiert beim Schreiben sofort um 1 Schritt
- Schreiben von 61 → Gerät zeigt 60 → läuft 60 Minuten
Bypass_Tage: 0 = Bypass aus, N = Bypass aktiv für N Tage (zählt täglich runter)Lueftungsstufe_StatusAuto = internes Zeitprogramm des Geräts (Fallback wenn HA ausfällt)
CSV-Konfiguration WTW04 (c0.wtw04.csv)¶
PBSB: Read B509,0D / Write B509,0E
Wichtig für HW=9001: Temperaturen benötigen PBSB B509,29 mit 2-Byte IGN-Prefix!
*r,,,,,,B509,0D,,,,,,
*w,,,,,,B509,0E,,,,,,
# Direkte Fan-Speed-Writes (hardcodiert, 50-300 m³/h in 5er-Schritten)
w,,Lueftung_75qmh,,,,,1500fa00,,,,,,
# ... weitere Lueftung_XXqmh-Einträge ...
r9;w,,BypassValve,Bypass Steuerung,,,,0a00,,,UCH,0=auto;1=off;2=on,,
r;,,Soll_Volumenstromkorrektur_Mode,Volumenstromkorrektur,,,,2000,,,D1B,,,
r5;,,CurrentFlow,Aktueller Volumenstrom,,,,1500,,,UIN,12,l/s,
*r,,,,,,B509,29,,,IGN:2,,,
r1;,,AirInletTemp,Außenluft Temperatur,,,,0100,,,temp,,,
r1;,,AirOutletTemp,Zuluft Temperatur,,,,0200,,,temp,,,
r1;,,AirExhaustTemp,Abluft Temperatur,,,,0300,,,temp,,,
r1;,,AirOutgoingTemp,Fortluft Temperatur,,,,0400,,,temp,,,
r1;,,Roomtemp,Raumtemperatur,,,,0000,,,temp,,,
r;,,Unterdruckschutz_Mode,Unterdruckschutz,,,,4700,,,UCH,1=AN;0=AUS,,
r5;,,Yield__Total_kWh,Ertrag Gesamt kWh,,,,4d00,,,UIN,,,
r;,,Desiredtemp,Wunschtemperatur,,,,140e,,,temp,,,
r5;,,Heatrecovery_Mode,Wärmerückgewinnung,,,,8c03,,,UCH,0=auto;1=on;2=off,,
r9;w,,FilterDays,Filter Resttage,,,,4600,,,UCH,,,d
r9;,,FilterDaysAlarm,Filter Alarm Tage,,,,4500,,,UCH,,,d
*r,,,,,,B509,29,,,,,,
r9,,BypassStellung_Status,Bypass-Stellung,,,,0900,,,IGN:2;percent0,,,
Aktueller Volumenstrom¶
- Register
0x15(B509,0D) liefert den aktuellen Sollwert in l/s - Divisor 12 → Anzeige in l/s
- Umrechnung in m³/h: Wert × 3.6
- HA Template-Sensor
sensor.luftung_volumenstrom_m3_hrechnet das um
mqtt-hassio.cfg Anpassungen¶
Gegenüber dem Original wurden folgende Änderungen vorgenommen:
filter-direction = r|u|^w– Schreibbare Entities im Autodiscovery- Number-Fallback in
type_switch-w-number:number,, = ,(generischer Fallback für alle numerischen Felder) circuit_partangepasst für ein einziges HA-Gerät:via_deviceentfernt (kein Parent-Device)area = Lüftungstatt Heating
LXC Container Konfiguration¶
Proxmox CT-Konfiguration (ID 107)¶
Proxmox Version: 9.2.3
Tags: ebusd, ha-addon, monitoring
Ressourcen¶
| Parameter | Wert |
|---|---|
| Speicher | 256 MiB |
| Swap | 256 MiB |
| Kerne | 1 |
| Root-Disk | local-lvm:vm-107-disk-0, size=8G |
Optionen¶
| Parameter | Wert |
|---|---|
| Beim Booten starten | Ja |
| Startreihenfolge | order=any |
| OS-Typ | debian |
| Architektur | amd64 |
| /dev/console | Aktiviert |
| Anzahl TTY | 2 |
| Konsolenmodus | tty |
| Geschützt | Nein |
| Unprivilegierter Container | Ja |
| Features | keyctl=1,nesting=1 |
| Entrypoint | /sbin/init |
Netzwerk¶
| Parameter | Wert |
|---|---|
| Interface | net0 / eth0 |
| Bridge | vmbr0 |
| Firewall | Nein |
| MAC | BC:24:11:49:13:31 |
| IP (IPv4) | 192.168.178.19/24 (statisch) |
| Gateway | 192.168.178.1 |
| Getrennt | Nein |
DNS¶
| Parameter | Wert |
|---|---|
| Hostname | ebusd-lueftung |
| DNS Domain | vom Host übernommen |
| DNS Server | vom Host übernommen |
/etc/network/interfaces¶
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 192.168.178.19/24
gateway 192.168.178.1
/etc/hosts¶
User codex¶
- Gruppen:
codex,sudo,users - Shell:
/bin/bash - Home:
/home/codex
SSH-Zugang (Windows-Client)¶
Eintrag in ~/.ssh/config¶
Host ebusd-lueftung
HostName el.diebrocks.com
User codex
IdentityFile ~/.ssh/ebusd_lueftung
ProxyCommand C:/cloudflared/cloudflared-ssh.cmd access ssh --hostname %h
StrictHostKeyChecking no
Cloudflared Wrapper (C:\cloudflared\cloudflared-ssh.cmd)¶
Hinweis: GODEBUG=netdns=cgo ist nötig weil der lokale DNS nur AAAA-Records für el.diebrocks.com zurückgibt und cloudflared (Go-basiert) damit nicht umgehen kann.
Neuen SSH Key anlegen (Restore-Fall)¶
# Neues Ed25519-Keypair generieren
ssh-keygen -t ed25519 -f "$env:USERPROFILE\.ssh\ebusd_lueftung" -C "ebusd-lueftung-$(Get-Date -Format 'yyyy-MM')"
# Public Key anzeigen (für Eintrag auf Server)
Get-Content "$env:USERPROFILE\.ssh\ebusd_lueftung.pub"
Den ausgegebenen Public Key dann auf dem Server hinterlegen (→ Restore Schritt 8).
Identifizierte unbekannte Bus-Nachrichten¶
| Nachricht | Häufigkeit | Bedeutung |
|---|---|---|
10c0b503020001/02 |
~90× | VAI00→WTW04 Keepalive/Ping, keine Aktion nötig |
10c0b50903290e00/0f00 |
~180× | VAI00 liest Status-Register 0x0E/0x0F von WTW04 |
10c0b509060e0000e70100 |
~180× | VAI00 setzt automatisch Volumenstrom auf WTW04 (z.B. 487 raw = ~146 m³/h bei NormalFlow 140) |
Der letzte Eintrag zeigt: VAI00 steuert WTW04-Lüftergeschwindigkeit direkt über Register 0x0E!