Water meter selfmade

Update to the software:

Meanwhile also a Docker-Container for the image processing is available: https://hub.docker.com/r/jomjol/wasserzaehler

Have fun in testing and I’m looking forward to your feedback,

jomjol

1 Like

Because this is an international forum, please stick to using English in your replies, even when replying to a fellow German speaker. That way a much wider audience can benefit.

Also, I believe I’ve restored all your posts but let me know if I missed one. The forum software blocked a bunch because you are a new user and had lots of links so it thought they looked like spam.

Thanks for the hint - I will stick to English. It would be great, if I could post some links again. As my system has several compoments and I wanted to keep the community up to date. Yesterday I tried to inform about an update in an GitHub for the image server, but it was refused. For sure it is no spam. Should I try again, now?

I manually bumped you up to a basic user. I think that will let you post more than one link to a given domain now.

Thanks a lot!

Hello everybody,
I have developed a new hardware version, which uses the ESP32-CAM with OV2640. This makes everything a lot easier and cheaper.

Please find the details find on Thingiverse: https://www.thingiverse.com/thing:3860911

Enjoy and have fun,
Jomjol

2 Likes

Maybe im just a bit daft and really new to this stuff, but im struggling with brownout’s and when i disabled the brownout thingy, i got another error saying Guru meditation error LoadProhibited.

Any ideas on this? I am using an ESP32-Cam and flashed it fine with an FTDI232.

Edit; nevermind i figrued it out :stuck_out_tongue: Better idea to put 5V on the actual 5V pin

Yep… That should solve your brown out problems…

Got it working eventually. Only thing im struggling with is the image processing. After running the command http://server-ip:3000/?url= http://IP-ADRESS/capture_with_flashlight?quality=10&size=UXGA

The images only appear as broken icons. It doesnt seem to actually cut and do anything. I can see in console that there is a resource error, for not finding rot.jpg and some others. Any ideas?

Hello,

I’ve been working on the same thing with a slightly different approach, but I’m also using a esp32-cam module to get an image of the water meter. Just for prototyping I use a Pringles can. What I am struggling with is the fact that the build in LED is way to bright and giving me reflections on the glass on the counter.
Next thing I’m trying out is to paint the can with a dull black color and I’m connecting a white LED externally with a potentiometer. That because dimming the internal LED with PWM produces black bars in the image… more or less obvious.
What action have you taken to get a good lightening situation?

The error tels me, that the very first image processing is already not working (it converts the input to the internal picture “rot.jpg”). This is most probably, because the image source could not be loaded. This could be because of the additional parameters in the “url=…” parameters, e.g. there are two “?”, that might disturb it. Honestly I never tried such a long parameters url as image source.
One work around can be, to put the url direclty into the config.ini like following:

[Imagesource]
URLImageSource=http://IP-ADRESS/capture_with_flashlight?quality=10&size=UXGA

I did not take any hardware action on the camera or LED. I did the following things:

  1. Wait about 3-5 seconds after turning the LED on, to let the automted brightness adaption work. In my ESP32-CAM code, there is a default waiting time of 5 seconds.
  2. I only have one pretty clear reflection and I rotate the camera, until it is at a position on the glas, where it does not disturb.

Best regards,
jomjol

Thanks for the hint with the brightness adaption, that was clearly the point.
May it be possible for you to provide the server side code/docker/whatever for a raspbian installation?

You can find a link to the Docker and the code itself in the very first post. The easiest way is to use the docker container as the installation of the Keras/Tensorflow environment is sometimes a bit tricky.

Here are the link again:
Docker: https://hub.docker.com/r/jomjol/wasserzaehler
Code: https://github.com/jomjol/water-meter-system-complete

Have fun,
jomjol

Hello all,

meanwhile the image recognition server as well as the docker container for an easy implementation has made a lot of progress. It is available in version 5.3 and can be started on a system with armv4 processor, such as Raspberry PI3 or 4, as well as on a normal Linux server starting from a Intel Core 2 processor onwards. Just check out the Docker main page: https://hub.docker.com/r/jomjol/wasserzaehler

Best regards,
jomjol

1 Like

Hey all,

meanwhile a graphical WYSIWYG tool is available to support the setup of the server (extract reference images, ROIs, parameters, …):

http://wasserzaehler.ignorelist.com

It is still in beta state, therefore I kindly ask for feedback and a bit patience.

Best regards,
jomjol

2 Likes

Hi,
This looks like a perfect starting point for my liitle project. I have an old heat pump (NIBE 1110) which does not have any documented discription of the interface. With OCR and a couple of small relays to press the push butyons I would like to browse throuh all menu items and collect the characters so I can process them using Arduino and/or Raspberry pi. Where can I find the latest SW?
I want to generalize it so it can work for any character display with pushbuttons.

You can find the code on github: GitHub - jomjol/AI-on-the-edge-device

You find a release branch (master) and a work in progress branch (rolling). Would be interested on your results.

Best regards,
jomjol

1 Like

Thanks for this great software! I set up a little variation:

  • used your docker container from dockerhub, works perfectly
  • attached an old smartphone with the app “camera auto shooter” on my water meter, made the fixture by cutting a milk tetra pak to fit and hold

Camera auto shooter app is uploading a pic to a ftp server every 2 min and from there I process with your docker container.

So far, so good!
One question:
I’d like to do something like monitor my consumption and find out anomalies, best on presence detection, washing machine/dishwasher running and water consumption

Anyone knows an open source project to base on?