WaterCop Z-Wave Water Shutoff Valve (rebranded Fortrezz) $136

I was looking around for a good deal on a shutoff valve for my main water line and came across this WaterCop brand actuator and valve on Amazon which looked suspiciously like the Fortrezz one which goes for ~$430. I liked it because the valve itself looks really sturdy, plus I figured since they clearly use the same physical valve that means I could get a future upgrade from either Fortrezz or WaterCop if I ever need one. Also I read that the Fortrezz valve is the only smart valve available which uses a local device handler, which is nice in case of an internet outage. I ordered it and sure enough it was immediately recognized by SmartThings as a Fortrezz valve!

The actuator is $79.99 with free Prime shipping on Amazon, and you buy the valve separately in whatever size you need - I got the 3/4" size for $56, for a total cost of $136 + tax.

I hope this helps someone else who’s looking for a good deal on a shutoff valve.

Save the headache and just look for a Leaksmart. I got mine at Lowe’s for $49. Add the cost of 2 3/4" Sharkbite fittings and running a new 120V line and putting GFCI outlet next to where water main comes in the house and it was still <$100.

1 Like

Do you know if/how the Leaksmart will report obstructions to the hub?

Not sure how you would get an obstruction inside of the fresh water pipe. Leaksmart does confirm whether it’s open or closed after it’s done. So I would ass-U-me that like smart locks it would report an error it it somehow got jammed, it would report an error in ST.

1 Like

Got a link? The leaksmart valves I am finding are $400+

The 3/4" are $149. 1" are $199 right now at Lowes.com . I didn’t take the time to search for price fluctuations.

Calcium and/or limestone deposits. I had a situation a couple month ago, and to close the heater valve, needed Channellocks.

I bought the Watercop and with ST and Hubitat, it works correctly, well, sort of. You don’t get any error reports but at least, the valve does not say it’s closed.
When connected to Homeseer, the valve, for some strange reason, sends the report when the move starts, not when it’s completed successfully. This of course, is a HS issue but HA world is full of surprises, especially in the reliability department.

about to do the same thing, can you verify if this is still working for you?

if the question is for me, then yes, it’s all working. I have connected the valves to HE but see not reason for ST to be different; especially, given the fact that with HE, I am still using the ST DTH.
(HE has built-in driver but I could not get it to respond to Refresh via MQTT. ST driver works fine.)

Yup still works great.

are you using the Fortrezz Water Valve device handler? Using this device handler always shows the status as ‘OPEN’ no matter what state it is in. ‘Recently’ tab always shows the correct history (close or open). The default Z-Wave water valve handler does not work at all.
did or do you have this problem? if yes, did you fix this?

I didn’t have that problem as of a few weeks ago, but I just checked and yes it is doing the same for me now. Weird.

Ditto what sassnak says. I’m out of town and was concerned that my water didn’t shut off. Had it verified, and it was off even tho the tile said otherwise. I know it used to work ok.

Here’s something interesting. In the new app it is showing correctly as closed. I’m not using that app but just checked for the heck of it.

Ooh good catch. I downloaded the new app to check and it shows correctly there for me too, just not in the Classic app.

Doesn’t make much sense, does it


For an experiment, I changed the DTH to the Z-wave Water Valve just to see what would happen. I could then close the valve and the tile said closing. The valve did close but the tile never changed. And I couldn’t reopen it from the app.

Went back to the Fortrezz DTH. I can now control the valve again, but it always says closing. At least it’s different then open.

I looked at the DTH code, but even tho I can do some basic coding on that kind of stuff, I couldn’t figure out where the issue was with the DTH. So I guess ST has to fix that. Or someone with more smarts than me.

I set a tile in ActionTiles. It works and displays correctly. So I can use that from now on.

i have a fortrezz water valve, and recently went over to smartthings from domoticz - it worked flawlessly in domo, but there seems to be an issue with smartthings (classic app) that’s somewhat consistent with what you’re describing.

in my case, it never reports as “closed” in the app, but does report as “closing” indefinitely. plus, when i set up an automation to “check leaks on all leak sensors and shut the valve” it simply didn’t work. it reports that it’s closing the valve, but the valve never closes.

so, i wrote a webcore script, and that works flawlessly (as it always did when i used domo). bottom line, i think there are perhaps two issues - one is the device handler may need to be tweaked, and two there might be a bug in the classic app. but fundamentally, the valve is responsive, and as long as you control it outside of the classic app, appears stable and reliable.

There is something definitely wrong in the DTH to the classic app.

I can control my valve just fine from ActionTiles and it also reports correctly. I also have a smartapp (one I wrote) that closes and opens it automatically under certain conditions and it also works fine.

I looked at the DTH and the tile settings, but I can’t quite figure out what is wrong there. It looks ok, but I’m not an expert on that stuff.

If there are any more qualified programmers out there that might see this, here is some bits from the DTH.

This is the tile settings:
// tile definitions
tiles(scale: 2) {
multiAttributeTile(name:“valve”, type: “generic”, width: 6, height: 4, canChangeIcon: true){
tileAttribute (“device.valve”, key: “PRIMARY_CONTROL”) {
attributeState “open”, label: ‘${name}’, action: “valve.close”, icon: “st.valves.water.open”, backgroundColor: “#00A0DC”, nextState:“closing”
attributeState “closed”, label: ‘${name}’, action: “valve.open”, icon: “st.valves.water.closed”, backgroundColor: “#ffffff”, nextState:“opening”
attributeState “opening”, label: ‘${name}’, action: “valve.close”, icon: “st.valves.water.open”, backgroundColor: “#00A0DC”
attributeState “closing”, label: ‘${name}’, action: “valve.open”, icon: “st.valves.water.closed”, backgroundColor: “#ffffff”
}
}

	standardTile("refresh", "device.valve", width: 2, height: 2, inactiveLabel: false, decoration: "flat") {
		state "default", label:'', action:"refresh.refresh", icon:"st.secondary.refresh"
	}

	main "valve"
	details(["valve","refresh"])
}

}

Here’s another part that I wonder might be the problem?
def zwaveEvent(physicalgraph.zwave.commands.switchbinaryv1.SwitchBinaryReport cmd) {
def value = cmd.value ? “closed” : “open”

return createEventWithDebug([name: "valve", value: value, descriptionText: "$device.displayName valve is $value"])

}