Arduino controlled WATER ALARM with Telegram notification and control for f.e. your dish washer or washing machine. It can detect leaks of water with a contact cable on the floor and notifies you via Telegram and with a local alarm signal generated with a piezo buzzer.
My dishwasher outlet water tube had a small hole last week which could not be detected by the water stop function of the dishwasher because this works for the incoming tube only…
So i made this little water alarm circuit to detect any water leaks and notify me via Telegram and in addition activates an internal piezo buzzer with a very annoying alarm signal, which you should hear:
Functions:
Telegram notification and control via any of your Telegram messenger apps
Via Telegram you can stop the activated alarm even remotely
Via Telegram you can also run a test alarm to check the functionality
In the code you will find a hint how to set up a new Telegram bot to chat with you from the circuit
The circuit will only react to your own Telegram messenger ID so that no other user can activate or deactivate the device for security reasons
Your local WiFi is used to connect the board to the internet → Telegram service
When the alarm status is activated via the contact cable that detected water or with the above named test function an internal piezo buzzer will notify you locally as well
3 mounting holes are integrated in the base to hang the case on a wall or in a cabinet
Barrel jack connector to use a as long as required contact cable to the floor and to be able to hang the case higher up from the ground
All holes in the case are placed below the case to avoid water coming into the case
The case is made for a NODE MCU V3. Earlier versions of the circuit were smaller and might not fit
I use a switchable multiple plug for my dish washer so that the circuit is powered only when the dish washer is used too
The 2 open contact ends of the contact cable are taped simply to the floor you want to watch for water leaks with the circuit. The contacts itself should not be hiden under the tape and should be some millimeters away from each other to detect water leaks fast
The Node MCU V3 board is held in place with the 4 rings on the posts inside the case
The lid clicks in place and closes the case base part
A little tape stripe to tape the 2 open contact cable ends to the floor
Printing instructions:
0.2 speed profile
Supports set to overall used for the “base” part only
Wiring:
I used the jumper wires to reduce soldering actions in the first place for testing reasons. Later i will solder all connections properly
The barrel jack port will need 2 soldering points. See pictures please which of the 3 contacts are used. There is no direction you need to pay attention to for these 2 cables
For the other contacts please have a look into the table:
You will need 2 extra libraries which are named on top of the .INO
In the Arduino code please check the settings.h file to set your WiFi settings
In the settings.h file you will find a short help to setup a new Telegram bot and to find your own Telegram messengers chat ID so that the bot is able to send you messages only
The setting for your own Telegram messengers chat ID is also needed to block all other users for security reasons
In the settings.h you will also find a short help how to set up a menu for the bot to be able to access all commands with this menu in Telegram itself
Currently there a 3 commands available:
/start → shows a short help about the commands
/testalarm → activates the test alarm via Telegram and the piezo buzzer
/stopalarm → stops the alarm status
Any other text you send will be replied 1:1 to you with a note that this command is not known. This is used for communication testing and for future usage of this code for an upcoming other project ;)