Skip to content

Commit df7f806

Browse files
committed
#42 Extended support for Philips Hue dimmer switch
1 parent 6e103f6 commit df7f806

File tree

3 files changed

+24
-4
lines changed

3 files changed

+24
-4
lines changed

adapters/__init__.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,8 @@
2424
from adapters.osram.sensor_motion import SensorMotionOsram
2525
from adapters.samsung.sensor_contact import SensorContact
2626
from adapters.samsung.sensor_arrival import SensorArrival
27-
from adapters.philips.sensor_motion_phlps import SensorMotionPhlps
27+
from adapters.philips.hue_dimmer_switch import HueDimmerSwitch
28+
from adapters.philips.hue_motion_sensor import HueMotionSensor
2829

2930
adapter_by_model = {
3031
'CC2530.ROUTER': Adapter, # Zigbee router based on CC2530 chip
@@ -97,7 +98,7 @@
9798
'4058075816794': DimmableCtBulbAdapter, # OSRAM Smart+ Ceiling TW
9899
# Philips
99100
'7299760PH': RGBAdapter, # Philips Hue Bloom
100-
'324131092621': OnOffSwitchAdapter, # Philips Hue dimmer switch
101+
'324131092621': HueDimmerSwitch, # Philips Hue dimmer switch
101102
'433714': DimmableBulbAdapter, # Philips Hue Lux A19 bulb E27
102103
'9290011370': DimmableBulbAdapter, # Philips Hue white A60 bulb E27
103104
'8718696449691': DimmableBulbAdapter, # Philips Hue White Single bulb B22
@@ -108,7 +109,7 @@
108109
'7299355PH': RGBAdapter, # Philips Hue white and color ambiance LightStrip
109110
'7199960PH': RGBAdapter, # Philips Hue Iris
110111
'9290012573A': RGBWAdapter, # Philips Hue white and color ambiance E26/E27 (with Color Temperature)
111-
'9290012607':SensorMotionPhlps, # Philips Hue Motion Sensor (occupancy, temperature, illimination)
112+
'9290012607': HueMotionSensor, # Philips Hue Motion Sensor (occupancy, temperature, illimination)
112113
# Sengled
113114
'E11-G13': DimmableBulbAdapter, # Sengled Element Classic (A19)
114115
'E11-G23': DimmableBulbAdapter, # Sengled Element Classic (A60)

adapters/philips/hue_dimmer_switch.py

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
from adapters.adapter_with_battery import AdapterWithBattery
2+
from devices.switch.selector_switch import SelectorSwitch
3+
4+
5+
class HueDimmerSwitch(AdapterWithBattery):
6+
def __init__(self, devices):
7+
super().__init__(devices)
8+
9+
self.switch = SelectorSwitch(devices, 'dimmer', 'action')
10+
self.switch.add_level('off', None)
11+
self.switch.add_level('down-press', 'down-press')
12+
self.switch.add_level('down-hold', 'down-hold')
13+
self.switch.add_level('down-hold-release', 'down-hold-release')
14+
self.switch.add_level('up-press', 'up-press')
15+
self.switch.add_level('up-hold', 'up-hold')
16+
self.switch.add_level('up-hold-release', 'up-hold-release')
17+
self.switch.add_level('on', 'on')
18+
self.switch.set_selector_style(SelectorSwitch.SELECTOR_TYPE_MENU)
19+
self.devices.append(self.switch)

adapters/philips/sensor_motion_phlps.py renamed to adapters/philips/hue_motion_sensor.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
from devices.sensor.temperature import TemperatureSensor
55

66

7-
class SensorMotionPhlps(AdapterWithBattery):
7+
class HueMotionSensor(AdapterWithBattery):
88
def __init__(self, devices):
99
super().__init__(devices)
1010
self.devices.append(MotionSensor(devices, 'motion', 'occupancy'))

0 commit comments

Comments
 (0)