Shelly 1 - Configuring the Dry Contact

I’ve been searching and playing for about 2+ days now on this before I “phone a friend”.

I have a Shelly 1 that I want to use as a garage door trigger (relay) and sensor(switch), I have the relay all set up in HE, I can’t seam to find how to set the switch correctly.

I have the Shelly 1 configured correctly, verified by using the Shelly App. I can trigger, hear click, open the contacts and I see the little blue status change, yea. What I don’t see is any change to attributes in HE, using the ShellySwitchRelay by Scott Grayban/Allterco Robotics, v 3.0.8. (contact changes but with the triggering of the relay not the switch, external sensor is not changing).

Things I’ve tried:

  • Creating a virtual Contact Switch
  • In Maker API - created a Send Device Command for open/close states
  • Verified by pasting them into a web browser and worked as desired
  • Pasted them into the “I/O URL actions”
    --- Didn’t work
  • Looking at the Logs I can see the calls from the Shelly being triggered, returning:

2021-12-02 02:49:05.902 pm Received data from, no matching device found for, C0A8567F:78E, E8DB84D452AA or C0A8567F


  1. Should I be seeing the attributes change as I change the switch (after refreshing each time to poll the updated data)?
  2. Am I doing it wrong assuming the attributes change and need to go the route of the Maker API? (I thought this was just needed to "refresh" the status when triggered, but I don't get the switch status)
  3. How do I get around where HE cares where the URL Commands come from?

Thank you,

I wonder if part of the problem might be with the driver?

I just setup a Shelly 1 a few days ago and it works perfectly for me. I can control it via Hubitat or via an attached switch.

I use the following driver:

Are you looking to control the relay from a switch that is attached to the Shelly 1 directly?

Thank you.

Yes, I'm using that driver.
Yes it does work with the switch driving the relay.

But, I'm using the switch separately from the relay.
There switch is the indicator of the status of the door while the relay triggers the opener.

I’m struggling to understand how the switch is the indicator of the status. Are you saying that you set a virtual switch to be an indicator of the status of the garage door?

Are you aware that there are some apps that can be used to control garage doors with the help of a trigger and a contact sensor (or tilt sensor)? When used, the garage door template can be used in dashboards. Is that what you are looking for?

There are a few - this is the one I use for that purpose:

An alternative if you don't mind messing around with things a little is to use Node-RED and the node..

To install Node-RED use a Raspberry PI / vm / or docker for a quick test..

To connect to HE you'd use @fblackburn's awesome Node-RED nodes for HE..

Yes, contact switch and a relay. (separate, independent of each other)
The Shelly1, you can set up to use the "switch" as a contact switch.
I just can't seam to access that attribute with the driver. (I feel like I'm on the 1 yard line, or top of the box . . . right there, just need to see it.)

The virtual switch, that I tried, would get updated via maker api through the Shelly's switch URL trigger, but I was running into the "no matching device found" when using the URL through the Shelly. The URL worked perfect when using it in a web browser.

Thank you for your suggestions, I'll look into that as well as Red Node.

I was able to tweak the driver to display the contact switch status, yea!
But, I was also told by Shelly Tech that the support for I/O URL External Switch is no longer an option, which puts a huge hole in my boat.
With out triggering that Maker API Refresh URL command, I can't keep an accurate status in HE unless I constantly poll or purchase another dry contact sensor to use with it.

Download the Hubitat app