Installing a Water Meter Reader at City Hall

As one of the households in my Social Consumption Project project moved out of town, I was left with a spare Ledbetter board and Raspberry Pi to deploy elsewhere. So I turned to the City of Charlottetown’s Sustainability Coordinator with the suggestion that I install this in City Hall. And she readily agreed. And today was install day.

In preparation, I enclosed the Pi and the breakout board in a new enclosure (as detailed here):

Red Rocket Pi

I tested the updated setup here in my office in The Guild for a week; here’s the daily water consumption in litres over that week (yesterday there were three shows in the theatre, so lots of washroom use, hence the uptick in water consumption):

Water Consumption in The Guild for a week

This proved robust (the tin container interfered with neither the USB wifi dongle nor the Ledbetter board’s abilities) and so I was ready to install in City Hall. I loaded up my bicycle and headed that way:

Bicycle Loaded up for City Hall

The first task at City Hall was to locate the water meter and obtain its serial number. With some guidance from Public Works, we headed to the basement and found it on the Queen Street side in the utility room:

City Hall Water Meter

On the wall-wide was the Itron radio meter reader, with its serial number facing the wall, so I had to stand on a chair and use my mobile phone’s camera to take a photo of it, which took a few tried, but ultimately worked:

City Hall Water Meter Reader

The meter’s serial number is the big number – 26856737.

Next, we found the City Hall electricity meter outide the building in the alley off Kent Street:

City Hall Electricity Meter

I knew enough from experimenting here at The Guild that this is a 3 phase meter (the 3PH and the meter type of 8 next to the bar code are the giveaways), and that, as a result, the Ledbetter board wouldn’t be able to read it because it’s specifically programmed to skip over the frequency range of that meter type, so we set electricity meter reading aside and concentated on water meter reading.

Up on the second floor of City Hall I got connected to the guest wireless network. This is a closed network, so I needed a wifi password to connect to it, which meant that I had to connect the Raspberry Pi to a keyboard (which I brought) and a monitor (which I borrowed, via a HDMI-to-VGA adapter I brought along just in case). Connecting to the wifi was no problem, but I soon discovered a couple of limitations of the City Hall network setup:

  1. Devices connected to the network cannot see each other, even if they’re on the same subnet. This isn’t unusual for a guest wifi network, as its primarily intended for visitor use, and visitors would have no need to have their devices see other devices on the network; for my purposes, though, it meant that I couldn’t connect to Node-RED running on the Pi from my MacBook Air on the same network, which made it hard to see if things were working properly.
  2. Devices connected to the network cannot connect to the Internet on port 22, which prevented me from SSHing, or tunnelling over SSH, to my external database server to see if data was flowing from Node-RED to the database.

I was able to work around these issues by connecting my MacBook Air to a wifi hotspot on my Moto G mobile phone, which allowed me to SSH to my external database server and to confirm that data was, indeed, flowing from the water meter with serial number 26856737 that we’d found in the basement; I could then add the serial number to my list of recognized meters, and the data started to appear on my internal dashboard:

Meter Reader Dashboard

With everything working as it should, I unplugged everything, set the “Red Rocket Pi” in an out-of-the-way corner, and left it to continue to log data.

The city’s sustainability committee now has to meet to decide whether the data on City Hall’s water consumption can be made public; that should happen in the next few weeks.