Skip to content

Commit

Permalink
Add support for monophase profile for Pro 3EM (#341)
Browse files Browse the repository at this point in the history
  • Loading branch information
bieniu authored Jan 2, 2024
1 parent 3f55704 commit 07a122f
Showing 1 changed file with 39 additions and 1 deletion.
40 changes: 39 additions & 1 deletion python_scripts/shellies_discovery_gen2.py
Original file line number Diff line number Diff line change
Expand Up @@ -186,6 +186,7 @@
MODEL_PRO_2PM = "shellypro2pm"
MODEL_PRO_3 = "shellypro3"
MODEL_PRO_3EM = "shellypro3em"
MODEL_PRO_3EM_MONOPHASE = "shellypro3em-monophase"
MODEL_PRO_4PM = "shellypro4pm"
MODEL_PRO_DIMMER_1PM = "shellyprodm1pm"
MODEL_PRO_DIMMER_2PM = "shellyprodm2pm"
Expand Down Expand Up @@ -2043,7 +2044,37 @@
UPDATE_FIRMWARE: DESCRIPTION_UPDATE_FIRMWARE,
UPDATE_FIRMWARE_BETA: DESCRIPTION_UPDATE_FIRMWARE_BETA,
},
ATTR_MIN_FIRMWARE_DATE: 20230803,
ATTR_MIN_FIRMWARE_DATE: 20231219,
},
MODEL_PRO_3EM_MONOPHASE: {
ATTR_NAME: "Shelly Pro 3EM",
ATTR_MODEL_ID: "SPEM-003CEBEU",
ATTR_EMETERS: 3,
ATTR_BINARY_SENSORS: {SENSOR_CLOUD: DESCRIPTION_SENSOR_CLOUD},
ATTR_BUTTONS: {BUTTON_RESTART: DESCRIPTION_BUTTON_RESTART},
ATTR_SENSORS: {
SENSOR_ETH_IP: DESCRIPTION_SENSOR_ETH_IP,
SENSOR_LAST_RESTART: DESCRIPTION_SENSOR_LAST_RESTART,
SENSOR_SSID: DESCRIPTION_SENSOR_SSID,
SENSOR_WIFI_IP: DESCRIPTION_SENSOR_WIFI_IP,
SENSOR_WIFI_SIGNAL: DESCRIPTION_SENSOR_WIFI_SIGNAL,
SENSOR_DEVICE_TEMPERATURE: DESCRIPTION_SENSOR_DEVICE_TEMPERATURE,
},
ATTR_EMETER_SENSORS: {
SENSOR_ACTIVE_POWER: DESCRIPTION_SENSOR_EMETER_ACTIVE_POWER,
SENSOR_APPARENT_POWER: DESCRIPTION_SENSOR_EMETER_APPARENT_POWER,
SENSOR_CURRENT: DESCRIPTION_SENSOR_EMETER_CURRENT,
SENSOR_POWER_FACTOR: DESCRIPTION_SENSOR_EMETER_POWER_FACTOR,
SENSOR_TOTAL_ACTIVE_ENERGY: DESCRIPTION_SENSOR_EMETER_TOTAL_ACTIVE_ENERGY,
SENSOR_TOTAT_ACTIVE_RETURNED_ENERGY: DESCRIPTION_SENSOR_EMETER_TOTAL_ACTIVE_RETURNED_ENERGY,
SENSOR_VOLTAGE: DESCRIPTION_SENSOR_EMETER_VOLTAGE,
SENSOR_FREQUENCY: DESCRIPTION_SENSOR_EMETER_FREQUENCY,
},
ATTR_UPDATES: {
UPDATE_FIRMWARE: DESCRIPTION_UPDATE_FIRMWARE,
UPDATE_FIRMWARE_BETA: DESCRIPTION_UPDATE_FIRMWARE_BETA,
},
ATTR_MIN_FIRMWARE_DATE: 20231219,
},
MODEL_PRO_4PM: {
ATTR_NAME: "Shelly Pro 4PM",
Expand Down Expand Up @@ -2963,6 +2994,13 @@ def remove_old_script_versions():
)

device_config = data["device_config"] # noqa: F821

if (
model == MODEL_PRO_3EM
and device_config["sys"]["device"].get("profile") == "monophase"
):
model = MODEL_PRO_3EM_MONOPHASE

default_topic = f"{device_config['mqtt']['topic_prefix']}/"
if " " in default_topic:
raise ValueError(
Expand Down

0 comments on commit 07a122f

Please sign in to comment.