ADC SWM150 - Smart Water Valve with Meter

Hello Community members,

I wanted to start a thread specific to this ZWave water meter
ADC-SWM150, sold by alarm dot com and made by Building36
The key reason I like this:

  1. I’m at a place where I am offline, no cloud, so this works perfectly over Z-Wave
  2. It has low flow, high flow and water shut offline
  3. Extremely sturdy and well made

Note: They do have another version of it, which is just an actuator, and not a meter.

I have been using it for a day now, and it does a very good job of recording events.
But since currently it is not fully supported in ZWave JS, it is lacking its full potential.
This thread is to try to bring it all together, specific to this hardware.

I saw here posts last year by Anto79-ops, that he was working with Zwave team to get this integrated

I still don’t see it there yet.

This is what I’m currently getting out of it (same as Anto79-ops)

I would really hope that it can show up in Zwave Integrated. I can offer testing.
In the meanwhile any help on:

  1. How do I change Liters per Min to Gallons per Min? {Config page}
  2. How do I get Water consumption to record, right now it just says 0.0 Pulse count?
  3. I would like this water consumption to be pulled into my energy dashboard. How can I do that? Or do I have to wait until it is integrated into Zwave JS. Currently in the dashboard, if I go try to add Water, it says no matching statistics found. Do I have to make a sensor which reads the ADC-SWM150? Any help with that?

Thank you.

Here is the Config Page:

And here is the History of flow, which is extremely accurate

If you find out how much liters fit in your gallon you can work’a’round it with a template sensor :point_down:

You have a lot’s of pressure on your system! 3,500 l/h translates to about 60 l/min which would be 1 liter per second - never saw this coming out of a ordinary hose I must admit :joy: You probably don’t need a high-pressure cleaner at all :sweat_drops:

Thanks, I will have to try and play with all this. Still not very adept it scripting.

PS: On the pressure. Standard pressure 65 PSI, but that original one you see, is from when my plumber was installing the meter with me, so it was just free flowing and open on one side.

That gives roughly 4.5 bars which can translates to something more or less 4.5 liters per minute with a typical 3/4 inch tubing and maybe a 100 meter pipe run. :thinking:

Even your 2000l/h peaks translate into ~33 liters per minute which should result in a pressure more than 5 times the one you are expecting/having. :boom:

Beside typical household plumbing (at least in europe) often is made using hardware which was designed for a maximum of 10 bar (~145 PSI) - this often includes pipes/connectors/valves etc. :potable_water:

That just should result in a flow based on your 65 PSI and not much more actually :man_shrugging:

It also looks your device isn’t updating for quite some time before 5:00 AM :no_entry_sign::signal_strength:

In all it looks like to me all this big spikes (>1000 l/m) you have are actually wrong readings - I expect the “real” maximum water flow to the usage between 10 and 12 PM where it looks to max out at around 250l/h or around 4.2l/min which could very well fit with your 65 PSI (~4.2 bar). :arrows_clockwise:

Do the totals from the smart water you have say the same as your non smart water meter? :stopwatch:

I think, that first line can be ignored, since that’s when I plugged in the meter for the first time, and it was doing Caliberation. The one just before 5 am is accurate. That is when my Sprinklers go off. It is showing 1800 Liters / hour peak. And that is accurate, which is about 475 Gallons per hour.

But barring the debate on PSI / BAR and max flow rate.

I’m really trying to build the template sensor to take the liters per min and give me gallons per min, and then create a utility meter.

This is the sensor “sensor.smart_water_valve_meter_water_flow”

Also @orange-assistant , I’m double checking your math here. See the table I shared for US standard 3/4th inch pipes in a house.

And for example, new low flow showers work at 2.5 GPM (9.5 Liters / min). Where by your math above says max (4.2 Liters / min).

Please do that! I’m not fluid in freedom units at all :wink:

Does your chart take any pipe(length) into account or is it a simplified/theoretical calculation? As longer the pipe runs are as lower the pressure gets :chart_with_downwards_trend:

Our (not “low flow”) shower works with the pressure provided (~4 bar). Just so you have a comparison: We also get spikes but they are typically not more than 50% (~6l/m) than the permanent flow (~4l/m) :point_down:

Ya seems like that it is reporting within its limits.
here is another user’s graph

I checked here: Alarm.com ADC-SWM150 Smart Water Valve and Meter

but the specs doesn’t list any details about the flow sensor itself. Do you have any knowledge about it?

Just to compare my $10 flow meter (Model YF-B5/B6 - with integrated temperature probe) has the following specs: :point_down:

  • Start Flow Range: 1.5L/min
  • Flow Range: 1-28L/min
  • Accuracy [in 1~25L\MIN]±3%
  • Flow pulse characteristics (6.6*Q) Q=L/Min±3%
  • output pulse duty cycle 50% ± 10%

I expect that a product which costs north of 500 quid is based on a more accurate sensor than my cheap DIY build :man_factory_worker:

actually, the SWM-150 has 2 types of sensors, one is for high flow (3 to 60 L/min) and one if for low flow as low as 0.1L/hour, like dripping faucets.

@orange-assistant The low flow sensor is designed to detect ANY movement of water. Here are some experiments I did. It detected this leak.

1 Like

Ok a huge huge thanks to @petro, @Anto79-ops and @karwosts (along with others on Discord), this meter is now working and reporting perfectly in the Energy Meter.

Until it is fully integrated in Zwave JS, you can use the below code (which I’m a messenger for, and Anto with petro really wrote that, thanks again, and it works). And you can use some fun automations with it.

Steps are basically:

  1. Get it installed professionally at first entry to your house (so you can measure everything, including irrigation. Take care of all the weather proofing etc, I got an electrician and plumber)
  2. Make sure to add a water expansion tank to your water heater (if traditional) as this valve has a check valve.
  3. Add it to Zwave
  4. And then you need to do some YAML programming. Basically creating template sensors etc. And if you live in US and want this in Gallons per minute, here is the code.

Note on the code: This unit by default reports in Liters per Hour on its default created sensor (you can check the graph). I wanted it to report it in Gallons per minute (GPM)

homeassistant:
  customize:
    sensor.water_consumption:
      unit_of_measurement: gal
      device_class: water
      state_class: total_increasing
​
  - platform: integration
    unique_id: [CREATE ONE FROM https://www.uuidgenerator.net]
    source: sensor.gpm_water_consumption
    name: Water Consumption
    round: 2
    method: left
    unit_time: min
​
template:
  - sensor:
    - name: "GPM_Water_Consumption"
      unit_of_measurement: gal/m
      state: "{{ states('sensor.smart_water_valve_meter_water_flow')|float * 0.264172/60 }}"
      availability: "{{ is_number(states('sensor.smart_water_valve_meter_water_flow')) }}"
      state_class: measurement
      unique_id: [CREATE A DIFFERENT ONE FROM https://www.uuidgenerator.net]
1 Like