Skip to content

Commit

Permalink
Merge pull request #283 from coreGreenberet/new_devices
Browse files Browse the repository at this point in the history
added devices HmIP-FALMOT-C12, HMIP-WHS2 & HmIP-PMFS
  • Loading branch information
coreGreenberet authored Dec 30, 2019
2 parents 951cddf + 4fff704 commit 2a0636c
Show file tree
Hide file tree
Showing 17 changed files with 1,161 additions and 270 deletions.
29 changes: 22 additions & 7 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,16 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [Unreleased]
### Added
- API
- Groups
- Created new Async/SwitchBaseGroup class for groups which are using on, dimLevel, lowbat and dutycycle
- ShutterProfile
- Devices
- [HMIP-FALMOT-C12] (Floor Heating Actuator – 12x channels, motorised)
- [HMIP-WHS2] (Switch Actuator for heating systems – 2x channels)
- [HMIP-PMFS] (Pluggable Power Supply Monitoring)

## [0.10.14] - 2019-12-22
### Added
- API
Expand Down Expand Up @@ -75,7 +85,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- HMIP-FAL230-C10 (Floor Heating Actuator – 10x channels, 230V)
- HMIP-FAL24-C6 (Floor Heating Actuator – 6x channels, 24V)
- HMIP-FAL24-C10 (Floor Heating Actuator – 10x channels, 24V)
- Async implementation of HmIP-PCBS-BAT (Printed Circuit Board Switch Battery)
- Async implementation of HMIP-PCBS-BAT (Printed Circuit Board Switch Battery)

## [0.10.7] - 2019-04-09
### Added
Expand All @@ -94,7 +104,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Devices
- HMIP-FBL (Blind Actuator - flush-mount)
- HMIP-BRC2 (Remote Control for brand switches – 2 channels)
- HmIP-eTRV-C (Heating-thermostat compact without display)
- HMIP-eTRV-C (Heating-thermostat compact without display)

- API
- AutoNameEnum.from_str does now take a default parameter_
Expand Down Expand Up @@ -147,12 +157,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## [0.10.3] - 2019-01-06
### Added
- Devices
- HmIP-SWO-PL
- HMIP-SWO-PL

## [0.10.2] - 2019-01-06
### Added
- Devices
- HmIP-SMO-A
- HMIP-SMO-A
### Changes
- API
- Small Bugfix in the aio library
Expand All @@ -169,7 +179,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Enums
- HeatingLoadType
- Devices
- HmIP-FAL230-C6
- HMIP-FAL230-C6
- added missing properties

### Changes
Expand Down Expand Up @@ -242,8 +252,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## [0.9.7] - 2018-07-06
### Added
- Devices
- HmIP-SWD
- HmIP-SMI55
- HMIP-SWD
- HMIP-SMI55

## [0.9.6] - 2018-06-12
### Changed
Expand Down Expand Up @@ -287,3 +297,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
[BUG: 220]: https://github.com/coreGreenberet/homematicip-rest-api/issues/220
[BUG: 223]: https://github.com/coreGreenberet/homematicip-rest-api/issues/223
[BUG: 266]: https://github.com/coreGreenberet/homematicip-rest-api/issues/266


