Skip to content

Commit 4acaeb2

Browse files
authored
Merge pull request #121 from plugwise/list_to_dict_2
Change output to enable full DUC-use in plugwise-beta
2 parents bc677de + 573ea5c commit 4acaeb2

File tree

14 files changed

+8555
-559
lines changed

14 files changed

+8555
-559
lines changed

CHANGELOG.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
# Changelog
22

3+
# v0.16.0 - Smile - Change output format, allowing full use of Core DataUpdateCoordintor in plugwise-beta
4+
- Change from list- to dict-format for binary_sensors, sensors and switches
5+
- Provide gateway-devices for Legacy Anna and Stretch
6+
- Code-optimizations
7+
38
# v0.15.7 - Smile - Improve implementation of cooling-function-detection
49
- Anna: add two sensors related to automatic switching between heating and cooling and add a heating/cooling-mode active indication
510
- Adam: also provide a heating/cooling-mode active indication

plugwise/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
"""Plugwise module."""
22

3-
__version__ = "0.15.7"
3+
__version__ = "0.16.0"
44

55
from plugwise.smile import Smile
66
from plugwise.stick import Stick

plugwise/constants.py

Lines changed: 53 additions & 182 deletions
Original file line numberDiff line numberDiff line change
@@ -464,9 +464,12 @@
464464
ATTR_UNIT_OF_MEASUREMENT: PRESSURE_BAR,
465465
},
466466
# Legacy Anna: similar to flame-state on Anna/Adam
467-
"boiler_state": {ATTR_UNIT_OF_MEASUREMENT: None},
467+
"boiler_state": {ATTR_NAME: "flame_state", ATTR_UNIT_OF_MEASUREMENT: None},
468468
# Legacy Anna: shows when heating is active, we don't show dhw_state, cannot be determined reliably
469-
"intended_boiler_state": {ATTR_UNIT_OF_MEASUREMENT: None},
469+
"intended_boiler_state": {
470+
ATTR_NAME: "heating_state",
471+
ATTR_UNIT_OF_MEASUREMENT: None,
472+
},
470473
}
471474

472475
SMILES = {
@@ -527,181 +530,57 @@
527530
SWITCH_ICON = "mdi:electric-switch"
528531

529532
# Binary Sensors
530-
DHW_STATE = {
531-
ATTR_ID: "dhw_state",
532-
ATTR_STATE: False,
533-
}
534-
FLAME_STATE = {
535-
ATTR_ID: "flame_state",
536-
ATTR_STATE: False,
537-
}
538-
PW_NOTIFICATION = {
539-
ATTR_ID: "plugwise_notification",
540-
ATTR_STATE: False,
541-
}
542-
SLAVE_BOILER_STATE = {
543-
ATTR_ID: "slave_boiler_state",
544-
ATTR_STATE: False,
545-
}
533+
DHW_STATE = {"dhw_state": False}
534+
FLAME_STATE = {"flame_state": False}
535+
PW_NOTIFICATION = {"plugwise_notification": False}
536+
SLAVE_BOILER_STATE = {"slave_boiler_state": False}
537+
546538
BINARY_SENSORS = [
547539
DHW_STATE,
548540
FLAME_STATE,
549541
SLAVE_BOILER_STATE,
550542
]
551543

552544
# Sensors
553-
BATTERY = {
554-
ATTR_ID: "battery",
555-
ATTR_STATE: None,
556-
}
557-
COOL_ACT_THRESHOLD = {
558-
ATTR_ID: "cooling_activation_outdoor_temperature",
559-
ATTR_STATE: None,
560-
}
561-
COOL_DEACT_THRESHOLD = {
562-
ATTR_ID: "cooling_deactivation_threshold",
563-
ATTR_STATE: None,
564-
}
565-
CURRENT_TEMP = {
566-
ATTR_ID: "temperature",
567-
ATTR_STATE: None,
568-
}
569-
DEVICE_STATE = {
570-
ATTR_ID: "device_state",
571-
ATTR_STATE: None,
572-
}
573-
EL_CONSUMED = {
574-
ATTR_ID: "electricity_consumed",
575-
ATTR_STATE: None,
576-
}
577-
EL_CONSUMED_INTERVAL = {
578-
ATTR_ID: "electricity_consumed_interval",
579-
ATTR_STATE: None,
580-
}
581-
EL_CONSUMED_OFF_PEAK_CUMULATIVE = {
582-
ATTR_ID: "electricity_consumed_off_peak_cumulative",
583-
ATTR_STATE: None,
584-
}
585-
EL_CONSUMED_OFF_PEAK_INTERVAL = {
586-
ATTR_ID: "electricity_consumed_off_peak_interval",
587-
ATTR_STATE: None,
588-
}
589-
EL_CONSUMED_OFF_PEAK_POINT = {
590-
ATTR_ID: "electricity_consumed_off_peak_point",
591-
ATTR_STATE: None,
592-
}
593-
EL_CONSUMED_PEAK_CUMULATIVE = {
594-
ATTR_ID: "electricity_consumed_peak_cumulative",
595-
ATTR_STATE: None,
596-
}
597-
EL_CONSUMED_PEAK_INTERVAL = {
598-
ATTR_ID: "electricity_consumed_peak_interval",
599-
ATTR_STATE: None,
600-
}
601-
EL_CONSUMED_PEAK_POINT = {
602-
ATTR_ID: "electricity_consumed_peak_point",
603-
ATTR_STATE: None,
604-
}
605-
EL_CONSUMED_POINT = {
606-
ATTR_ID: "electricity_consumed_point",
607-
ATTR_STATE: None,
608-
}
609-
EL_PRODUCED = {
610-
ATTR_ID: "electricity_produced",
611-
ATTR_STATE: None,
612-
}
613-
EL_PRODUCED_INTERVAL = {
614-
ATTR_ID: "electricity_produced_interval",
615-
ATTR_STATE: None,
616-
}
617-
EL_PRODUCED_OFF_PEAK_CUMULATIVE = {
618-
ATTR_ID: "electricity_produced_off_peak_cumulative",
619-
ATTR_STATE: None,
620-
}
621-
EL_PRODUCED_OFF_PEAK_INTERVAL = {
622-
ATTR_ID: "electricity_produced_off_peak_interval",
623-
ATTR_STATE: None,
624-
}
625-
EL_PRODUCED_OFF_PEAK_POINT = {
626-
ATTR_ID: "electricity_produced_off_peak_point",
627-
ATTR_STATE: None,
628-
}
629-
EL_PRODUCED_PEAK_CUMULATIVE = {
630-
ATTR_ID: "electricity_produced_peak_cumulative",
631-
ATTR_STATE: None,
632-
}
633-
EL_PRODUCED_PEAK_INTERVAL = {
634-
ATTR_ID: "electricity_produced_peak_interval",
635-
ATTR_STATE: None,
636-
}
637-
EL_PRODUCED_PEAK_POINT = {
638-
ATTR_ID: "electricity_produced_peak_point",
639-
ATTR_STATE: None,
640-
}
641-
EL_PRODUCED_POINT = {
642-
ATTR_ID: "electricity_produced_point",
643-
ATTR_STATE: None,
644-
}
645-
GAS_CONSUMED_CUMULATIVE = {
646-
ATTR_ID: "gas_consumed_cumulative",
647-
ATTR_STATE: None,
648-
}
649-
GAS_CONSUMED_INTERVAL = {
650-
ATTR_ID: "gas_consumed_interval",
651-
ATTR_STATE: None,
652-
}
653-
HUMIDITY = {
654-
ATTR_ID: "humidity",
655-
ATTR_STATE: None,
656-
}
657-
ILLUMINANCE = {
658-
ATTR_ID: "illuminance",
659-
ATTR_STATE: None,
660-
}
661-
INTENDED_BOILER_TEMP = {
662-
ATTR_ID: "intended_boiler_temperature",
663-
ATTR_STATE: None,
664-
}
665-
MOD_LEVEL = {
666-
ATTR_ID: "modulation_level",
667-
ATTR_STATE: None,
668-
}
669-
NET_EL_CUMULATIVE = {
670-
ATTR_ID: "net_electricity_cumulative",
671-
ATTR_STATE: None,
672-
}
673-
NET_EL_POINT = {
674-
ATTR_ID: "net_electricity_point",
675-
ATTR_STATE: None,
676-
}
677-
OUTDOOR_TEMP = {
678-
ATTR_ID: "outdoor_temperature",
679-
ATTR_STATE: None,
680-
}
681-
RETURN_TEMP = {
682-
ATTR_ID: "return_temperature",
683-
ATTR_STATE: None,
684-
}
685-
TARGET_TEMP = {
686-
ATTR_ID: "setpoint",
687-
ATTR_STATE: None,
688-
}
689-
TEMP_DIFF = {
690-
ATTR_ID: "temperature_difference",
691-
ATTR_STATE: None,
692-
}
693-
VALVE_POS = {
694-
ATTR_ID: "valve_position",
695-
ATTR_STATE: None,
696-
}
697-
WATER_PRESSURE = {
698-
ATTR_ID: "water_pressure",
699-
ATTR_STATE: None,
700-
}
701-
WATER_TEMP = {
702-
ATTR_ID: "water_temperature",
703-
ATTR_STATE: None,
704-
}
545+
BATTERY = {"battery": None}
546+
COOL_ACT_THRESHOLD = {"cooling_activation_outdoor_temperature": None}
547+
COOL_DEACT_THRESHOLD = {"cooling_deactivation_threshold": None}
548+
CURRENT_TEMP = {"temperature": None}
549+
DEVICE_STATE = {"device_state": None}
550+
EL_CONSUMED = {"electricity_consumed": None}
551+
EL_CONSUMED_INTERVAL = {"electricity_consumed_interval": None}
552+
EL_CONSUMED_OFF_PEAK_CUMULATIVE = {"electricity_consumed_off_peak_cumulative": None}
553+
EL_CONSUMED_OFF_PEAK_INTERVAL = {"electricity_consumed_off_peak_interval": None}
554+
EL_CONSUMED_OFF_PEAK_POINT = {"electricity_consumed_off_peak_point": None}
555+
EL_CONSUMED_PEAK_CUMULATIVE = {"electricity_consumed_peak_cumulative": None}
556+
EL_CONSUMED_PEAK_INTERVAL = {"electricity_consumed_peak_interval": None}
557+
EL_CONSUMED_PEAK_POINT = {"electricity_consumed_peak_point": None}
558+
EL_CONSUMED_POINT = {"electricity_consumed_point": None}
559+
EL_PRODUCED = {"electricity_produced": None}
560+
EL_PRODUCED_INTERVAL = {"electricity_produced_interval": None}
561+
EL_PRODUCED_OFF_PEAK_CUMULATIVE = {"electricity_produced_off_peak_cumulative": None}
562+
EL_PRODUCED_OFF_PEAK_INTERVAL = {"electricity_produced_off_peak_interval": None}
563+
EL_PRODUCED_OFF_PEAK_POINT = {"electricity_produced_off_peak_point": None}
564+
EL_PRODUCED_PEAK_CUMULATIVE = {"electricity_produced_peak_cumulative": None}
565+
EL_PRODUCED_PEAK_INTERVAL = {"electricity_produced_peak_interval": None}
566+
EL_PRODUCED_PEAK_POINT = {"electricity_produced_peak_point": None}
567+
EL_PRODUCED_POINT = {"electricity_produced_point": None}
568+
GAS_CONSUMED_CUMULATIVE = {"gas_consumed_cumulative": None}
569+
GAS_CONSUMED_INTERVAL = {"gas_consumed_interval": None}
570+
HUMIDITY = {"humidity": None}
571+
ILLUMINANCE = {"illuminance": None}
572+
INTENDED_BOILER_TEMP = {"intended_boiler_temperature": None}
573+
MOD_LEVEL = {"modulation_level": None}
574+
NET_EL_CUMULATIVE = {"net_electricity_cumulative": None}
575+
NET_EL_POINT = {"net_electricity_point": None}
576+
OUTDOOR_TEMP = {"outdoor_temperature": None}
577+
RETURN_TEMP = {"return_temperature": None}
578+
TARGET_TEMP = {"setpoint": None}
579+
TEMP_DIFF = {"temperature_difference": None}
580+
VALVE_POS = {"valve_position": None}
581+
WATER_PRESSURE = {"water_pressure": None}
582+
WATER_TEMP = {"water_temperature": None}
583+
705584
SENSORS = [
706585
BATTERY,
707586
COOL_ACT_THRESHOLD,
@@ -744,18 +623,10 @@
744623
]
745624

746625
# Switches
747-
DHW_COMF_MODE = {
748-
ATTR_ID: "dhw_cm_switch",
749-
ATTR_STATE: False,
750-
}
751-
LOCK = {
752-
ATTR_ID: "lock",
753-
ATTR_STATE: False,
754-
}
755-
RELAY = {
756-
ATTR_ID: "relay",
757-
ATTR_STATE: False,
758-
}
626+
DHW_COMF_MODE = {"dhw_cm_switch": False}
627+
LOCK = {"lock": False}
628+
RELAY = {"relay": False}
629+
759630
SWITCHES = [
760631
DHW_COMF_MODE,
761632
LOCK,

0 commit comments

Comments
 (0)