[sy6970] Use the sub_* helpers for optional child entities (#19757)

This commit is contained in:
J. Nick Koston
2026-09-28 01:10:07 +02:00
committed by GitHub
parent 1fc9a3aa7d
commit fa8f8593af
3 changed files with 17 additions and 44 deletions
@@ -42,16 +42,9 @@ CONFIG_SCHEMA = cv.Schema(
async def to_code(config: ConfigType) -> None:
parent = await cg.get_variable(config[CONF_SY6970_ID])
hub = await cg.get_variable(config[CONF_SY6970_ID])
if vbus_connected_config := config.get(CONF_VBUS_CONNECTED):
sens = await binary_sensor.new_binary_sensor(vbus_connected_config)
cg.add(parent.add_listener(sens))
if charging_config := config.get(CONF_CHARGING):
sens = await binary_sensor.new_binary_sensor(charging_config)
cg.add(parent.add_listener(sens))
if charge_done_config := config.get(CONF_CHARGE_DONE):
sens = await binary_sensor.new_binary_sensor(charge_done_config)
cg.add(parent.add_listener(sens))
binary_sensors = binary_sensor.sub_binary_sensors(config)
await binary_sensors(CONF_VBUS_CONNECTED, hub.add_listener)
await binary_sensors(CONF_CHARGING, hub.add_listener)
await binary_sensors(CONF_CHARGE_DONE, hub.add_listener)
+7 -20
View File
@@ -73,24 +73,11 @@ CONFIG_SCHEMA = cv.Schema(
async def to_code(config: ConfigType) -> None:
parent = await cg.get_variable(config[CONF_SY6970_ID])
hub = await cg.get_variable(config[CONF_SY6970_ID])
if vbus_voltage_config := config.get(CONF_VBUS_VOLTAGE):
sens = await sensor.new_sensor(vbus_voltage_config)
cg.add(parent.add_listener(sens))
if battery_voltage_config := config.get(CONF_BATTERY_VOLTAGE):
sens = await sensor.new_sensor(battery_voltage_config)
cg.add(parent.add_listener(sens))
if system_voltage_config := config.get(CONF_SYSTEM_VOLTAGE):
sens = await sensor.new_sensor(system_voltage_config)
cg.add(parent.add_listener(sens))
if charge_current_config := config.get(CONF_CHARGE_CURRENT):
sens = await sensor.new_sensor(charge_current_config)
cg.add(parent.add_listener(sens))
if precharge_current_config := config.get(CONF_PRECHARGE_CURRENT):
sens = await sensor.new_sensor(precharge_current_config)
cg.add(parent.add_listener(sens))
sensors = sensor.sub_sensors(config)
await sensors(CONF_VBUS_VOLTAGE, hub.add_listener)
await sensors(CONF_BATTERY_VOLTAGE, hub.add_listener)
await sensors(CONF_SYSTEM_VOLTAGE, hub.add_listener)
await sensors(CONF_CHARGE_CURRENT, hub.add_listener)
await sensors(CONF_PRECHARGE_CURRENT, hub.add_listener)
@@ -38,16 +38,9 @@ CONFIG_SCHEMA = cv.Schema(
async def to_code(config: ConfigType) -> None:
parent = await cg.get_variable(config[CONF_SY6970_ID])
hub = await cg.get_variable(config[CONF_SY6970_ID])
if bus_status_config := config.get(CONF_BUS_STATUS):
sens = await text_sensor.new_text_sensor(bus_status_config)
cg.add(parent.add_listener(sens))
if charge_status_config := config.get(CONF_CHARGE_STATUS):
sens = await text_sensor.new_text_sensor(charge_status_config)
cg.add(parent.add_listener(sens))
if ntc_status_config := config.get(CONF_NTC_STATUS):
sens = await text_sensor.new_text_sensor(ntc_status_config)
cg.add(parent.add_listener(sens))
text_sensors = text_sensor.sub_text_sensors(config)
await text_sensors(CONF_BUS_STATUS, hub.add_listener)
await text_sensors(CONF_CHARGE_STATUS, hub.add_listener)
await text_sensors(CONF_NTC_STATUS, hub.add_listener)