[HMIP-FALMOT-C12]: https://github.com/coreGreenberet/homematicip-rest-api/issues/281
[HMIP-WHS2]: https://github.com/coreGreenberet/homematicip-rest-api/issues/280
[HMIP-PMFS]: https://github.com/coreGreenberet/homematicip-rest-api/issues/282
6 changes: 3 additions & 3 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -99,7 +99,7 @@ Homematic IP Devices:
- [X] HMIP-FAL230-C10 (Floor Heating Actuator – 10x channels, 230V)
- [X] HMIP-FAL24-C6 (Floor Heating Actuator – 6x channels, 24V)
- [X] HMIP-FAL24-C10 (Floor Heating Actuator – 10x channels, 24V)
- [ ] HMIP-FALMOT-C12 (Floor Heating Actuator – 12x channels, motorised)
- [X] HMIP-FALMOT-C12 (Floor Heating Actuator – 12x channels, motorised)
- [X] HMIP-FBL (Blind Actuator - flush-mount)
- [X] HMIP-FCI1 (Contact Interface flush-mount – 1x channel)
- [ ] HMIP-FCI6 (Contact Interface flush-mount – 6x channels)
Expand All @@ -126,7 +126,7 @@ Homematic IP Devices:
- [X] HMIP-PCBS-BAT (Switch Circuit Board with Battery - 1x channel)
- [X] HMIP-PDT (Plugable Dimmer)
- [ ] HMIP-PDT-UK (UK Version not tested, but it should work)
- [ ] HMIP-PMFS (Plugable Power Supply Monitoring)
- [X] HMIP-PMFS (Plugable Power Supply Monitoring)
- [X] HMIP-PS (Plugable Switch)
- [X] HMIP-PSM (Plugable Switch Measuring, Type F - Standard for Homematic)
- [ ] HMIP-PSM-CH (Type J not tested, but it should work)
Expand Down Expand Up @@ -161,7 +161,7 @@ Homematic IP Devices:
- [X] HMIP-SWO-PR (Weather Sensor – Pro)
- [X] HMIP-SWSD (Smoke Detector)
- [ ] HMIP-WGC (Garage Door Button)
- [ ] HMIP-WHS2 (Switch Actuator for heating systems – 2x channels)
- [X] HMIP-WHS2 (Switch Actuator for heating systems – 2x channels)
- [X] HMIP-WRC2 (Wall-mount Remote Control - 2x buttons)
- [X] HMIP-WRC6 (Wall-mount Remote Control - 6x buttons)
- [ ] HMIP-WRCD (Wall-mount Remote Control - E-Paper-Status display)
Expand Down
13 changes: 2 additions & 11 deletions homematicip.pyproj
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,8 @@
<InterpreterArguments>
</InterpreterArguments>
<EnableNativeCodeDebugging>False</EnableNativeCodeDebugging>
<CommandLineArguments>--list-events</CommandLineArguments>
<InterpreterId>MSBuild|venv38|$(MSBuildProjectFullPath)</InterpreterId>
<CommandLineArguments>--list-devices</CommandLineArguments>
<InterpreterId>MSBuild|venv|$(MSBuildProjectFullPath)</InterpreterId>
<SuppressConfigureTestFrameworkPrompt>true</SuppressConfigureTestFrameworkPrompt>
<TestFramework>pytest</TestFramework>
<UnitTestPattern>test*.py</UnitTestPattern>
Expand Down Expand Up @@ -159,15 +159,6 @@
<Content Include="requirements_dev.txt" />
</ItemGroup>
<ItemGroup>
<Interpreter Include="venv38\">
<Id>venv38</Id>
<Version>3.8</Version>
<Description>venv38 (Python 3.8 (64-bit))</Description>
<InterpreterPath>Scripts\python.exe</InterpreterPath>
<WindowsInterpreterPath>Scripts\pythonw.exe</WindowsInterpreterPath>
<PathEnvironmentVariable>PYTHONPATH</PathEnvironmentVariable>
<Architecture>X64</Architecture>
</Interpreter>
<Interpreter Include="venv\">
<Id>venv</Id>
<Version>3.7</Version>
Expand Down
64 changes: 34 additions & 30 deletions homematicip/aio/class_maps.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,18 +11,20 @@
DeviceType.ALARM_SIREN_OUTDOOR: AsyncAlarmSirenOutdoor,
DeviceType.BRAND_BLIND: AsyncBrandBlind,
DeviceType.BRAND_DIMMER: AsyncBrandDimmer,
DeviceType.BRAND_SHUTTER: AsyncFullFlushShutter,
DeviceType.BRAND_PUSH_BUTTON: AsyncBrandPushButton,
DeviceType.BRAND_SHUTTER: AsyncFullFlushShutter,
DeviceType.BRAND_SWITCH_MEASURING: AsyncBrandSwitchMeasuring,
DeviceType.BRAND_SWITCH_NOTIFICATION_LIGHT: AsyncBrandSwitchNotificationLight,
DeviceType.BRAND_WALL_MOUNTED_THERMOSTAT: AsyncWallMountedThermostatPro,
DeviceType.FLOOR_TERMINAL_BLOCK_6: AsyncFloorTerminalBlock6,
DeviceType.FLOOR_TERMINAL_BLOCK_10: AsyncFloorTerminalBlock10,
DeviceType.FLOOR_TERMINAL_BLOCK_12: AsyncFloorTerminalBlock12,
DeviceType.FLOOR_TERMINAL_BLOCK_6: AsyncFloorTerminalBlock6,
DeviceType.FULL_FLUSH_BLIND: AsyncFullFlushBlind,
DeviceType.FULL_FLUSH_CONTACT_INTERFACE: AsyncFullFlushContactInterface,
DeviceType.FULL_FLUSH_DIMMER: AsyncFullFlushDimmer,
DeviceType.FULL_FLUSH_SHUTTER: AsyncFullFlushShutter,
DeviceType.FULL_FLUSH_SWITCH_MEASURING: AsyncFullFlushSwitchMeasuring,
DeviceType.HEATING_SWITCH_2: AsyncHeatingSwitch2,
DeviceType.HEATING_THERMOSTAT: AsyncHeatingThermostat,
DeviceType.HEATING_THERMOSTAT_COMPACT: AsyncHeatingThermostatCompact,
DeviceType.KEY_REMOTE_CONTROL_4: AsyncKeyRemoteControl4,
Expand All @@ -37,18 +39,19 @@
DeviceType.PLUGABLE_SWITCH: AsyncPlugableSwitch,
DeviceType.PLUGABLE_SWITCH_MEASURING: AsyncPlugableSwitchMeasuring,
DeviceType.PLUGGABLE_DIMMER: AsyncPluggableDimmer,
DeviceType.PLUGGABLE_MAINS_FAILURE_SURVEILLANCE: AsyncPluggableMainsFailureSurveillance,
DeviceType.PRESENCE_DETECTOR_INDOOR: AsyncPresenceDetectorIndoor,
DeviceType.PRINTED_CIRCUIT_BOARD_SWITCH_BATTERY: AsyncPrintedCircuitBoardSwitchBattery,
DeviceType.PRINTED_CIRCUIT_BOARD_SWITCH_2: AsyncPrintedCircuitBoardSwitch2,
DeviceType.PRINTED_CIRCUIT_BOARD_SWITCH_BATTERY: AsyncPrintedCircuitBoardSwitchBattery,
DeviceType.PUSH_BUTTON: AsyncPushButton,
DeviceType.PUSH_BUTTON_6: AsyncPushButton6,
DeviceType.REMOTE_CONTROL_8: AsyncRemoteControl8,
DeviceType.REMOTE_CONTROL_8_MODULE: AsyncRemoteControl8Module,
DeviceType.ROTARY_HANDLE_SENSOR: AsyncRotaryHandleSensor,
DeviceType.SHUTTER_CONTACT: AsyncShutterContact,
DeviceType.SHUTTER_CONTACT_INTERFACE: AsyncContactInterface,
DeviceType.SHUTTER_CONTACT_INVISIBLE: AsyncShutterContact,
DeviceType.SHUTTER_CONTACT_MAGNETIC: AsyncShutterContactMagnetic,
DeviceType.SHUTTER_CONTACT_INTERFACE: AsyncContactInterface,
DeviceType.SMOKE_DETECTOR: AsyncSmokeDetector,
DeviceType.TEMPERATURE_HUMIDITY_SENSOR: AsyncTemperatureHumiditySensorWithoutDisplay,
DeviceType.TEMPERATURE_HUMIDITY_SENSOR_DISPLAY: AsyncTemperatureHumiditySensorDisplay,
Expand All @@ -63,47 +66,48 @@

TYPE_GROUP_MAP = {
GroupType.GROUP: AsyncGroup,
GroupType.SECURITY: AsyncSecurityGroup,
GroupType.SWITCHING: AsyncSwitchingGroup,
GroupType.EXTENDED_LINKED_SWITCHING: AsyncExtendedLinkedSwitchingGroup,
GroupType.LINKED_SWITCHING: AsyncLinkedSwitchingGroup,
GroupType.ALARM_SWITCHING: AsyncAlarmSwitchingGroup,
GroupType.SECURITY_BACKUP_ALARM_SWITCHING: AsyncAlarmSwitchingGroup,
GroupType.HEATING_HUMIDITY_LIMITER: AsyncHeatingHumidyLimiterGroup,
GroupType.HEATING_TEMPERATURE_LIMITER: AsyncHeatingTemperatureLimiterGroup,
GroupType.HEATING_CHANGEOVER: AsyncHeatingChangeoverGroup,
GroupType.INBOX: AsyncInboxGroup,
GroupType.SECURITY_ZONE: AsyncSecurityZoneGroup,
GroupType.ENVIRONMENT: AsyncEnvironmentGroup,
GroupType.EXTENDED_LINKED_SHUTTER: AsyncExtendedLinkedShutterGroup,
GroupType.EXTENDED_LINKED_SWITCHING: AsyncExtendedLinkedSwitchingGroup,
GroupType.HEATING: AsyncHeatingGroup,
GroupType.HEATING_CHANGEOVER: AsyncHeatingChangeoverGroup,
GroupType.HEATING_COOLING_DEMAND: AsyncHeatingCoolingDemandGroup,
GroupType.HEATING_EXTERNAL_CLOCK: AsyncHeatingExternalClockGroup,
GroupType.HEATING_DEHUMIDIFIER: AsyncHeatingDehumidifierGroup,
GroupType.HEATING_COOLING_DEMAND_BOILER: AsyncHeatingCoolingDemandBoilerGroup,
GroupType.HEATING_COOLING_DEMAND_PUMP: AsyncHeatingCoolingDemandPumpGroup,
GroupType.HEATING_DEHUMIDIFIER: AsyncHeatingDehumidifierGroup,
GroupType.HEATING_EXTERNAL_CLOCK: AsyncHeatingExternalClockGroup,
GroupType.HEATING_FAILURE_ALERT_RULE_GROUP: AsyncHeatingFailureAlertRuleGroup,
GroupType.HUMIDITY_WARNING_RULE_GROUP: AsyncHumidityWarningRuleGroup,
GroupType.HEATING_HUMIDITY_LIMITER: AsyncHeatingHumidyLimiterGroup,
GroupType.HEATING_TEMPERATURE_LIMITER: AsyncHeatingTemperatureLimiterGroup,
GroupType.HOT_WATER: AsyncHotWaterGroup,
GroupType.SWITCHING_PROFILE: AsyncSwitchingProfileGroup,
GroupType.OVER_HEAT_PROTECTION_RULE: AsyncOverHeatProtectionRule,
GroupType.SMOKE_ALARM_DETECTION_RULE: AsyncSmokeAlarmDetectionRule,
GroupType.HUMIDITY_WARNING_RULE_GROUP: AsyncHumidityWarningRuleGroup,
GroupType.INBOX: AsyncInboxGroup,
GroupType.LINKED_SWITCHING: AsyncLinkedSwitchingGroup,
GroupType.LOCK_OUT_PROTECTION_RULE: AsyncLockOutProtectionRule,
GroupType.OVER_HEAT_PROTECTION_RULE: AsyncOverHeatProtectionRule,
GroupType.SECURITY: AsyncSecurityGroup,
GroupType.SECURITY_BACKUP_ALARM_SWITCHING: AsyncAlarmSwitchingGroup,
GroupType.SECURITY_ZONE: AsyncSecurityZoneGroup,
GroupType.SHUTTER_PROFILE: AsyncShutterProfile,
GroupType.SHUTTER_WIND_PROTECTION_RULE: AsyncShutterWindProtectionRule,
GroupType.EXTENDED_LINKED_SHUTTER: AsyncExtendedLinkedShutterGroup,
GroupType.ENVIRONMENT: AsyncEnvironmentGroup,
GroupType.SMOKE_ALARM_DETECTION_RULE: AsyncSmokeAlarmDetectionRule,
GroupType.SWITCHING: AsyncSwitchingGroup,
GroupType.SWITCHING_PROFILE: AsyncSwitchingProfileGroup,
}

TYPE_SECURITY_EVENT_MAP = {
SecurityEventType.SILENCE_CHANGED: AsyncSilenceChangedEvent,
SecurityEventType.ACTIVATION_CHANGED: AsyncActivationChangedEvent,
SecurityEventType.ACCESS_POINT_CONNECTED: AsyncAccessPointConnectedEvent,
SecurityEventType.ACCESS_POINT_DISCONNECTED: AsyncAccessPointDisconnectedEvent,
SecurityEventType.SENSOR_EVENT: AsyncSensorEvent,
SecurityEventType.SABOTAGE: AsyncSabotageEvent,
SecurityEventType.MOISTURE_DETECTION_EVENT: AsyncMoistureDetectionEvent,
SecurityEventType.SMOKE_ALARM: AsyncSmokeAlarmEvent,
SecurityEventType.ACTIVATION_CHANGED: AsyncActivationChangedEvent,
SecurityEventType.EXTERNAL_TRIGGERED: AsyncExternalTriggeredEvent,
SecurityEventType.OFFLINE_ALARM: AsyncOfflineAlarmEvent,
SecurityEventType.WATER_DETECTION_EVENT: AsyncWaterDetectionEvent,
SecurityEventType.MAINS_FAILURE_EVENT: AsyncMainsFailureEvent,
SecurityEventType.MOISTURE_DETECTION_EVENT: AsyncMoistureDetectionEvent,
SecurityEventType.OFFLINE_ALARM: AsyncOfflineAlarmEvent,
SecurityEventType.OFFLINE_WATER_DETECTION_EVENT: AsyncOfflineWaterDetectionEvent,
SecurityEventType.SABOTAGE: AsyncSabotageEvent,
SecurityEventType.SENSOR_EVENT: AsyncSensorEvent,
SecurityEventType.SILENCE_CHANGED: AsyncSilenceChangedEvent,
SecurityEventType.SMOKE_ALARM: AsyncSmokeAlarmEvent,
SecurityEventType.WATER_DETECTION_EVENT: AsyncWaterDetectionEvent,
}
Loading

0 comments on commit 2a0636c

Please sign in to comment.