Water Valve in Smartthings works great, only shows up was binary_sensor in HA, not a switch

Good day all. I got myself a Watervalve (EcoNet Bulldog) Zwave, integrated into my Samsung Smartthings, works great, open close etc.

I refreshed the integration in HA, and it shows up, but only as a binary_sensor. So all I can do is read open/close. How can I go about attempting to fix that so its a switch I can then build some automation for?

Thanks!
-J

I had a similar issue to this some time back. What I ended up doing was creating a virtual switch in SmartThings and tying it’s function to the water valve by automations (in SmartThings, so when I turn the switch on, the valve turns on; when I turn the valve off, the switch turns off.)
The virtual switch shows up in HA, so I could control my valve.
I’ve since gotten a ZWave/ZigBee controller USB-stick for HA and, while I’ve kept most of my SmartThings setup intact, I did move the valve over to direct HA contol.

Ohh, thanks!

What USB stick did you get? Im thinking thats next.

How did you configure the device AFTER setting up the Virtual Switch?

What I mean here is, the SmartApp doesnt see the valve as an on/off like a light. So it can’t be put in as the device.

Yes, Ill look into this, as its driving me mental. Any thoughts on how I can get the device to show up as an item I can add to the virtual switch?

Alright, for future use in case anyone is looking, I had to change the device type in Smartthings online system. From the site: “The SmartThings standard pairing/inclusion process connects the Bulldog as a “Z-Wave Valve” device type. It is a good idea for some applications to change the device type to a “Z-Wave Switch”.”

One I changed to switch, and synced back to HomeAssistant through its integration, it was now a switch that I could turn on/off.

1 Like

After you changed the type of the device to switch, does it still allow you to control it in SmartThingsHome monitor?
To be honest it would be much nicer if we could get the valve to show up in HA correctly.

I know this is an old thread but it’s worth a shot…I purchased a new valve for a vacation house that has a SmartThings hub which I use through Home Assistant for Z-Wave and Zigbee devices. I thought I’d be cheeky and use the new/beta Edge drivers for SmartThings. I ran into the same issue that it would show up in HA only as a binary_sensor and not a switch I could operate.

After many attempts to uninstall the Edge driver and go back to the Groovy driver so I could use the above workaround, I’ve been unsuccessful. Every time I pair the valve with ST it picks up the Edge driver.

Does anyone know if there is a similar workaround for the Edge driver? Or some other way to get this valve to show up in HA as a switch, through the SmartThings integration? Thank you.

I recently got the EcoNet Bulldog Valve and wanted to share my setup for anyone who stumbles on this thread. Might also help you @ridiz (if still needed)! As of March 2023, this is working pretty well -

  1. Add the Valve to SmartThings Hub exactly as recommended by Manufacturer (go to Manufacturer → EcoNet Controls → Valve).

  2. This will use the new Edge drivers, which is good as then the Valve will work offline / locally. You can verify any device is using Edge drivers by going into that device and hitting the (…) menu in upper right. A “Driver” item will appear in sub-menu (might need to open multiple times for it to show).

  3. Important note here, from my testing it will NOT work offline / locally with the Smart Things “Home Monitor” for water sensors. To get local execution setup a Routine, and then you should see a small grey house icon by the name (and details at Bottom of routine when open) to show it executes locally.

  4. Ignore anything with the SmartThings Groovy / Web IDE, it doesn’t support new Edge Drivers and shows wrong information (“placeholder” for device types, “cloud” when execution is actually local). DO NOT try to change anything there.

  5. Now, at this point you still will only have binary sensor in Home Assistant, and no control in HA / Alexa / etc.

  6. To get around this, go to the “Labs” icon on the Menu screen of the SmartThings Android app. From here select “Virtual Switch” and create a new one (this will control the water valve once setup).

  7. Once created, you’ll have to go to Automations and setup 4 routines to ensure the virtual switch controls (and stays in sync) with the real water valve. I couldn’t find an easier way.

  8. The key is to setup each one with a single “pre-condition”, then second condition where associated the virtual / real doesn’t match, and then turn on / off the virtual / real accordingly. See image for guidance -

  9. When setting these up, if you want to play it safe I’d recommend using notifications initially for actions, instead of turning on / off the real water valve. Just to be sure you don’t get into any loops. Then once you are happy with results, swap out notifications with real actions.

  10. Now, after reloading SmartThings in HA, you should have your Virtual Switch for control! This should also work with Alexa, etc.

1 Like

Thanks @some-guy-23 . Coincidently, I ended up doing almost the same thing. I like you’re idea of a prec-condition that checks they’re not already in the same state. I’ll have to update mine, which is below.

Good on you for coming back here and sharing the solution with everyone!

1 Like

@ridiz I noticed with your “sync” routines, they show local execution. That seems to be the only difference, wonder why? I tried removing pre-conditions just to eliminate that variable, but still doesn’t show local. Did you setup your virtual switch via the “Labs” in app, or some other way?

Ah, I missed that. It’s been a while but I just checked. I’m on IOS and I don’t have a Virtual Switch in the Labs menu in the ST app.

If I had to guess, I think I set up the virtual switch in the IDE. This comment says they will run local if you do it that way.

Ah, ok! I just went down that rabbit hole a bit and sounds like at some point the IDE virtual switches will be discontinued, but you can have a new “Edge Driver” style virtual switch, that will also run locally? [ST Edge] vEdge Creator: a virtual device generator for end users - Community Created Device Types - SmartThings Community

Haven’t tried it out yet, but will have to give it a shot when I get a chance!

Thanks for the heads up on the sunsetting of Groovy. Looking at my setup more closely (I almost never open the ST app), it looks like I am using the Edge driver you linked! Sorry for the misleading information!

I’m going to test my setup this weekend just to make sure everything is still working as expected.

1 Like

Thanks @some-guy-23!

SmartThings has currently pulled the ability to create virtual switches in the Android app. There is a method to do it via the IDE, but I decided to go the route of creating virtual switches using the following Edge Driver instead and everything still works great across ST, HA, Alexa and Google Home: [ST Edge] vEdge Creator: a virtual device generator for end users - Community Created Device Types - SmartThings Community

Where do you change the device type in Smartthings? I haven’t found a way to do that.
Thanks