diff --git a/bundles/org.openhab.binding.airq/README.md b/bundles/org.openhab.binding.airq/README.md index 82dc2fb3311..6466a485b4c 100644 --- a/bundles/org.openhab.binding.airq/README.md +++ b/bundles/org.openhab.binding.airq/README.md @@ -53,26 +53,28 @@ The rw column is empty if the channel is only readable, w if the channel can be | fineDustCnt02_5 | Number:Dimensionless | | Fine Dust >2,5 µm | | fineDustCnt05 | Number:Dimensionless | | Fine Dust >5 µm | | fineDustCnt10 | Number:Dimensionless | | Fine Dust >10 µm | -| co | Number | | CO concentration | -| co2 | Number:Dimensionless | | CO₂ concentration | +| co | Number:Density | | Carbon monoxide (CO) concentration | +| co2 | Number:Dimensionless | | Carbon dioxide (CO₂) concentration | | dCO2dt | Number | | Change of CO₂ concentration | | dHdt | Number | | Change of Humidity | | dewpt | Number:Temperature | | Dew Point | | doorEvent | Number | | Door Event (experimental, might not work reliably) | | h2s | Number:Density | | Hydrogen sulfide (H₂S) | +| healthIndex | Number:Dimensionless | | Health Index in percent | | health | Number:Dimensionless | | Health Index (0 to 1000, -200 for gas alarm, -800 for fire alarm) | | humidityRelative | Number:Dimensionless | | Humidity in percent | -| humidityAbsolute | Number | | Absolute Humidity | +| humidityAbsolute | Number:Density | | Absolute Humidity | | measureTime | Number:Time | | Milliseconds needed for measurement | -| no2 | Number | | NO₂ concentration | -| o3 | Number | | Ozone (O₃) concentration | +| no2 | Number:Density | | Nitrogen Dioxide (NO₂) concentration | +| o3 | Number:Density | | Ozone (O₃) concentration | | o2 | Number:Dimensionless | | Oxygen (O₂) concentration | +| performanceIndex | Number:Dimensionless | | Performance Index in percent | | performance | Number:Dimensionless | | Performance Index (0 to 1000) | | fineDustConc01 | Number | | Fine Dust concentration >1 µm | | fineDustConc02_5 | Number | | Fine Dust concentration >2.5 µm | | fineDustConc10 | Number | | Fine Dust concentration >10 µm | -| pressure | Number:Pressure | | Pressure | -| so2 | Number | | SO₂ concentration | +| pressure | Number:Pressure | | Barometric Pressure | +| so2 | Number | | Sulfur dioxide (SO₂) concentration | | sound | Number:Dimensionless | | Noise | | temperature | Number:Temperature | | Temperature | | timestamp | DateTime | | Timestamp of measurement | diff --git a/bundles/org.openhab.binding.airq/src/main/java/org/openhab/binding/airq/internal/AirqHandler.java b/bundles/org.openhab.binding.airq/src/main/java/org/openhab/binding/airq/internal/AirqHandler.java index e4334788abd..a293a62f7d8 100644 --- a/bundles/org.openhab.binding.airq/src/main/java/org/openhab/binding/airq/internal/AirqHandler.java +++ b/bundles/org.openhab.binding.airq/src/main/java/org/openhab/binding/airq/internal/AirqHandler.java @@ -488,8 +488,10 @@ public class AirqHandler extends BaseThingHandler { processType(decObj, "dCO2dt", "dCO2dt", "number"); processType(decObj, "dHdt", "dHdt", "number"); processType(decObj, "door_event", "doorEvent", "number"); + processType(decObj, "health", "healthIndex", "index"); processType(decObj, "health", "health", "number"); processType(decObj, "measuretime", "measureTime", "number"); + processType(decObj, "performance", "performanceIndex", "index"); processType(decObj, "performance", "performance", "number"); processType(decObj, "timestamp", "timestamp", "datetime"); processType(decObj, "uptime", "uptime", "numberTimePeriod"); @@ -626,6 +628,10 @@ public class AirqHandler extends BaseThingHandler { updateState(channelName, new QuantityType<>(pairDB.getValue(), Units.DECIBEL)); updateState(channelName + "_maxerr", new DecimalType(pairDB.getMaxdev())); break; + case "index": + double rawValue = Double.parseDouble(dec.get(airqName).toString()); + updateState(channelName, new QuantityType<>(rawValue / 10, Units.PERCENT)); + break; case "datetime": Long timest = Long.valueOf(dec.get(airqName).toString()); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSZ"); diff --git a/bundles/org.openhab.binding.airq/src/main/resources/OH-INF/i18n/airq.properties b/bundles/org.openhab.binding.airq/src/main/resources/OH-INF/i18n/airq.properties index 69266f327f0..a316c648ddd 100644 --- a/bundles/org.openhab.binding.airq/src/main/resources/OH-INF/i18n/airq.properties +++ b/bundles/org.openhab.binding.airq/src/main/resources/OH-INF/i18n/airq.properties @@ -44,20 +44,20 @@ channel-type.airq.WarmupPhase.label = Send data as in Warmup Phase channel-type.airq.Wifi.label = Use WLAN channel-type.airq.WifiInfo.label = Show WLAN Status with LED channel-type.airq.cloudUpload.label = Upload to air-Q Cloud -channel-type.airq.cnt0_3.label = Fine Dust >0,3 μm +channel-type.airq.cnt0_3.label = Fine Dust Count 0.3μm channel-type.airq.cnt0_3_maxerr.label = Max. Error Fine Dust >0,3μm -channel-type.airq.cnt0_5.label = Fine Dust >0,5 μm +channel-type.airq.cnt0_5.label = Fine Dust Count 0.5 μm channel-type.airq.cnt0_5_maxerr.label = Max. Error Fine Dust >0,5μm -channel-type.airq.cnt1.label = Fine Dust >1 μm -channel-type.airq.cnt10.label = Fine Dust >10 μm +channel-type.airq.cnt1.label = Fine Dust Count 1μm +channel-type.airq.cnt10.label = Fine Dust Count 10μm channel-type.airq.cnt10_maxerr.label = Max. Error Fine Dust >10μm channel-type.airq.cnt1_maxerr.label = Max. Error Fine Dust >1μm -channel-type.airq.cnt2_5.label = Fine Dust >2,5 μm +channel-type.airq.cnt2_5.label = Fine Dust Count 2.5μm channel-type.airq.cnt2_5_maxerr.label = Max. Error Fine Dust >2,5μm -channel-type.airq.cnt5.label = Fine Dust >5 μm +channel-type.airq.cnt5.label = Fine Dust Count 5μm channel-type.airq.cnt5_maxerr.label = Max. Error Fine Dust >5μm -channel-type.airq.co.label = CO Concentration -channel-type.airq.co2.label = CO₂ Concentration +channel-type.airq.co.label = Carbon Monoxide (CO) +channel-type.airq.co2.label = Carbon Dioxide (CO₂) channel-type.airq.co2_maxerr.label = Max. Error CO₂ Conc. channel-type.airq.co_maxerr.label = Max. Error CO Conc. channel-type.airq.dco2dt.label = Change of CO₂ Concentr. @@ -69,7 +69,8 @@ channel-type.airq.door.label = Door Event (exp) channel-type.airq.geopos.label = Location of air-Q Device channel-type.airq.h2s.label = Hydrogen Sulfide (H₂S) channel-type.airq.h2s_maxerr.label = Max. Error H₂S Conc. -channel-type.airq.health.label = Health Index +channel-type.airq.health.label = Health Index Raw +channel-type.airq.health_index.label = Health Index channel-type.airq.humidity.label = Humidity channel-type.airq.humidity_abs.label = Absolute Humidity channel-type.airq.humidity_abs_maxerr.label = Max. Error Abs. Humidity @@ -81,22 +82,23 @@ channel-type.airq.nightmodeFanNightOff.label = Switch Off Fan at Night channel-type.airq.nightmodeStartDay.label = Start of Day Operation channel-type.airq.nightmodeStartNight.label = End of Day Operation channel-type.airq.nightmodeWifiNightOff.label = Switch Off WLAN at Night -channel-type.airq.no2.label = NO₂ Concentration +channel-type.airq.no2.label = Nitrogen Dioxide (NO₂) channel-type.airq.no2_maxerr.label = Max. Error NO₂ Conc. -channel-type.airq.o3.label = O₃ Concentration +channel-type.airq.o3.label = Ozone (O₃) channel-type.airq.o3_maxerr.label = Max. Error O₃ Conc. -channel-type.airq.oxygen.label = Oxygen Concentration +channel-type.airq.oxygen.label = Oxygen (O₂) channel-type.airq.oxygen_maxerr.label = Max. Error Oxygen Conc. channel-type.airq.pass.label = Device Password -channel-type.airq.performance.label = Performance Index -channel-type.airq.pm1.label = Fine Dust Concentr. >1μ -channel-type.airq.pm10.label = Fine Dust Concentr. >10μ +channel-type.airq.performance.label = Performance Index Raw +channel-type.airq.performance_index.label = Performance Index +channel-type.airq.pm1.label = Fine Dust 1μm +channel-type.airq.pm10.label = Fine Dust 10μm channel-type.airq.pm10_maxerr.label = Max. Error Fine Dust Conc. >10μm channel-type.airq.pm1_maxerr.label = Max. Error Fine Dust Conc. >1μm -channel-type.airq.pm2_5.label = Fine Dust Concentr. >2,5μ +channel-type.airq.pm2_5.label = Fine Dust 2.5μm channel-type.airq.pm2_5_maxerr.label = Max. Error Fine Dust Conc. >2,5μm channel-type.airq.ppm_and_ppb.label = Values in Particles -channel-type.airq.pressure.label = Pressure +channel-type.airq.pressure.label = Barometric Pressure channel-type.airq.pressure_maxerr.label = Max. Error Pressure channel-type.airq.so2.label = SO₂ Concentration channel-type.airq.so2_maxerr.label = Max. Error SO₂ Conc. @@ -106,7 +108,7 @@ channel-type.airq.status.label = Status of Sensors channel-type.airq.temperature.label = Temperature channel-type.airq.temperature_maxerr.label = Max. Error Temperature channel-type.airq.timestamp.label = Time Stamp -channel-type.airq.tvoc.label = VOC Concentration +channel-type.airq.tvoc.label = Volatile Organic Compounds (VOC) channel-type.airq.tvoc_maxerr.label = Max. Error VOC Conc. channel-type.airq.typps.label = Average Size of Fine Dust channel-type.airq.uptime.label = Uptime diff --git a/bundles/org.openhab.binding.airq/src/main/resources/OH-INF/thing/thing-types.xml b/bundles/org.openhab.binding.airq/src/main/resources/OH-INF/thing/thing-types.xml index 8ecda458a2b..6baacb283b9 100644 --- a/bundles/org.openhab.binding.airq/src/main/resources/OH-INF/thing/thing-types.xml +++ b/bundles/org.openhab.binding.airq/src/main/resources/OH-INF/thing/thing-types.xml @@ -25,6 +25,7 @@ + @@ -32,6 +33,7 @@ + @@ -117,7 +119,7 @@ Unknown sensor list No info about sensors No industry info - 1 + 2 @@ -142,56 +144,56 @@ - Number:Length + Number:Length - + - + Number:Dimensionless - + - + Number:Dimensionless - + - + Number:Dimensionless - + - + Number:Dimensionless - + - + Number:Dimensionless - + - + Number:Dimensionless - + - Number - - + Number:Density + + - Number:Dimensionless - + Number:Dimensionless + @@ -210,7 +212,7 @@ Number:Temperature - + @@ -225,22 +227,28 @@ - - Number:Dimensionless + + Number:Dimensionless + + + + + Number:Dimensionless + Number:Dimensionless - + - Number + Number:Density - + @@ -250,51 +258,57 @@ - Number - - + Number:Density + + - Number - - + Number:Density + + - Number:Dimensionless - - + Number:Dimensionless + + - - Number:Dimensionless + + Number:Dimensionless + + + + + Number:Dimensionless + - Number - - + Number:Density + + - Number - - + Number:Density + + - Number - - + Number:Density + + - Number:Pressure - - + Number:Pressure + + @@ -322,8 +336,8 @@ - Number:Dimensionless - + Number:Dimensionless + diff --git a/bundles/org.openhab.binding.airq/src/main/resources/OH-INF/update/update.xml b/bundles/org.openhab.binding.airq/src/main/resources/OH-INF/update/update.xml index 17176bde5d2..ce06ce5b7e1 100644 --- a/bundles/org.openhab.binding.airq/src/main/resources/OH-INF/update/update.xml +++ b/bundles/org.openhab.binding.airq/src/main/resources/OH-INF/update/update.xml @@ -14,6 +14,67 @@ + + + airq:health_index + + + + airq:performance_index + + + + + airq:co + + + + airq:no2 + + + + airq:o3 + + + + + airq:pm1 + + + + airq:pm2_5 + + + + airq:pm10 + + + + + airq:cnt0_3 + + + + airq:cnt0_5 + + + + airq:cnt1 + + + + airq:cnt2_5 + + + + airq:cnt5 + + + + airq:cnt10 + + +