Skip to content

Commit

Permalink
[ValloxMV] Adding Co2 measurement (openhab#10324)
Browse files Browse the repository at this point in the history
Signed-off-by: bjoernbrings <[email protected]>
Signed-off-by: John Marshall <[email protected]>
  • Loading branch information
bjoernbrings authored and themillhousegroup committed May 10, 2021
1 parent b043ce0 commit ab9c598
Show file tree
Hide file tree
Showing 4 changed files with 42 additions and 23 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -97,6 +97,11 @@ public class ValloxMVBindingConstants {
*/
public static final String CHANNEL_HUMIDITY = "humidity";

/**
* Current CO2 of the air flow exhausting the building.
*/
public static final String CHANNEL_CO2 = "co2";

/**
* Current cell state (0=heat recovery, 1=cool recovery, 2=bypass, 3=defrosting).
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -428,7 +428,9 @@ public void onBinary(InputStream in) {
BigDecimal bdTempOutside = getTemperature(bytes, 134);
BigDecimal bdTempIncomingBeforeHeating = getTemperature(bytes, 136);
BigDecimal bdTempIncoming = getTemperature(bytes, 138);
int iHumidity = getNumberBE(bytes, 166);

int iHumidity = getNumberBE(bytes, 148);
int iCo2 = getNumberBE(bytes, 150);

int iStateOrig = getNumberBE(bytes, 214);
int iBoostTimer = getNumberBE(bytes, 220);
Expand Down Expand Up @@ -503,6 +505,8 @@ public void onBinary(InputStream in) {
updateChannel(ValloxMVBindingConstants.CHANNEL_TEMPERATURE_INCOMING,
new QuantityType<>(bdTempIncoming, SIUnits.CELSIUS));
updateChannel(ValloxMVBindingConstants.CHANNEL_HUMIDITY, new QuantityType<>(iHumidity, Units.PERCENT));
updateChannel(ValloxMVBindingConstants.CHANNEL_CO2,
new QuantityType<>(iHumidity, Units.PARTS_PER_MILLION));
updateChannel(ValloxMVBindingConstants.CHANNEL_CELLSTATE, new DecimalType(iCellstate));
updateChannel(ValloxMVBindingConstants.CHANNEL_UPTIME_YEARS, new DecimalType(iUptimeYears));
updateChannel(ValloxMVBindingConstants.CHANNEL_UPTIME_HOURS, new DecimalType(iUptimeHours));
Expand Down
Original file line number Diff line number Diff line change
@@ -1,46 +1,48 @@
# binding
binding.valloxmv.name = Vallox Lüftungsanlagen
binding.valloxmv.description = Binding für das Online-Interface von Vallox Lüftungsanlagen
binding.valloxmv.name = Vallox Lüftungsanlagen
binding.valloxmv.description = Binding für das Online-Interface von Vallox Lüftungsanlagen

# thing types
thing-type.valloxmv.valloxmv.label = Vallox Lüftungsanlage
thing-type.valloxmv.valloxmv.description = Anbindung an das Online-Interface einer Vallox Lüftungsanlage
thing-type.valloxmv.valloxmv.label = Vallox Lüftungsanlage
thing-type.valloxmv.valloxmv.description = Anbindung an das Online-Interface einer Vallox Lüftungsanlage
thing-type.config.valloxmv.valloxmv.ip.label = IP
thing-type.config.valloxmv.valloxmv.ip.description = IP Adresse oder DNS-Name des Online-Interface der Lüftungsanlage
thing-type.config.valloxmv.valloxmv.ip.description = IP Adresse oder DNS-Name des Online-Interface der Lüftungsanlage
thing-type.config.valloxmv.valloxmv.updateinterval.label = Update Intervall
thing-type.config.valloxmv.valloxmv.updateinterval.description = Intervall in dem die Daten aktualisiert werden in Sekunden (Standard: 60s)

# channel types
channel-type.valloxmv.onoff.label = An/Aus
channel-type.valloxmv.onoff.description = An/Aus-Schalter der Lüftungsanlage
channel-type.valloxmv.onoff.description = An/Aus-Schalter der Lüftungsanlage
channel-type.valloxmv.state.label = Profil
channel-type.valloxmv.state.description = Aktuell aktives Profil der Lüftungsanlage
channel-type.valloxmv.state.description = Aktuell aktives Profil der Lüftungsanlage
channel-type.valloxmv.state.state.option.1 = Kaminfunktion
channel-type.valloxmv.state.state.option.2 = Abwesend
channel-type.valloxmv.state.state.option.3 = Anwesend
channel-type.valloxmv.state.state.option.4 = Stoßlüftung
channel-type.valloxmv.state.state.option.4 = Stoßlüftung
channel-type.valloxmv.fanspeed.label = Ventilatorleistung
channel-type.valloxmv.fanspeed.description = Leistung in % (0-100)
channel-type.valloxmv.fanspeedextract.label = Ventilatorleistung Abluft
channel-type.valloxmv.fanspeedextract.description = Leistung Abluft in (1/min)
channel-type.valloxmv.fanspeedsupply.label = Ventilatorleistung Zuluft
channel-type.valloxmv.fanspeedsupply.description = Leistung Zuluft in (1/min)
channel-type.valloxmv.tempinside.label = Temperatur innen
channel-type.valloxmv.tempinside.description = Aktuelle Temperatur im Gebäude
channel-type.valloxmv.tempoutside.label = Temperatur außen
channel-type.valloxmv.tempoutside.description = Aktuelle Temperatur außerhalb des Gebäudes
channel-type.valloxmv.tempinside.description = Aktuelle Temperatur im Gebäude
channel-type.valloxmv.tempoutside.label = Temperatur außen
channel-type.valloxmv.tempoutside.description = Aktuelle Temperatur außerhalb des Gebäudes
channel-type.valloxmv.tempexhaust.label = Temperatur Abluft
channel-type.valloxmv.tempexhaust.description = Aktuelle Temperatur der ausgestoßenen Luft
channel-type.valloxmv.tempexhaust.description = Aktuelle Temperatur der ausgestoßenen Luft
channel-type.valloxmv.tempincomingbeforeheating.label = Temperatur Zuluft vor Heizung
channel-type.valloxmv.tempincomingbeforeheating.description = Aktuelle Temperatur der Zuluft vor Erwärmung durch Heizung (optionales Zubehör)
channel-type.valloxmv.tempincomingbeforeheating.description = Aktuelle Temperatur der Zuluft vor Erwärmung durch Heizung (optionales Zubehör)
channel-type.valloxmv.tempincoming.label = Temperatur Zuluft
channel-type.valloxmv.tempincoming.description = Aktuelle Temperatur der Zuluft
channel-type.valloxmv.humidity.label = Luftfeuchtigkeit
channel-type.valloxmv.humidity.description = Aktuelle Luftfeuchtigkeit der Abluft
channel-type.valloxmv.cellstate.label = Status Wärmetauscher
channel-type.valloxmv.cellstate.description = Status Wärmetauscher
channel-type.valloxmv.cellstate.state.option.0 = Wärmerückgewinnung
channel-type.valloxmv.cellstate.state.option.1 = Kälterückgewinnung
channel-type.valloxmv.co2.label = CO2
channel-type.valloxmv.co2.description = Aktueller Kohlenstoffdioxidgehalt in der Abluft
channel-type.valloxmv.cellstate.label = Status Wärmetauscher
channel-type.valloxmv.cellstate.description = Status Wärmetauscher
channel-type.valloxmv.cellstate.state.option.0 = Wärmerückgewinnung
channel-type.valloxmv.cellstate.state.option.1 = Kälterückgewinnung
channel-type.valloxmv.cellstate.state.option.2 = Deaktiviert (bypass)
channel-type.valloxmv.cellstate.state.option.3 = Enteisung
channel-type.valloxmv.uptimeyears.label = Zeit in Betrieb (Jahre)
Expand All @@ -52,7 +54,7 @@ channel-type.valloxmv.uptimehourscurrent.description = Betriebszeit seit letztem
channel-type.valloxmv.filterchangeddate.label = Letzter Filterwechsel
channel-type.valloxmv.filterchangeddate.description = Datum des letzten Filterwechsels
channel-type.valloxmv.remainingfilterdays.label = Tage bis Filtertausch
channel-type.valloxmv.remainingfilterdays.description = Anzahl an Tagen bis zum nächsten Filtertausch
channel-type.valloxmv.remainingfilterdays.description = Anzahl an Tagen bis zum nächsten Filtertausch
channel-type.valloxmv.extrfanbalancebase.label = Abluft Basis Leistung
channel-type.valloxmv.extrfanbalancebase.description = Abluft Basis Leistung in % (0-100)
channel-type.valloxmv.suppfanbalancebase.label = Zuluft Basis Leistung
Expand All @@ -61,11 +63,11 @@ channel-type.valloxmv.homespeedsetting.label = Ventilatorleistung Anwesend
channel-type.valloxmv.homespeedsetting.description = Ventilatorleistung im Profil Anwesend in % (0-100)
channel-type.valloxmv.awayspeedsetting.label = Ventilatorleistung Abwesend
channel-type.valloxmv.awayspeedsetting.description = Ventilatorleistung im Profil Abwesend in % (0-100)
channel-type.valloxmv.boostspeedsetting.label = Ventilatorleistung Stoßlüftung
channel-type.valloxmv.boostspeedsetting.description = Ventilatorleistung im Profil Stoßlüftung in % (0-100)
channel-type.valloxmv.boostspeedsetting.label = Ventilatorleistung Stoßlüftung
channel-type.valloxmv.boostspeedsetting.description = Ventilatorleistung im Profil Stoßlüftung in % (0-100)
channel-type.valloxmv.homeairtemptarget.label = Zieltemperatur Anwesend
channel-type.valloxmv.homeairtemptarget.description = Zieltemperatur im Profil Anwesend
channel-type.valloxmv.awayairtemptarget.label = Zieltemperatur Abwesend
channel-type.valloxmv.awayairtemptarget.description = Zieltemperatur im Profil Abwesend
channel-type.valloxmv.boostairtemptarget.label = Zieltemperatur Stoßlüftung
channel-type.valloxmv.boostairtemptarget.description = Zieltemperatur im Profil Stoßlüftung
channel-type.valloxmv.boostairtemptarget.label = Zieltemperatur Stoßlüftung
channel-type.valloxmv.boostairtemptarget.description = Zieltemperatur im Profil Stoßlüftung
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@
<channel id="tempincomingbeforeheating" typeId="tempincomingbeforeheating"/>
<channel id="tempincoming" typeId="tempincoming"/>
<channel id="humidity" typeId="humidity"/>
<channel id="co2" typeId="co2"/>
<channel id="cellstate" typeId="cellstate"/>
<channel id="uptimeyears" typeId="uptimeyears"/>
<channel id="uptimehours" typeId="uptimehours"/>
Expand Down Expand Up @@ -151,6 +152,13 @@
<state readOnly="true" min="0" max="100" pattern="%d %unit%"/>
</channel-type>

<channel-type id="co2">
<item-type>Number:Dimensionless</item-type>
<label>CO2</label>
<description>CO2 measurement</description>
<state readOnly="true" pattern="%d %unit%"/>
</channel-type>

<channel-type id="cellstate">
<item-type>Number</item-type>
<label>Cell State</label>
Expand Down

0 comments on commit ab9c598

Please sign in to comment.