def pressure(self): """Return the pressure.""" if self.hass.config.units.is_metric and self._pressure: return round( pressure_convert(self._pressure, PRESSURE_INHG, PRESSURE_HPA), 4) return self._pressure
def pressure(self): """Return the pressure.""" pressure = self._get_cc_value(self.coordinator.data[CURRENT], CC_ATTR_PRESSURE) if self.hass.config.units.is_metric and pressure: return pressure_convert(pressure, PRESSURE_INHG, PRESSURE_HPA) return pressure
def pressure(self): """Return the pressure.""" pressure = self._weather_coordinator.data[ATTR_API_PRESSURE] # OpenWeatherMap returns pressure in hPA, so convert to # inHg if we aren't using metric. if not self.hass.config.units.is_metric and pressure: return pressure_convert(pressure, PRESSURE_HPA, PRESSURE_INHG) return pressure
def pressure(self): """Return the pressure.""" try: pressure = self.get_forecast(0, "pressure") if not self.hass.config.units.is_metric: pressure = pressure_convert(pressure, PRESSURE_HPA, PRESSURE_INHG) return round(pressure, 2) return round(pressure) except ValueError: return None
ATTR_METRIC_CONVERSION: lambda val: temp_convert(val, TEMP_FAHRENHEIT, TEMP_CELSIUS), ATTR_IS_METRIC_CHECK: True, }, { ATTR_FIELD: CC_ATTR_PRESSURE_SURFACE_LEVEL, ATTR_NAME: "Pressure (Surface Level)", CONF_UNIT_SYSTEM_IMPERIAL: PRESSURE_INHG, CONF_UNIT_SYSTEM_METRIC: PRESSURE_HPA, ATTR_METRIC_CONVERSION: lambda val: pressure_convert(val, PRESSURE_INHG, PRESSURE_HPA), ATTR_IS_METRIC_CHECK: True, }, { ATTR_FIELD: CC_ATTR_SOLAR_GHI, ATTR_NAME: "Global Horizontal Irradiance", CONF_UNIT_SYSTEM_IMPERIAL: IRRADIATION_BTUS_PER_HOUR_SQUARE_FOOT, CONF_UNIT_SYSTEM_METRIC: IRRADIATION_WATTS_PER_SQUARE_METER, ATTR_METRIC_CONVERSION: 3.15459, ATTR_IS_METRIC_CHECK: True, }, { ATTR_FIELD: CC_ATTR_CLOUD_BASE, ATTR_NAME:
native_unit_of_measurement=TEMP_FAHRENHEIT, device_class=SensorDeviceClass.TEMPERATURE, ), TomorrowioSensorEntityDescription( key=TMRW_ATTR_DEW_POINT, name="Dew Point", native_unit_of_measurement=TEMP_FAHRENHEIT, device_class=SensorDeviceClass.TEMPERATURE, ), # Data comes in as inHg TomorrowioSensorEntityDescription( key=TMRW_ATTR_PRESSURE_SURFACE_LEVEL, name="Pressure (Surface Level)", native_unit_of_measurement=PRESSURE_HPA, multiplication_factor=lambda val: pressure_convert( val, PRESSURE_INHG, PRESSURE_HPA ), device_class=SensorDeviceClass.PRESSURE, ), # Data comes in as BTUs/(hr * ft^2) # https://www.theunitconverter.com/watt-square-meter-to-btu-hour-square-foot-conversion/ TomorrowioSensorEntityDescription( key=TMRW_ATTR_SOLAR_GHI, name="Global Horizontal Irradiance", unit_imperial=IRRADIATION_BTUS_PER_HOUR_SQUARE_FOOT, unit_metric=IRRADIATION_WATTS_PER_SQUARE_METER, metric_conversion=3.15459, ), # Data comes in as miles TomorrowioSensorEntityDescription( key=TMRW_ATTR_CLOUD_BASE,
), TomorrowioSensorEntityDescription( key=TMRW_ATTR_DEW_POINT, name="Dew Point", unit_imperial=TEMP_FAHRENHEIT, unit_metric=TEMP_CELSIUS, metric_conversion=lambda val: temp_convert(val, TEMP_FAHRENHEIT, TEMP_CELSIUS), is_metric_check=True, device_class=SensorDeviceClass.TEMPERATURE, ), TomorrowioSensorEntityDescription( key=TMRW_ATTR_PRESSURE_SURFACE_LEVEL, name="Pressure (Surface Level)", unit_metric=PRESSURE_HPA, metric_conversion=lambda val: pressure_convert(val, PRESSURE_INHG, PRESSURE_HPA), is_metric_check=True, device_class=SensorDeviceClass.PRESSURE, ), TomorrowioSensorEntityDescription( key=TMRW_ATTR_SOLAR_GHI, name="Global Horizontal Irradiance", unit_imperial=IRRADIATION_BTUS_PER_HOUR_SQUARE_FOOT, unit_metric=IRRADIATION_WATTS_PER_SQUARE_METER, metric_conversion=3.15459, is_metric_check=True, ), TomorrowioSensorEntityDescription( key=TMRW_ATTR_CLOUD_BASE, name="Cloud Base", unit_imperial=LENGTH_MILES,