From 577ec5dd478683b6c32e3ade269c6b183dc2f772 Mon Sep 17 00:00:00 2001 From: VikingGer <90556180+VikingGer@users.noreply.github.com> Date: Sat, 16 Apr 2022 16:05:59 +0200 Subject: [PATCH] Update const.py Changed all sensor names to pretagged with "Ecowitt" so they are more in line with general sensor naming. State_Class_Measurement is also removed. This happend more or less by accident cause the "live" installed repo via HACS already uses the code without them, but is still labeled 0.6 (not 0.7). So there seems to be some kind of mixed up configuration. Additionally I'd like to offer german translation if desired. --- custom_components/ecowitt/const.py | 688 ++++++++++++----------------- 1 file changed, 281 insertions(+), 407 deletions(-) diff --git a/custom_components/ecowitt/const.py b/custom_components/ecowitt/const.py index e57fc40..529ddfe 100644 --- a/custom_components/ecowitt/const.py +++ b/custom_components/ecowitt/const.py @@ -247,457 +247,331 @@ WINDCHILL_OPTS = [W_TYPE_HYBRID, W_TYPE_NEW, W_TYPE_OLD] -# Name, unit_of_measure, type, device_class, icon, metric=1, state_class -# name, uom, kind, device_class, icon, metric, state_class = SENSOR_TYPES[x] + +# Name, unit_of_measure, type, device_class, icon, metric=1 +# name, uom, kind, device_class, icon, metric = SENSOR_TYPES[x] SENSOR_TYPES = { - TYPE_BAROMABSHPA: ("Absolute Pressure", PRESSURE_HPA, + TYPE_BAROMABSHPA: ("Ecowitt Absolute Pressure", PRESSURE_HPA, TYPE_SENSOR, DEVICE_CLASS_PRESSURE, - "mdi:gauge", S_METRIC, STATE_CLASS_MEASUREMENT), - TYPE_BAROMRELHPA: ("Relative Pressure", PRESSURE_HPA, + "mdi:gauge", S_METRIC), + TYPE_BAROMRELHPA: ("Ecowitt Relative Pressure", PRESSURE_HPA, TYPE_SENSOR, DEVICE_CLASS_PRESSURE, - "mdi:gauge", S_METRIC, STATE_CLASS_MEASUREMENT), - TYPE_BAROMABSIN: ("Absolute Pressure", PRESSURE_INHG, + "mdi:gauge", S_METRIC), + TYPE_BAROMABSIN: ("Ecowitt Absolute Pressure", PRESSURE_INHG, TYPE_SENSOR, DEVICE_CLASS_PRESSURE, - "mdi:gauge", S_IMPERIAL, STATE_CLASS_MEASUREMENT), - TYPE_BAROMRELIN: ("Relative Pressure", PRESSURE_INHG, + "mdi:gauge", S_IMPERIAL), + TYPE_BAROMRELIN: ("Ecowitt Relative Pressure", PRESSURE_INHG, TYPE_SENSOR, DEVICE_CLASS_PRESSURE, - "mdi:gauge", S_IMPERIAL, STATE_CLASS_MEASUREMENT), - TYPE_RAINRATEIN: ("Rain Rate", f"{LENGTH_INCHES}/{TIME_HOURS}", - TYPE_SENSOR, None, "mdi:water", S_IMPERIAL, - STATE_CLASS_TOTAL_INCREASING), - TYPE_EVENTRAININ: ("Event Rain Rate", f"{LENGTH_INCHES}/{TIME_HOURS}", - TYPE_SENSOR, None, "mdi:water", S_IMPERIAL, - STATE_CLASS_TOTAL_INCREASING), - TYPE_HOURLYRAININ: ("Hourly Rain Rate", f"{LENGTH_INCHES}/{TIME_HOURS}", - TYPE_SENSOR, None, "mdi:water", S_IMPERIAL, - STATE_CLASS_TOTAL_INCREASING), - TYPE_TOTALRAININ: ("Total Rain Rate", f"{LENGTH_INCHES}", - TYPE_SENSOR, None, "mdi:water", S_IMPERIAL, - STATE_CLASS_TOTAL_INCREASING), - TYPE_DAILYRAININ: ("Daily Rain Rate", f"{LENGTH_INCHES}/{TIME_DAYS}", - TYPE_SENSOR, None, "mdi:water", S_IMPERIAL, - STATE_CLASS_TOTAL_INCREASING), - TYPE_WEEKLYRAININ: ("Weekly Rain Rate", f"{LENGTH_INCHES}/{TIME_WEEKS}", - TYPE_SENSOR, None, "mdi:water", S_IMPERIAL, - STATE_CLASS_TOTAL_INCREASING), - TYPE_MONTHLYRAININ: ("Monthly Rain Rate", f"{LENGTH_INCHES}/{TIME_MONTHS}", - TYPE_SENSOR, None, "mdi:water", S_IMPERIAL, - STATE_CLASS_TOTAL_INCREASING), - TYPE_YEARLYRAININ: ("Yearly Rain Rate", f"{LENGTH_INCHES}/{TIME_YEARS}", - TYPE_SENSOR, None, "mdi:water", S_IMPERIAL, - STATE_CLASS_TOTAL_INCREASING), - TYPE_RAINRATEMM: ("Rain Rate", f"mm/{TIME_HOURS}", - TYPE_SENSOR, None, "mdi:water", S_METRIC, - STATE_CLASS_TOTAL_INCREASING), - TYPE_EVENTRAINMM: ("Event Rain Rate", f"mm/{TIME_HOURS}", - TYPE_SENSOR, None, "mdi:water", S_METRIC, - STATE_CLASS_TOTAL_INCREASING), - TYPE_HOURLYRAINMM: ("Hourly Rain Rate", f"mm/{TIME_HOURS}", - TYPE_SENSOR, None, "mdi:water", S_METRIC, - STATE_CLASS_TOTAL_INCREASING), - TYPE_TOTALRAINMM: ("Total Rain Rate", f"mm", - TYPE_SENSOR, None, "mdi:water", S_METRIC, - STATE_CLASS_TOTAL_INCREASING), - TYPE_DAILYRAINMM: ("Daily Rain Rate", f"mm/{TIME_DAYS}", - TYPE_SENSOR, None, "mdi:water", S_METRIC, - STATE_CLASS_TOTAL_INCREASING), - TYPE_WEEKLYRAINMM: ("Weekly Rain Rate", f"mm/{TIME_WEEKS}", - TYPE_SENSOR, None, "mdi:water", S_METRIC, - STATE_CLASS_TOTAL_INCREASING), - TYPE_MONTHLYRAINMM: ("Monthly Rain Rate", f"mm/{TIME_MONTHS}", - TYPE_SENSOR, None, "mdi:water", S_METRIC, - STATE_CLASS_TOTAL_INCREASING), - TYPE_YEARLYRAINMM: ("Yearly Rain Rate", f"mm/{TIME_YEARS}", - TYPE_SENSOR, None, "mdi:water", S_METRIC, - STATE_CLASS_TOTAL_INCREASING), - TYPE_HUMIDITY: ("Humidity", PERCENTAGE, + "mdi:gauge", S_IMPERIAL), + TYPE_RAINRATEIN: ("Ecowitt Rain Rate", f"{LENGTH_INCHES}/{TIME_HOURS}", + TYPE_SENSOR, None, "mdi:water", S_IMPERIAL), + TYPE_EVENTRAININ: ("Ecowitt Event Rain Rate", f"{LENGTH_INCHES}/{TIME_HOURS}", + TYPE_SENSOR, None, "mdi:water", S_IMPERIAL), + TYPE_HOURLYRAININ: ("Ecowitt Hourly Rain Rate", f"{LENGTH_INCHES}/{TIME_HOURS}", + TYPE_SENSOR, None, "mdi:water", S_IMPERIAL), + TYPE_TOTALRAININ: ("Ecowitt Total Rain Rate", f"{LENGTH_INCHES}", + TYPE_SENSOR, None, "mdi:water", S_IMPERIAL), + TYPE_DAILYRAININ: ("Ecowitt Daily Rain Rate", f"{LENGTH_INCHES}/{TIME_DAYS}", + TYPE_SENSOR, None, "mdi:water", S_IMPERIAL), + TYPE_WEEKLYRAININ: ("Ecowitt Weekly Rain Rate", f"{LENGTH_INCHES}/{TIME_WEEKS}", + TYPE_SENSOR, None, "mdi:water", S_IMPERIAL), + TYPE_MONTHLYRAININ: ("Ecowitt Monthly Rain Rate", f"{LENGTH_INCHES}/{TIME_MONTHS}", + TYPE_SENSOR, None, "mdi:water", S_IMPERIAL), + TYPE_YEARLYRAININ: ("Ecowitt Yearly Rain Rate", f"{LENGTH_INCHES}/{TIME_YEARS}", + TYPE_SENSOR, None, "mdi:water", S_IMPERIAL), + TYPE_RAINRATEMM: ("Ecowitt Rain Rate", f"mm/{TIME_HOURS}", + TYPE_SENSOR, None, "mdi:water", S_METRIC), + TYPE_EVENTRAINMM: ("Ecowitt Event Rain Rate", f"mm/{TIME_HOURS}", + TYPE_SENSOR, None, "mdi:water", S_METRIC), + TYPE_HOURLYRAINMM: ("Ecowitt Hourly Rain Rate", f"mm/{TIME_HOURS}", + TYPE_SENSOR, None, "mdi:water", S_METRIC), + TYPE_TOTALRAINMM: ("Ecowitt Total Rain Rate", f"mm", + TYPE_SENSOR, None, "mdi:water", S_METRIC), + TYPE_DAILYRAINMM: ("Ecowitt Daily Rain Rate", f"mm/{TIME_DAYS}", + TYPE_SENSOR, None, "mdi:water", S_METRIC), + TYPE_WEEKLYRAINMM: ("Ecowitt Weekly Rain Rate", f"mm/{TIME_WEEKS}", + TYPE_SENSOR, None, "mdi:water", S_METRIC), + TYPE_MONTHLYRAINMM: ("Ecowitt Monthly Rain Rate", f"mm/{TIME_MONTHS}", + TYPE_SENSOR, None, "mdi:water", S_METRIC), + TYPE_YEARLYRAINMM: ("Ecowitt Yearly Rain Rate", f"mm/{TIME_YEARS}", + TYPE_SENSOR, None, "mdi:water", S_METRIC), + TYPE_HUMIDITY: ("Ecowitt Humidity", PERCENTAGE, TYPE_SENSOR, DEVICE_CLASS_HUMIDITY, - "mdi:water-percent", 0, STATE_CLASS_MEASUREMENT), - TYPE_HUMIDITYIN: ("Indoor Humidity", PERCENTAGE, + "mdi:water-percent", 0), + TYPE_HUMIDITYIN: ("Ecowitt Indoor Humidity", PERCENTAGE, TYPE_SENSOR, DEVICE_CLASS_HUMIDITY, - "mdi:water-percent", 0, STATE_CLASS_MEASUREMENT), - TYPE_HUMIDITY1: ("Humidity 1", PERCENTAGE, + "mdi:water-percent", 0), + TYPE_HUMIDITY1: ("Ecowitt Humidity 1", PERCENTAGE, TYPE_SENSOR, DEVICE_CLASS_HUMIDITY, - "mdi:water-percent", 0, STATE_CLASS_MEASUREMENT), - TYPE_HUMIDITY2: ("Humidity 2", PERCENTAGE, + "mdi:water-percent", 0), + TYPE_HUMIDITY2: ("Ecowitt Humidity 2", PERCENTAGE, TYPE_SENSOR, DEVICE_CLASS_HUMIDITY, - "mdi:water-percent", 0, STATE_CLASS_MEASUREMENT), - TYPE_HUMIDITY3: ("Humidity 3", PERCENTAGE, + "mdi:water-percent", 0), + TYPE_HUMIDITY3: ("Ecowitt Humidity 3", PERCENTAGE, TYPE_SENSOR, DEVICE_CLASS_HUMIDITY, - "mdi:water-percent", 0, STATE_CLASS_MEASUREMENT), - TYPE_HUMIDITY4: ("Humidity 4", PERCENTAGE, + "mdi:water-percent", 0), + TYPE_HUMIDITY4: ("Ecowitt Humidity 4", PERCENTAGE, TYPE_SENSOR, DEVICE_CLASS_HUMIDITY, - "mdi:water-percent", 0, STATE_CLASS_MEASUREMENT), - TYPE_HUMIDITY5: ("Humidity 5", PERCENTAGE, + "mdi:water-percent", 0), + TYPE_HUMIDITY5: ("Ecowitt Humidity 5", PERCENTAGE, TYPE_SENSOR, DEVICE_CLASS_HUMIDITY, - "mdi:water-percent", 0, STATE_CLASS_MEASUREMENT), - TYPE_HUMIDITY6: ("Humidity 6", PERCENTAGE, + "mdi:water-percent", 0), + TYPE_HUMIDITY6: ("Ecowitt Humidity 6", PERCENTAGE, TYPE_SENSOR, DEVICE_CLASS_HUMIDITY, - "mdi:water-percent", 0, STATE_CLASS_MEASUREMENT), - TYPE_HUMIDITY7: ("Humidity 7", PERCENTAGE, + "mdi:water-percent", 0), + TYPE_HUMIDITY7: ("Ecowitt Humidity 7", PERCENTAGE, TYPE_SENSOR, DEVICE_CLASS_HUMIDITY, - "mdi:water-percent", 0, STATE_CLASS_MEASUREMENT), - TYPE_HUMIDITY8: ("Humidity 8", PERCENTAGE, + "mdi:water-percent", 0), + TYPE_HUMIDITY8: ("Ecowitt Humidity 8", PERCENTAGE, TYPE_SENSOR, DEVICE_CLASS_HUMIDITY, - "mdi:water-percent", 0, STATE_CLASS_MEASUREMENT), - TYPE_WINDDIR: ("Wind Direction", DEGREE, - TYPE_SENSOR, None, "mdi:compass", 0, STATE_CLASS_MEASUREMENT), - TYPE_WINDDIR_A10: ("Wind Direction 10m Avg", DEGREE, - TYPE_SENSOR, None, "mdi:compass", 0, - STATE_CLASS_MEASUREMENT), - TYPE_WINDSPEEDKMH: ("Wind Speed", SPEED_KILOMETERS_PER_HOUR, - TYPE_SENSOR, None, "mdi:weather-windy", S_METRIC, - STATE_CLASS_MEASUREMENT), - TYPE_WINDSPEEDKMH_A10: ("Wind Speed 10m Avg", SPEED_KILOMETERS_PER_HOUR, - TYPE_SENSOR, None, "mdi:weather-windy", S_METRIC, - STATE_CLASS_MEASUREMENT), - TYPE_WINDGUSTKMH: ("Wind Gust", SPEED_KILOMETERS_PER_HOUR, - TYPE_SENSOR, None, "mdi:weather-windy", S_METRIC, - STATE_CLASS_MEASUREMENT), - TYPE_WINDSPEEDMPH: ("Wind Speed", SPEED_MILES_PER_HOUR, - TYPE_SENSOR, None, "mdi:weather-windy", S_IMPERIAL, - STATE_CLASS_MEASUREMENT), - TYPE_WINDSPEEDMPH_A10: ("Wind Speed 10m Avg", SPEED_MILES_PER_HOUR, + "mdi:water-percent", 0), + TYPE_WINDDIR: ("Ecowitt Wind Direction", DEGREE, + TYPE_SENSOR, None, "mdi:compass", 0), + TYPE_WINDDIR_A10: ("Ecowitt Wind Direction 10m Avg", DEGREE, + TYPE_SENSOR, None, "mdi:compass", 0), + TYPE_WINDSPEEDKMH: ("Ecowitt Wind Speed", SPEED_KILOMETERS_PER_HOUR, + TYPE_SENSOR, None, "mdi:weather-windy", S_METRIC), + TYPE_WINDSPEEDKMH_A10: ("Ecowitt Wind Speed 10m Avg", SPEED_KILOMETERS_PER_HOUR, + TYPE_SENSOR, None, "mdi:weather-windy", S_METRIC), + TYPE_WINDGUSTKMH: ("Ecowitt Wind Gust", SPEED_KILOMETERS_PER_HOUR, + TYPE_SENSOR, None, "mdi:weather-windy", S_METRIC), + TYPE_WINDSPEEDMPH: ("Ecowitt Wind Speed", SPEED_MILES_PER_HOUR, + TYPE_SENSOR, None, "mdi:weather-windy", S_IMPERIAL), + TYPE_WINDSPEEDMPH_A10: ("Ecowitt Wind Speed 10m Avg", SPEED_MILES_PER_HOUR, TYPE_SENSOR, None, "mdi:weather-windy", - S_IMPERIAL, STATE_CLASS_MEASUREMENT), - TYPE_WINDGUSTMPH: ("Wind Gust", SPEED_MILES_PER_HOUR, - TYPE_SENSOR, None, "mdi:weather-windy", S_IMPERIAL, - STATE_CLASS_MEASUREMENT), - TYPE_MAXDAILYGUST: ("Max Daily Wind Gust", SPEED_MILES_PER_HOUR, - TYPE_SENSOR, None, "mdi:weather-windy", S_IMPERIAL, - STATE_CLASS_MEASUREMENT), - TYPE_MAXDAILYGUSTKMH: ("Max Daily Wind Gust", SPEED_KILOMETERS_PER_HOUR, - TYPE_SENSOR, None, "mdi:weather-windy", S_METRIC, - STATE_CLASS_MEASUREMENT), - TYPE_WINDGUSTMS: ("Wind Gust", SPEED_METERS_PER_SECOND, - TYPE_SENSOR, None, "mdi:weather-windy", S_METRIC_MS, - STATE_CLASS_MEASUREMENT), - TYPE_WINDSPEEDMS: ("Wind Speed", SPEED_METERS_PER_SECOND, - TYPE_SENSOR, None, "mdi:weather-windy", S_METRIC_MS, - STATE_CLASS_MEASUREMENT), - TYPE_WINDSPEEDMS_A10: ("Wind Speed", SPEED_METERS_PER_SECOND, - TYPE_SENSOR, None, "mdi:weather-windy", S_METRIC_MS, - STATE_CLASS_MEASUREMENT), - TYPE_MAXDAILYGUSTMS: ("Max Daily Wind Gust", SPEED_METERS_PER_SECOND, - TYPE_SENSOR, None, "mdi:weather-windy", S_METRIC_MS, - STATE_CLASS_MEASUREMENT), - TYPE_TEMPC: ("Outdoor Temperature", TEMP_CELSIUS, - TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, "mdi:thermometer", 0, - STATE_CLASS_MEASUREMENT), - TYPE_TEMP1C: ("Temperature 1", TEMP_CELSIUS, - TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, "mdi:thermometer", 0, - STATE_CLASS_MEASUREMENT), - TYPE_TEMP2C: ("Temperature 2", TEMP_CELSIUS, - TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, "mdi:thermometer", 0, - STATE_CLASS_MEASUREMENT), - TYPE_TEMP3C: ("Temperature 3", TEMP_CELSIUS, - TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, "mdi:thermometer", 0, - STATE_CLASS_MEASUREMENT), - TYPE_TEMP4C: ("Temperature 4", TEMP_CELSIUS, - TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, "mdi:thermometer", 0, - STATE_CLASS_MEASUREMENT), - TYPE_TEMP5C: ("Temperature 5", TEMP_CELSIUS, - TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, "mdi:thermometer", 0, - STATE_CLASS_MEASUREMENT), - TYPE_TEMP6C: ("Temperature 6", TEMP_CELSIUS, - TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, "mdi:thermometer", 0, - STATE_CLASS_MEASUREMENT), - TYPE_TEMP7C: ("Temperature 7", TEMP_CELSIUS, - TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, "mdi:thermometer", 0, - STATE_CLASS_MEASUREMENT), - TYPE_TEMP8C: ("Temperature 8", TEMP_CELSIUS, - TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, "mdi:thermometer", 0, - STATE_CLASS_MEASUREMENT), - TYPE_TEMPINC: ("Indoor Temperature", TEMP_CELSIUS, + S_IMPERIAL), + TYPE_WINDGUSTMPH: ("Ecowitt Wind Gust", SPEED_MILES_PER_HOUR, + TYPE_SENSOR, None, "mdi:weather-windy", S_IMPERIAL), + TYPE_MAXDAILYGUST: ("Ecowitt Max Daily Wind Gust", SPEED_MILES_PER_HOUR, + TYPE_SENSOR, None, "mdi:weather-windy", S_IMPERIAL), + TYPE_MAXDAILYGUSTKMH: ("Ecowitt Max Daily Wind Gust", SPEED_KILOMETERS_PER_HOUR, + TYPE_SENSOR, None, "mdi:weather-windy", S_METRIC), + TYPE_WINDGUSTMS: ("Ecowitt Wind Gust", SPEED_METERS_PER_SECOND, + TYPE_SENSOR, None, "mdi:weather-windy", S_METRIC_MS), + TYPE_WINDSPEEDMS: ("Ecowitt Wind Speed", SPEED_METERS_PER_SECOND, + TYPE_SENSOR, None, "mdi:weather-windy", S_METRIC_MS), + TYPE_WINDSPEEDMS_A10: ("Ecowitt Wind Speed", SPEED_METERS_PER_SECOND, + TYPE_SENSOR, None, "mdi:weather-windy", S_METRIC_MS), + TYPE_MAXDAILYGUSTMS: ("Ecowitt Max Daily Wind Gust", SPEED_METERS_PER_SECOND, + TYPE_SENSOR, None, "mdi:weather-windy", S_METRIC_MS), + TYPE_TEMPC: ("Ecowitt Outdoor Temperature", TEMP_CELSIUS, + TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, "mdi:thermometer", 0), + TYPE_TEMP1C: ("Ecowitt Temperature 1", TEMP_CELSIUS, + TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, "mdi:thermometer", 0), + TYPE_TEMP2C: ("Ecowitt Temperature 2", TEMP_CELSIUS, + TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, "mdi:thermometer", 0), + TYPE_TEMP3C: ("Ecowitt Temperature 3", TEMP_CELSIUS, + TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, "mdi:thermometer", 0), + TYPE_TEMP4C: ("Ecowitt Temperature 4", TEMP_CELSIUS, + TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, "mdi:thermometer", 0), + TYPE_TEMP5C: ("Ecowitt Temperature 5", TEMP_CELSIUS, + TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, "mdi:thermometer", 0), + TYPE_TEMP6C: ("Ecowitt Temperature 6", TEMP_CELSIUS, + TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, "mdi:thermometer", 0), + TYPE_TEMP7C: ("Ecowitt Temperature 7", TEMP_CELSIUS, + TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, "mdi:thermometer", 0), + TYPE_TEMP8C: ("Ecowitt Temperature 8", TEMP_CELSIUS, + TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, "mdi:thermometer", 0), + TYPE_TEMPINC: ("Ecowitt Indoor Temperature", TEMP_CELSIUS, TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, - "mdi:thermometer", 0, STATE_CLASS_MEASUREMENT), - TYPE_DEWPOINTC: ("Dewpoint", TEMP_CELSIUS, + "mdi:thermometer", 0), + TYPE_DEWPOINTC: ("Ecowitt Dewpoint", TEMP_CELSIUS, TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, - "mdi:thermometer", 0, STATE_CLASS_MEASUREMENT), - TYPE_DEWPOINTINC: ("Indoor Dewpoint", TEMP_CELSIUS, + "mdi:thermometer", 0), + TYPE_DEWPOINTINC: ("Ecowitt Indoor Dewpoint", TEMP_CELSIUS, TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, - "mdi:thermometer", 0, STATE_CLASS_MEASUREMENT), - TYPE_DEWPOINT1C: ("Dewpoint 1", TEMP_CELSIUS, + "mdi:thermometer", 0), + TYPE_DEWPOINT1C: ("Ecowitt Dewpoint 1", TEMP_CELSIUS, TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, - "mdi:thermometer", 0, STATE_CLASS_MEASUREMENT), - TYPE_DEWPOINT2C: ("Dewpoint 2", TEMP_CELSIUS, + "mdi:thermometer", 0), + TYPE_DEWPOINT2C: ("Ecowitt Dewpoint 2", TEMP_CELSIUS, TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, - "mdi:thermometer", 0, STATE_CLASS_MEASUREMENT), - TYPE_DEWPOINT3C: ("Dewpoint 3", TEMP_CELSIUS, + "mdi:thermometer", 0), + TYPE_DEWPOINT3C: ("Ecowitt Dewpoint 3", TEMP_CELSIUS, TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, - "mdi:thermometer", 0, STATE_CLASS_MEASUREMENT), - TYPE_DEWPOINT4C: ("Dewpoint 4", TEMP_CELSIUS, + "mdi:thermometer", 0), + TYPE_DEWPOINT4C: ("Ecowitt Dewpoint 4", TEMP_CELSIUS, TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, - "mdi:thermometer", 0, STATE_CLASS_MEASUREMENT), - TYPE_DEWPOINT5C: ("Dewpoint 5", TEMP_CELSIUS, + "mdi:thermometer", 0), + TYPE_DEWPOINT5C: ("Ecowitt Dewpoint 5", TEMP_CELSIUS, TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, - "mdi:thermometer", 0, STATE_CLASS_MEASUREMENT), - TYPE_DEWPOINT6C: ("Dewpoint 6", TEMP_CELSIUS, + "mdi:thermometer", 0), + TYPE_DEWPOINT6C: ("Ecowitt Dewpoint 6", TEMP_CELSIUS, TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, - "mdi:thermometer", 0, STATE_CLASS_MEASUREMENT), - TYPE_DEWPOINT7C: ("Dewpoint 7", TEMP_CELSIUS, + "mdi:thermometer", 0), + TYPE_DEWPOINT7C: ("Ecowitt Dewpoint 7", TEMP_CELSIUS, TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, - "mdi:thermometer", 0, STATE_CLASS_MEASUREMENT), - TYPE_DEWPOINT8C: ("Dewpoint 8", TEMP_CELSIUS, + "mdi:thermometer", 0), + TYPE_DEWPOINT8C: ("Ecowitt Dewpoint 8", TEMP_CELSIUS, TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, - "mdi:thermometer", 0, STATE_CLASS_MEASUREMENT), - TYPE_WINDCHILLC: ("Windchill", TEMP_CELSIUS, + "mdi:thermometer", 0), + TYPE_WINDCHILLC: ("Ecowitt Windchill", TEMP_CELSIUS, TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, - "mdi:thermometer", 0, STATE_CLASS_MEASUREMENT), - TYPE_SOLARRADIATION: ("Solar Radiation", f"{POWER_WATT}/m^2", + "mdi:thermometer", 0), + TYPE_SOLARRADIATION: ("Ecowitt Solar Radiation", f"{POWER_WATT}/m^2", TYPE_SENSOR, DEVICE_CLASS_ILLUMINANCE, - "mdi:weather-sunny", 0, STATE_CLASS_MEASUREMENT), - TYPE_UV: ("UV Index", UV_INDEX, - TYPE_SENSOR, None, "mdi:sunglasses", 0, STATE_CLASS_MEASUREMENT), - TYPE_SOILMOISTURE1: ("Soil Moisture 1", PERCENTAGE, + "mdi:weather-sunny", 0), + TYPE_UV: ("Ecowitt UV Index", UV_INDEX, + TYPE_SENSOR, None, "mdi:sunglasses", 0), + TYPE_SOILMOISTURE1: ("Ecowitt Soil Moisture 1", PERCENTAGE, TYPE_SENSOR, DEVICE_CLASS_HUMIDITY, - "mdi:water-percent", 0, STATE_CLASS_MEASUREMENT), - TYPE_SOILMOISTURE2: ("Soil Moisture 2", PERCENTAGE, + "mdi:water-percent", 0), + TYPE_SOILMOISTURE2: ("Ecowitt Soil Moisture 2", PERCENTAGE, TYPE_SENSOR, DEVICE_CLASS_HUMIDITY, - "mdi:water-percent", 0, STATE_CLASS_MEASUREMENT), - TYPE_SOILMOISTURE3: ("Soil Moisture 3", PERCENTAGE, + "mdi:water-percent", 0), + TYPE_SOILMOISTURE3: ("Ecowitt Soil Moisture 3", PERCENTAGE, TYPE_SENSOR, DEVICE_CLASS_HUMIDITY, - "mdi:water-percent", 0, STATE_CLASS_MEASUREMENT), - TYPE_SOILMOISTURE4: ("Soil Moisture 4", PERCENTAGE, + "mdi:water-percent", 0), + TYPE_SOILMOISTURE4: ("Ecowitt Soil Moisture 4", PERCENTAGE, TYPE_SENSOR, DEVICE_CLASS_HUMIDITY, - "mdi:water-percent", 0, STATE_CLASS_MEASUREMENT), - TYPE_SOILMOISTURE5: ("Soil Moisture 5", PERCENTAGE, + "mdi:water-percent", 0), + TYPE_SOILMOISTURE5: ("Ecowitt Soil Moisture 5", PERCENTAGE, TYPE_SENSOR, DEVICE_CLASS_HUMIDITY, - "mdi:water-percent", 0, STATE_CLASS_MEASUREMENT), - TYPE_SOILMOISTURE6: ("Soil Moisture 6", PERCENTAGE, + "mdi:water-percent", 0), + TYPE_SOILMOISTURE6: ("Ecowitt Soil Moisture 6", PERCENTAGE, TYPE_SENSOR, DEVICE_CLASS_HUMIDITY, - "mdi:water-percent", 0, STATE_CLASS_MEASUREMENT), - TYPE_SOILMOISTURE7: ("Soil Moisture 7", PERCENTAGE, + "mdi:water-percent", 0), + TYPE_SOILMOISTURE7: ("Ecowitt Soil Moisture 7", PERCENTAGE, TYPE_SENSOR, DEVICE_CLASS_HUMIDITY, - "mdi:water-percent", 0, STATE_CLASS_MEASUREMENT), - TYPE_SOILMOISTURE8: ("Soil Moisture 8", PERCENTAGE, + "mdi:water-percent", 0), + TYPE_SOILMOISTURE8: ("Ecowitt Soil Moisture 8", PERCENTAGE, TYPE_SENSOR, DEVICE_CLASS_HUMIDITY, - "mdi:water-percent", 0, STATE_CLASS_MEASUREMENT), - TYPE_PM25_CH1: ("PM2.5 1", CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, - TYPE_SENSOR, None, "mdi:eye", 0, STATE_CLASS_MEASUREMENT), - TYPE_PM25_CH2: ("PM2.5 2", CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, - TYPE_SENSOR, None, "mdi:eye", 0, STATE_CLASS_MEASUREMENT), - TYPE_PM25_CH3: ("PM2.5 3", CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, - TYPE_SENSOR, None, "mdi:eye", 0, STATE_CLASS_MEASUREMENT), - TYPE_PM25_CH4: ("PM2.5 4", CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, - TYPE_SENSOR, None, "mdi:eye", 0, STATE_CLASS_MEASUREMENT), - TYPE_PM25_AVG_24H_CH1: ("PM2.5 24h average 1", + "mdi:water-percent", 0), + TYPE_PM25_CH1: ("Ecowitt PM2.5 1", CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, + TYPE_SENSOR, None, "mdi:eye", 0), + TYPE_PM25_CH2: ("Ecowitt PM2.5 2", CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, + TYPE_SENSOR, None, "mdi:eye", 0), + TYPE_PM25_CH3: ("Ecowitt PM2.5 3", CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, + TYPE_SENSOR, None, "mdi:eye", 0), + TYPE_PM25_CH4: ("Ecowitt PM2.5 4", CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, + TYPE_SENSOR, None, "mdi:eye", 0), + TYPE_PM25_AVG_24H_CH1: ("Ecowitt PM2.5 24h average 1", CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, - TYPE_SENSOR, None, "mdi:eye", 0, - STATE_CLASS_MEASUREMENT), - TYPE_PM25_AVG_24H_CH2: ("PM2.5 24h average 2", + TYPE_SENSOR, None, "mdi:eye", 0), + TYPE_PM25_AVG_24H_CH2: ("Ecowitt PM2.5 24h average 2", CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, - TYPE_SENSOR, None, "mdi:eye", 0, - STATE_CLASS_MEASUREMENT), - TYPE_PM25_AVG_24H_CH3: ("PM2.5 24h average 3", + TYPE_SENSOR, None, "mdi:eye", 0), + TYPE_PM25_AVG_24H_CH3: ("Ecowitt PM2.5 24h average 3", CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, - TYPE_SENSOR, None, "mdi:eye", 0, - STATE_CLASS_MEASUREMENT), - TYPE_PM25_AVG_24H_CH4: ("PM2.5 24h average 4", + TYPE_SENSOR, None, "mdi:eye", 0), + TYPE_PM25_AVG_24H_CH4: ("Ecowitt PM2.5 24h average 4", CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, - TYPE_SENSOR, None, "mdi:eye", 0, - STATE_CLASS_MEASUREMENT), - TYPE_LIGHTNING_TIME: ("Last Lightning strike", "", - TYPE_SENSOR, DEVICE_CLASS_TIMESTAMP, "mdi:clock", 0, - STATE_CLASS_MEASUREMENT), - TYPE_LIGHTNING_NUM: ("Lightning strikes", f"strikes/{TIME_DAYS}", - TYPE_SENSOR, None, "mdi:weather-lightning", 0, - STATE_CLASS_TOTAL_INCREASING), - TYPE_LIGHTNING_KM: ("Lightning strike distance", LENGTH_KILOMETERS, - TYPE_SENSOR, None, "mdi:ruler", S_METRIC, - STATE_CLASS_MEASUREMENT), - TYPE_LIGHTNING_MI: ("Lightning strike distance", LENGTH_MILES, - TYPE_SENSOR, None, "mdi:ruler", S_IMPERIAL, - STATE_CLASS_MEASUREMENT), - TYPE_LEAK_CH1: ("Leak Detection 1", LEAK_DETECTED, TYPE_BINARY_SENSOR, - DEVICE_CLASS_MOISTURE, "mdi:leak", 0, None), - TYPE_LEAK_CH2: ("Leak Detection 2", LEAK_DETECTED, TYPE_BINARY_SENSOR, - DEVICE_CLASS_MOISTURE, "mdi:leak", 0, None), - TYPE_LEAK_CH3: ("Leak Detection 3", LEAK_DETECTED, TYPE_BINARY_SENSOR, - DEVICE_CLASS_MOISTURE, "mdi:leak", 0, None), - TYPE_LEAK_CH4: ("Leak Detection 4", LEAK_DETECTED, TYPE_BINARY_SENSOR, - DEVICE_CLASS_MOISTURE, "mdi:leak", 0, None), - TYPE_CO2_PM25: ("WH45 PM2.5", CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, - TYPE_SENSOR, None, "mdi:eye", 0, STATE_CLASS_MEASUREMENT), - TYPE_CO2_PM25_AVG_24H: ("WH45 PM2.5 24h average", + TYPE_SENSOR, None, "mdi:eye", 0), + TYPE_LIGHTNING_TIME: ("Ecowitt Last Lightning strike", "", + TYPE_SENSOR, DEVICE_CLASS_TIMESTAMP, "mdi:clock", 0), + TYPE_LIGHTNING_NUM: ("Ecowitt Lightning strikes", f"strikes/{TIME_DAYS}", + TYPE_SENSOR, None, "mdi:weather-lightning", 0), + TYPE_LIGHTNING_KM: ("Ecowitt Lightning strike distance", LENGTH_KILOMETERS, + TYPE_SENSOR, None, "mdi:ruler", S_METRIC), + TYPE_LIGHTNING_MI: ("Ecowitt Lightning strike distance", LENGTH_MILES, + TYPE_SENSOR, None, "mdi:ruler", S_IMPERIAL), + TYPE_LEAK_CH1: ("Ecowitt Leak Detection 1", LEAK_DETECTED, TYPE_BINARY_SENSOR, + DEVICE_CLASS_MOISTURE, "mdi:leak", 0), + TYPE_LEAK_CH2: ("Ecowitt Leak Detection 2", LEAK_DETECTED, TYPE_BINARY_SENSOR, + DEVICE_CLASS_MOISTURE, "mdi:leak", 0), + TYPE_LEAK_CH3: ("Ecowitt Leak Detection 3", LEAK_DETECTED, TYPE_BINARY_SENSOR, + DEVICE_CLASS_MOISTURE, "mdi:leak", 0), + TYPE_LEAK_CH4: ("Ecowitt Leak Detection 4", LEAK_DETECTED, TYPE_BINARY_SENSOR, + DEVICE_CLASS_MOISTURE, "mdi:leak", 0), + TYPE_CO2_PM25: ("Ecowitt WH45 PM2.5", CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, + TYPE_SENSOR, None, "mdi:eye", 0), + TYPE_CO2_PM25_AVG_24H: ("Ecowitt WH45 PM2.5 24h average", CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, - TYPE_SENSOR, None, "mdi:eye", 0, - STATE_CLASS_MEASUREMENT), - TYPE_CO2_PM10: ("WH45 PM10", CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, - TYPE_SENSOR, None, "mdi:eye", 0, STATE_CLASS_MEASUREMENT), - TYPE_CO2_PM10_AVG_24H: ("WH45 PM10 24h average", + TYPE_SENSOR, None, "mdi:eye", 0), + TYPE_CO2_PM10: ("Ecowitt WH45 PM10", CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, + TYPE_SENSOR, None, "mdi:eye", 0), + TYPE_CO2_PM10_AVG_24H: ("Ecowitt WH45 PM10 24h average", CONCENTRATION_MICROGRAMS_PER_CUBIC_METER, - TYPE_SENSOR, None, "mdi:eye", 0, - STATE_CLASS_MEASUREMENT), - TYPE_CO2_HUMIDITY: ("WH45 Humidity", PERCENTAGE, + TYPE_SENSOR, None, "mdi:eye", 0), + TYPE_CO2_HUMIDITY: ("Ecowitt WH45 Humidity", PERCENTAGE, TYPE_SENSOR, DEVICE_CLASS_HUMIDITY, - "mdi:water-percent", 0, STATE_CLASS_MEASUREMENT), - TYPE_CO2_TEMPC: ("WH45 Temperature", TEMP_CELSIUS, - TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, - "mdi:thermometer", 0, STATE_CLASS_MEASUREMENT), - TYPE_CO2_CO2: ("WH45 CO2", CONCENTRATION_PARTS_PER_MILLION, - TYPE_SENSOR, None, "mdi:molecule-co2", 0, - STATE_CLASS_MEASUREMENT), - TYPE_CO2_CO2_AVG_24H: ("WH45 CO2 24h average", CONCENTRATION_PARTS_PER_MILLION, - TYPE_SENSOR, None, "mdi:molecule-co2", 0, - STATE_CLASS_MEASUREMENT), - TYPE_CO2_BATT: ("WH45 Battery", PERCENTAGE, TYPE_SENSOR, - DEVICE_CLASS_BATTERY, "mdi:battery", 0, - STATE_CLASS_MEASUREMENT), - TYPE_WH25BATT: ("WH25 Battery", "BATT", TYPE_BINARY_SENSOR, - DEVICE_CLASS_BATTERY, "mdi:battery", 0, None), - TYPE_WH26BATT: ("WH26 Battery", "BATT", TYPE_BINARY_SENSOR, - DEVICE_CLASS_BATTERY, "mdi:battery", 0, None), - TYPE_WH40BATT: ("WH40 Battery", ELECTRIC_POTENTIAL_VOLT, TYPE_SENSOR, - DEVICE_CLASS_VOLTAGE, "mdi:battery", 0, - STATE_CLASS_MEASUREMENT), - TYPE_WH57BATT: ("WH57 Battery", PERCENTAGE, TYPE_SENSOR, - DEVICE_CLASS_BATTERY, "mdi:battery", 0, - STATE_CLASS_MEASUREMENT), - TYPE_WH65BATT: ("WH65 Battery", "BATT", TYPE_BINARY_SENSOR, - DEVICE_CLASS_BATTERY, "mdi:battery", 0, None), - TYPE_WH68BATT: ("WH68 Battery", ELECTRIC_POTENTIAL_VOLT, TYPE_SENSOR, - DEVICE_CLASS_BATTERY, "mdi:battery", 0, - STATE_CLASS_MEASUREMENT), - TYPE_WH80BATT: ("WH80 Battery", ELECTRIC_POTENTIAL_VOLT, TYPE_SENSOR, - DEVICE_CLASS_BATTERY, "mdi:battery", 0, - STATE_CLASS_MEASUREMENT), - TYPE_SOILBATT1: ("Soil Moisture 1 Battery", ELECTRIC_POTENTIAL_VOLT, - TYPE_SENSOR, DEVICE_CLASS_VOLTAGE, "mdi:battery", 0, - STATE_CLASS_MEASUREMENT), - TYPE_SOILBATT2: ("Soil Moisture 2 Battery", ELECTRIC_POTENTIAL_VOLT, - TYPE_SENSOR, DEVICE_CLASS_VOLTAGE, "mdi:battery", 0, - STATE_CLASS_MEASUREMENT), - TYPE_SOILBATT3: ("Soil Moisture 3 Battery", ELECTRIC_POTENTIAL_VOLT, - TYPE_SENSOR, DEVICE_CLASS_VOLTAGE, "mdi:battery", 0, - STATE_CLASS_MEASUREMENT), - TYPE_SOILBATT4: ("Soil Moisture 4 Battery", ELECTRIC_POTENTIAL_VOLT, - TYPE_SENSOR, DEVICE_CLASS_VOLTAGE, "mdi:battery", 0, - STATE_CLASS_MEASUREMENT), - TYPE_SOILBATT5: ("Soil Moisture 5 Battery", ELECTRIC_POTENTIAL_VOLT, - TYPE_SENSOR, DEVICE_CLASS_VOLTAGE, "mdi:battery", 0, - STATE_CLASS_MEASUREMENT), - TYPE_SOILBATT6: ("Soil Moisture 6 Battery", ELECTRIC_POTENTIAL_VOLT, - TYPE_SENSOR, DEVICE_CLASS_VOLTAGE, "mdi:battery", 0, - STATE_CLASS_MEASUREMENT), - TYPE_SOILBATT7: ("Soil Moisture 7 Battery", ELECTRIC_POTENTIAL_VOLT, - TYPE_SENSOR, DEVICE_CLASS_VOLTAGE, "mdi:battery", 0, - STATE_CLASS_MEASUREMENT), - TYPE_SOILBATT8: ("Soil Moisture 8 Battery", ELECTRIC_POTENTIAL_VOLT, - TYPE_SENSOR, DEVICE_CLASS_VOLTAGE, "mdi:battery", 0, - STATE_CLASS_MEASUREMENT), - TYPE_BATTERY1: ("Battery 1", "BATT", TYPE_BINARY_SENSOR, - DEVICE_CLASS_BATTERY, "mdi:battery", 0, None), - TYPE_BATTERY2: ("Battery 2", "BATT", TYPE_BINARY_SENSOR, - DEVICE_CLASS_BATTERY, "mdi:battery", 0, None), - TYPE_BATTERY3: ("Battery 3", "BATT", TYPE_BINARY_SENSOR, - DEVICE_CLASS_BATTERY, "mdi:battery", 0, None), - TYPE_BATTERY4: ("Battery 4", "BATT", TYPE_BINARY_SENSOR, - DEVICE_CLASS_BATTERY, "mdi:battery", 0, None), - TYPE_BATTERY5: ("Battery 5", "BATT", TYPE_BINARY_SENSOR, - DEVICE_CLASS_BATTERY, "mdi:battery", 0, None), - TYPE_BATTERY6: ("Battery 6", "BATT", TYPE_BINARY_SENSOR, - DEVICE_CLASS_BATTERY, "mdi:battery", 0, None), - TYPE_BATTERY7: ("Battery 7", "BATT", TYPE_BINARY_SENSOR, - DEVICE_CLASS_BATTERY, "mdi:battery", 0, None), - TYPE_BATTERY8: ("Battery 8", "BATT", TYPE_BINARY_SENSOR, - DEVICE_CLASS_BATTERY, "mdi:battery", 0, None), - TYPE_PM25BATT1: ("PM2.5 1 Battery", PERCENTAGE, TYPE_SENSOR, - DEVICE_CLASS_BATTERY, "mdi:battery", 0, - STATE_CLASS_MEASUREMENT), - TYPE_PM25BATT2: ("PM2.5 2 Battery", PERCENTAGE, TYPE_SENSOR, - DEVICE_CLASS_BATTERY, "mdi:battery", 0, - STATE_CLASS_MEASUREMENT), - TYPE_PM25BATT3: ("PM2.5 3 Battery", PERCENTAGE, TYPE_SENSOR, - DEVICE_CLASS_BATTERY, "mdi:battery", 0, - STATE_CLASS_MEASUREMENT), - TYPE_PM25BATT4: ("PM2.5 4 Battery", PERCENTAGE, TYPE_SENSOR, - DEVICE_CLASS_BATTERY, "mdi:battery", 0, - STATE_CLASS_MEASUREMENT), - TYPE_PM25BATT5: ("PM2.5 5 Battery", PERCENTAGE, TYPE_SENSOR, - DEVICE_CLASS_BATTERY, "mdi:battery", 0, - STATE_CLASS_MEASUREMENT), - TYPE_PM25BATT6: ("PM2.5 6 Battery", PERCENTAGE, TYPE_SENSOR, - DEVICE_CLASS_BATTERY, "mdi:battery", 0, - STATE_CLASS_MEASUREMENT), - TYPE_PM25BATT7: ("PM2.5 7 Battery", PERCENTAGE, TYPE_SENSOR, - DEVICE_CLASS_BATTERY, "mdi:battery", 0, - STATE_CLASS_MEASUREMENT), - TYPE_PM25BATT8: ("PM2.5 8 Battery", PERCENTAGE, TYPE_SENSOR, - DEVICE_CLASS_BATTERY, "mdi:battery", 0, - STATE_CLASS_MEASUREMENT), - TYPE_LEAKBATT1: ("Leak 1 Battery", PERCENTAGE, TYPE_SENSOR, - DEVICE_CLASS_BATTERY, "mdi:battery", 0, - STATE_CLASS_MEASUREMENT), - TYPE_LEAKBATT2: ("Leak 2 Battery", PERCENTAGE, TYPE_SENSOR, - DEVICE_CLASS_BATTERY, "mdi:battery", 0, - STATE_CLASS_MEASUREMENT), - TYPE_LEAKBATT3: ("Leak 3 Battery", PERCENTAGE, TYPE_SENSOR, - DEVICE_CLASS_BATTERY, "mdi:battery", 0, - STATE_CLASS_MEASUREMENT), - TYPE_LEAKBATT4: ("Leak 4 Battery", PERCENTAGE, TYPE_SENSOR, - DEVICE_CLASS_BATTERY, "mdi:battery", 0, - STATE_CLASS_MEASUREMENT), - TYPE_LEAKBATT5: ("Leak 5 Battery", PERCENTAGE, TYPE_SENSOR, - DEVICE_CLASS_BATTERY, "mdi:battery", 0, - STATE_CLASS_MEASUREMENT), - TYPE_LEAKBATT6: ("Leak 6 Battery", PERCENTAGE, TYPE_SENSOR, - DEVICE_CLASS_BATTERY, "mdi:battery", 0, - STATE_CLASS_MEASUREMENT), - TYPE_LEAKBATT7: ("Leak 7 Battery", PERCENTAGE, TYPE_SENSOR, - DEVICE_CLASS_BATTERY, "mdi:battery", 0, - STATE_CLASS_MEASUREMENT), - TYPE_LEAKBATT8: ("Leak 8 Battery", PERCENTAGE, TYPE_SENSOR, - DEVICE_CLASS_BATTERY, "mdi:battery", 0, - STATE_CLASS_MEASUREMENT), - TYPE_WN34TEMP1C: ("Soil Temperature 1", TEMP_CELSIUS, - TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, - "mdi:thermometer", 0, STATE_CLASS_MEASUREMENT), - TYPE_WN34TEMP2C: ("Soil Temperature 2", TEMP_CELSIUS, - TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, - "mdi:thermometer", 0, STATE_CLASS_MEASUREMENT), - TYPE_WN34TEMP3C: ("Soil Temperature 3", TEMP_CELSIUS, - TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, - "mdi:thermometer", 0, STATE_CLASS_MEASUREMENT), - TYPE_WN34TEMP4C: ("Soil Temperature 4", TEMP_CELSIUS, - TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, - "mdi:thermometer", 0, STATE_CLASS_MEASUREMENT), - TYPE_WN34TEMP5C: ("Soil Temperature 5", TEMP_CELSIUS, - TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, - "mdi:thermometer", 0, STATE_CLASS_MEASUREMENT), - TYPE_WN34TEMP6C: ("Soil Temperature 6", TEMP_CELSIUS, - TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, - "mdi:thermometer", 0, STATE_CLASS_MEASUREMENT), - TYPE_WN34TEMP7C: ("Soil Temperature 7", TEMP_CELSIUS, - TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, - "mdi:thermometer", 0, STATE_CLASS_MEASUREMENT), - TYPE_WN34TEMP8C: ("Soil Temperature 8", TEMP_CELSIUS, - TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, - "mdi:thermometer", 0, STATE_CLASS_MEASUREMENT), - TYPE_WN34BATT1: ("Soil Temperature 1 Battery", ELECTRIC_POTENTIAL_VOLT, - TYPE_SENSOR, DEVICE_CLASS_VOLTAGE, - "mdi:battery", 0, STATE_CLASS_MEASUREMENT), - TYPE_WN34BATT2: ("Soil Temperature 2 Battery", ELECTRIC_POTENTIAL_VOLT, - TYPE_SENSOR, DEVICE_CLASS_VOLTAGE, - "mdi:battery", 0, STATE_CLASS_MEASUREMENT), - TYPE_WN34BATT3: ("Soil Temperature 3 Battery", ELECTRIC_POTENTIAL_VOLT, - TYPE_SENSOR, DEVICE_CLASS_VOLTAGE, - "mdi:battery", 0, STATE_CLASS_MEASUREMENT), - TYPE_WN34BATT4: ("Soil Temperature 4 Battery", ELECTRIC_POTENTIAL_VOLT, - TYPE_SENSOR, DEVICE_CLASS_VOLTAGE, - "mdi:battery", 0, STATE_CLASS_MEASUREMENT), - TYPE_WN34BATT5: ("Soil Temperature 5 Battery", ELECTRIC_POTENTIAL_VOLT, - TYPE_SENSOR, DEVICE_CLASS_VOLTAGE, - "mdi:battery", 0, STATE_CLASS_MEASUREMENT), - TYPE_WN34BATT6: ("Soil Temperature 6 Battery", ELECTRIC_POTENTIAL_VOLT, - TYPE_SENSOR, DEVICE_CLASS_VOLTAGE, - "mdi:battery", 0, STATE_CLASS_MEASUREMENT), - TYPE_WN34BATT7: ("Soil Temperature 7 Battery", ELECTRIC_POTENTIAL_VOLT, - TYPE_SENSOR, DEVICE_CLASS_VOLTAGE, - "mdi:battery", 0, STATE_CLASS_MEASUREMENT), - TYPE_WN34BATT8: ("Soil Temperature 8 Battery", ELECTRIC_POTENTIAL_VOLT, - TYPE_SENSOR, DEVICE_CLASS_VOLTAGE, - "mdi:battery", 0, STATE_CLASS_MEASUREMENT), + "mdi:water-percent", 0), + TYPE_CO2_TEMPC: ("Ecowitt WH45 Temperature", TEMP_CELSIUS, + TYPE_SENSOR, DEVICE_CLASS_TEMPERATURE, "mdi:thermometer", 0), + TYPE_CO2_CO2: ("Ecowitt WH45 CO2", CONCENTRATION_PARTS_PER_MILLION, + TYPE_SENSOR, None, "mdi:molecule-co2", 0), + TYPE_CO2_CO2_AVG_24H: ("Ecowitt WH45 CO2 24h average", CONCENTRATION_PARTS_PER_MILLION, + TYPE_SENSOR, None, "mdi:molecule-co2", 0), + TYPE_CO2_BATT: ("Ecowitt WH45 Battery", PERCENTAGE, TYPE_SENSOR, + DEVICE_CLASS_BATTERY, "mdi:battery", 0), + TYPE_WH25BATT: ("Ecowitt WH25 Battery", "BATT", TYPE_BINARY_SENSOR, + DEVICE_CLASS_BATTERY, "mdi:battery", 0), + TYPE_WH26BATT: ("Ecowitt WH26 Battery", "BATT", TYPE_BINARY_SENSOR, + DEVICE_CLASS_BATTERY, "mdi:battery", 0), + TYPE_WH40BATT: ("Ecowitt WH40 Battery", ELECTRIC_POTENTIAL_VOLT, TYPE_SENSOR, + DEVICE_CLASS_VOLTAGE, "mdi:battery", 0), + TYPE_WH57BATT: ("Ecowitt WH57 Battery", PERCENTAGE, TYPE_SENSOR, + DEVICE_CLASS_BATTERY, "mdi:battery", 0), + TYPE_WH65BATT: ("Ecowitt WH65 Battery", "BATT", TYPE_BINARY_SENSOR, + DEVICE_CLASS_BATTERY, "mdi:battery", 0), + TYPE_WH68BATT: ("Ecowitt WH68 Battery", ELECTRIC_POTENTIAL_VOLT, TYPE_SENSOR, + DEVICE_CLASS_BATTERY, "mdi:battery", 0), + TYPE_WH80BATT: ("Ecowitt WH80 Battery", ELECTRIC_POTENTIAL_VOLT, TYPE_SENSOR, + DEVICE_CLASS_BATTERY, "mdi:battery", 0), + TYPE_SOILBATT1: ("Ecowitt Soil Moisture 1 Battery", ELECTRIC_POTENTIAL_VOLT, TYPE_SENSOR, + DEVICE_CLASS_VOLTAGE, "mdi:battery", 0), + TYPE_SOILBATT2: ("Ecowitt Soil Moisture 2 Battery", ELECTRIC_POTENTIAL_VOLT, TYPE_SENSOR, + DEVICE_CLASS_VOLTAGE, "mdi:battery", 0), + TYPE_SOILBATT3: ("Ecowitt Soil Moisture 3 Battery", ELECTRIC_POTENTIAL_VOLT, TYPE_SENSOR, + DEVICE_CLASS_VOLTAGE, "mdi:battery", 0), + TYPE_SOILBATT4: ("Ecowitt Soil Moisture 4 Battery", ELECTRIC_POTENTIAL_VOLT, TYPE_SENSOR, + DEVICE_CLASS_VOLTAGE, "mdi:battery", 0), + TYPE_SOILBATT5: ("Ecowitt Soil Moisture 5 Battery", ELECTRIC_POTENTIAL_VOLT, TYPE_SENSOR, + DEVICE_CLASS_VOLTAGE, "mdi:battery", 0), + TYPE_SOILBATT6: ("Ecowitt Soil Moisture 6 Battery", ELECTRIC_POTENTIAL_VOLT, TYPE_SENSOR, + DEVICE_CLASS_VOLTAGE, "mdi:battery", 0), + TYPE_SOILBATT7: ("Ecowitt Soil Moisture 7 Battery", ELECTRIC_POTENTIAL_VOLT, TYPE_SENSOR, + DEVICE_CLASS_VOLTAGE, "mdi:battery", 0), + TYPE_SOILBATT8: ("Ecowitt Soil Moisture 8 Battery", ELECTRIC_POTENTIAL_VOLT, TYPE_SENSOR, + DEVICE_CLASS_VOLTAGE, "mdi:battery", 0), + TYPE_BATTERY1: ("Ecowitt Battery 1", "BATT", TYPE_BINARY_SENSOR, + DEVICE_CLASS_BATTERY, "mdi:battery", 0), + TYPE_BATTERY2: ("Ecowitt Battery 2", "BATT", TYPE_BINARY_SENSOR, + DEVICE_CLASS_BATTERY, "mdi:battery", 0), + TYPE_BATTERY3: ("Ecowitt Battery 3", "BATT", TYPE_BINARY_SENSOR, + DEVICE_CLASS_BATTERY, "mdi:battery", 0), + TYPE_BATTERY4: ("Ecowitt Battery 4", "BATT", TYPE_BINARY_SENSOR, + DEVICE_CLASS_BATTERY, "mdi:battery", 0), + TYPE_BATTERY5: ("Ecowitt Battery 5", "BATT", TYPE_BINARY_SENSOR, + DEVICE_CLASS_BATTERY, "mdi:battery", 0), + TYPE_BATTERY6: ("Ecowitt Battery 6", "BATT", TYPE_BINARY_SENSOR, + DEVICE_CLASS_BATTERY, "mdi:battery", 0), + TYPE_BATTERY7: ("Ecowitt Battery 7", "BATT", TYPE_BINARY_SENSOR, + DEVICE_CLASS_BATTERY, "mdi:battery", 0), + TYPE_BATTERY8: ("Ecowitt Battery 8", "BATT", TYPE_BINARY_SENSOR, + DEVICE_CLASS_BATTERY, "mdi:battery", 0), + TYPE_PM25BATT1: ("Ecowitt PM2.5 1 Battery", PERCENTAGE, TYPE_SENSOR, + DEVICE_CLASS_BATTERY, "mdi:battery", 0), + TYPE_PM25BATT2: ("Ecowitt PM2.5 2 Battery", PERCENTAGE, TYPE_SENSOR, + DEVICE_CLASS_BATTERY, "mdi:battery", 0), + TYPE_PM25BATT3: ("Ecowitt PM2.5 3 Battery", PERCENTAGE, TYPE_SENSOR, + DEVICE_CLASS_BATTERY, "mdi:battery", 0), + TYPE_PM25BATT4: ("Ecowitt PM2.5 4 Battery", PERCENTAGE, TYPE_SENSOR, + DEVICE_CLASS_BATTERY, "mdi:battery", 0), + TYPE_PM25BATT5: ("Ecowitt PM2.5 5 Battery", PERCENTAGE, TYPE_SENSOR, + DEVICE_CLASS_BATTERY, "mdi:battery", 0), + TYPE_PM25BATT6: ("Ecowitt PM2.5 6 Battery", PERCENTAGE, TYPE_SENSOR, + DEVICE_CLASS_BATTERY, "mdi:battery", 0), + TYPE_PM25BATT7: ("Ecowitt PM2.5 7 Battery", PERCENTAGE, TYPE_SENSOR, + DEVICE_CLASS_BATTERY, "mdi:battery", 0), + TYPE_PM25BATT8: ("Ecowitt PM2.5 8 Battery", PERCENTAGE, TYPE_SENSOR, + DEVICE_CLASS_BATTERY, "mdi:battery", 0), + TYPE_LEAKBATT1: ("Ecowitt Leak 1 Battery", PERCENTAGE, TYPE_SENSOR, + DEVICE_CLASS_BATTERY, "mdi:battery", 0), + TYPE_LEAKBATT2: ("Ecowitt Leak 2 Battery", PERCENTAGE, TYPE_SENSOR, + DEVICE_CLASS_BATTERY, "mdi:battery", 0), + TYPE_LEAKBATT3: ("Ecowitt Leak 3 Battery", PERCENTAGE, TYPE_SENSOR, + DEVICE_CLASS_BATTERY, "mdi:battery", 0), + TYPE_LEAKBATT4: ("Ecowitt Leak 4 Battery", PERCENTAGE, TYPE_SENSOR, + DEVICE_CLASS_BATTERY, "mdi:battery", 0), + TYPE_LEAKBATT5: ("Ecowitt Leak 5 Battery", PERCENTAGE, TYPE_SENSOR, + DEVICE_CLASS_BATTERY, "mdi:battery", 0), + TYPE_LEAKBATT6: ("Ecowitt Leak 6 Battery", PERCENTAGE, TYPE_SENSOR, + DEVICE_CLASS_BATTERY, "mdi:battery", 0), + TYPE_LEAKBATT7: ("Ecowitt Leak 7 Battery", PERCENTAGE, TYPE_SENSOR, + DEVICE_CLASS_BATTERY, "mdi:battery", 0), + TYPE_LEAKBATT8: ("Ecowitt Leak 8 Battery", PERCENTAGE, TYPE_SENSOR, + DEVICE_CLASS_BATTERY, "mdi:battery", 0), } IGNORED_SENSORS = [