diff --git a/changelog.txt b/changelog.txt index a42206ebd..a6b2ad04a 100644 --- a/changelog.txt +++ b/changelog.txt @@ -1,3 +1,11 @@ +Version 0.1.78 (2024-02-04) +- Add support for HmIP-SWDM-2 @ranasenR +- Add support for HmIP-BROLL-2 @waldling +- Add support for HmIPW-WRC2 @derco0n +- Add support for Nurtic-Vibe @Nurtic-Vibe +- Add support for HmIP-PSM-2 @l-mb +- Add warning for missing device support + Version 0.1.77 (2022-01-10) - Add HmIP-WRCR @danielperna84 - Add HmIP-SMI55-2 @hzpz diff --git a/pyhomematic/_hm.py b/pyhomematic/_hm.py index eac384844..80d979090 100644 --- a/pyhomematic/_hm.py +++ b/pyhomematic/_hm.py @@ -188,12 +188,12 @@ def createDeviceObjects(self, interface_id): if dev['TYPE'] in devicetypes.SUPPORTED: deviceObject = devicetypes.SUPPORTED[dev['TYPE']]( dev, self._proxies[interface_id], self.resolveparamsets) - LOG.debug("RPCFunctions.createDeviceObjects: created %s as SUPPORTED device for %s" % ( + LOG.debug("RPCFunctions.createDeviceObjects: created %s as SUPPORTED device for %s" % ( dev['ADDRESS'], dev['TYPE'])) else: deviceObject = devicetypes.UNSUPPORTED( dev, self._proxies[interface_id], self.resolveparamsets) - LOG.debug("RPCFunctions.createDeviceObjects: created %s as UNSUPPORTED device for %s" % ( + LOG.warning("RPCFunctions.createDeviceObjects: Created %s as UNSUPPORTED device for %s. Please switch to https://github.com/danielperna84/custom_homematic to use this device in Home Assistant." % ( dev['ADDRESS'], dev['TYPE'])) LOG.debug( "RPCFunctions.createDeviceObjects: adding to self.devices_all") diff --git a/pyhomematic/devicetypes/actors.py b/pyhomematic/devicetypes/actors.py index b09310ff8..da9a1ef9d 100644 --- a/pyhomematic/devicetypes/actors.py +++ b/pyhomematic/devicetypes/actors.py @@ -787,7 +787,7 @@ def __init__(self, device_description, proxy, resolveparamsets=False): sensorIndex = None if "HmIP-FSM" in self.TYPE or "HmIP-FSM16" in self.TYPE: sensorIndex = 5 - elif "HMIP-PSM" in self.TYPE or "HmIP-PSM" in self.TYPE or "HmIP-USBSM" in self.TYPE or "HmIP-PSM-CH" in self.TYPE: + elif "HMIP-PSM" in self.TYPE or "HmIP-PSM" in self.TYPE or "HmIP-PSM-2" in self.TYPE or "HmIP-USBSM" in self.TYPE or "HmIP-PSM-CH" in self.TYPE: sensorIndex = 6 elif "HmIP-BSM" in self.TYPE: sensorIndex = 7 @@ -1092,6 +1092,7 @@ def ELEMENT(self): "HM-LC-BlX": Blind, "HM-Sec-Win": Blind, "HmIP-BROLL": IPKeyBlind, + "HmIP-BROLL-2": IPKeyBlind, "HmIP-FROLL": IPKeyBlind, "HmIP-BBL": IPKeyBlindTilt, "HmIP-FBL": IPKeyBlindTilt, @@ -1218,6 +1219,7 @@ def ELEMENT(self): "HmIP-USBSM": IPSwitchPowermeter, "HMIP-PSM": IPSwitchPowermeter, "HmIP-PSM": IPSwitchPowermeter, + "HmIP-PSM-2": IPSwitchPowermeter, "HmIP-PSM-CH": IPSwitchPowermeter, "HmIP-PSM-IT": IPSwitchPowermeter, "HmIP-PSM-PE": IPSwitchPowermeter, diff --git a/pyhomematic/devicetypes/misc.py b/pyhomematic/devicetypes/misc.py index 24c8a7973..f55306113 100644 --- a/pyhomematic/devicetypes/misc.py +++ b/pyhomematic/devicetypes/misc.py @@ -69,6 +69,8 @@ class RemoteWired(HMEvent, HelperEventRemote, HelperActionPress): def ELEMENT(self): if "WRC6" in self.TYPE: return [1, 2, 3, 4, 5, 6] + if "WRC2" in self.TYPE: + return [1, 2] class RemoteBatteryIP(Remote, HelperLowBatIP, HelperOperatingVoltageIP): @@ -153,6 +155,7 @@ def ELEMENT(self): "HmIP-BRC2": Remote, "HmIP-WRC6": RemoteBatteryIP, "HmIPW-WRC6": RemoteWired, + "HmIPW-WRC2": RemoteWired, "HmIP-WRCD": RemoteBatteryIP, "HmIP-WRCR": RemoteBatteryIP, "HmIP-KRCA": RemoteBatteryIP, diff --git a/pyhomematic/devicetypes/sensors.py b/pyhomematic/devicetypes/sensors.py index 62580fb16..2a18b6a6f 100644 --- a/pyhomematic/devicetypes/sensors.py +++ b/pyhomematic/devicetypes/sensors.py @@ -1241,6 +1241,7 @@ def __init__(self, device_description, proxy, resolveparamsets=False): "HmIP-SWDO-PL": IPShutterContactSabotage, "HmIP-SWDO-I": IPShutterContactSabotage, "HmIP-SWDM": IPShutterContact, + "HmIP-SWDM-2": IPShutterContact, "HmIP-SWDM-B2": IPShutterContact, "HmIP-SRH": RotaryHandleSensorIP, "HM-Sec-RHS": RotaryHandleSensor, diff --git a/pyhomematic/devicetypes/thermostats.py b/pyhomematic/devicetypes/thermostats.py index 92da326c0..ca1847b8f 100644 --- a/pyhomematic/devicetypes/thermostats.py +++ b/pyhomematic/devicetypes/thermostats.py @@ -398,7 +398,7 @@ def turnoff(self): class IPWThermostatWall(HMThermostat, IPAreaThermostatNoBattery, HelperWired): """ - HmIPW-STH + HmIPW-WTH + HmIPW-STH, HmIPW-STHD, HmIPW-WTH ClimateControl-Wall Thermostat that measures temperature and allows to set a target temperature or use some automatic mode. """ def __init__(self, device_description, proxy, resolveparamsets=False): @@ -485,5 +485,6 @@ def turnoff(self): "HmIP-BWTH24": IPThermostatWall230V, "HmIP-HEATING": IPThermostat, "HmIPW-STH": IPWThermostatWall, + "HmIPW-STHD": IPWThermostatWall, "HmIPW-WTH": IPWThermostatWall, } diff --git a/setup.py b/setup.py index b7d98d19e..fb3dd212d 100644 --- a/setup.py +++ b/setup.py @@ -7,7 +7,7 @@ def readme(): PACKAGE_NAME = 'pyhomematic' HERE = os.path.abspath(os.path.dirname(__file__)) -VERSION = '0.1.77' +VERSION = '0.1.78' PACKAGES = find_packages(exclude=['dist', 'build', 'tests'])