Skip to content

Keep Relay Always ON & Control Zigbee Light via Button #129

@mon3y78

Description

@mon3y78

Hi everyone,
I'm using the stadanrd configuration TX-Ultimate-Easy ESPHome configuration
on a Sonoff TX Ultimate switch.

One of the physical buttons is wired to a relay that used to control a directly connected light. That light has now been replaced with a Zigbee ceiling lamp, which needs to remain constantly powered to stay connected via Zigbee.

🎯 What I'm trying to do:

Keep the relay physically ON all the time (i.e. let power always flow to the Zigbee light);

Use the physical button to toggle the Zigbee light via Home Assistant, not via the relay;

Expose both the button state and a virtual switch (relay) to Home Assistant for use in automations and dashboards.

⚙️ How I handled this with SmartHome-yourself

When using the SmartHome-yourself project
, I managed to solve this by replacing the relay definition with a template switch:

  • platform: template
    id: relay_4 # Disconnected from physical relay
    name: "${friendly_name} L4"
    internal: false
    optimistic: true

This worked perfectly:

The physical relay remained ON (power always available to the Zigbee light);

The button toggled a virtual switch exposed in Home Assistant;

I used that virtual switch to trigger a Zigbee service call to toggle the ceiling lamp.

🤔 Problem with TX-Ultimate-Easy

In TX-Ultimate-Easy, all relays are defined in the standard_hw_relays.yaml package as gpio switches, and set as internal: true, meaning:

They are not exposed to Home Assistant;

They are hard-wired to the physical relay, which I want to avoid.

✅ What I'm looking for

A clean way to disconnect the button from the relay, but still detect button presses;

Keep the physical relay always ON (so the Zigbee lamp stays powered);

Use the button to toggle a virtual switch (template or input_boolean) in Home Assistant;

All of this while keeping the structure and packages of TX-Ultimate-Easy.

❓ Questions

What's the cleanest way to disconnect the button from the relay, while keeping the button functional?

Is it okay to replace the GPIO relay with a template switch using the same id? Or should I define a new one?

Has anyone else faced the need to keep relays always ON to support Zigbee or Wi-Fi lights?

Thanks in advance to anyone who can help clarify the best approach using ESPHome with the TX-Ultimate-Easy setup!

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions