Project tutorial
Doggo Water Bowl Refill Monitor/Indicator - Part 2

Doggo Water Bowl Refill Monitor/Indicator - Part 2 © GPL3+

The sequel to Part 1 of the same video title.

  • 1,564 views
  • 0 comments
  • 3 respects

Components and supplies

Necessary tools and machines

Electric Drill
Step Drill Bit
Rotary Tool
I used a Dremel.
Ruler
For marking stuff.
Digital Caliper
For measuring the components.
Project Box
For the housing/case.
Glue Gun and Hot Glue

Apps and online services

About this project

Ok, so, yeah. This is the part 2 of this project: https://create.arduino.cc/projecthub/Heathen_Hacks-v2/doggo-water-bowl-refill-monitor-indicator-part-1-e59b80?ref=user&ref_id=550502&offset=0

I think a short story would suffice, since I have already told it on Part 1.

This is just the continuation.

Here, I talked about the assembly (not the PCB assembly of course. PCBWay handled that) and talked about the code a little bit.

I know I said on Part 1 that I will elaborate or explain the code on the 2nd part, but idk. I think the code is pretty easy to understand. I also showed the sources of the codes which you can see here, so you could do some reading there.

Yeah, I'm not good at explaining things, but I'm trying.

CHECK OUT PCBWay's Program for Engineering Students and get Sponsored on your project!

LINK: https://www.pcbway.com/sponsor.html

Don't worry, I wouldn't get anything if you decide to try their services. I just wanted to help.

Sources Used For Inspiration and Code:

http://www.gammon.com.au/switches

https://create.arduino.cc/projecthub/SURYATEJA/use-a-buzzer-module-piezo-speaker-using-arduino-uno-89df45

http://forum.arduino.cc/index.php?topic=273932.0

https://www.instructables.com/id/How-to-use-a-Buzzer-Arduino-Tutorial/

Code

Doggie Water Bowl Refill Indicator/Monitor Project FileArduino
#include "Arduino.h"
#include "LiquidCrystal_PCF8574.h"
#define LCD_ADDRESS 0x3F
#define LCD_ROWS 2
#define LCD_COLUMNS 16
#define SCROLL_DELAY 150
#define BACKLIGHT 255
int LED1 = 2;
int LED2 = 3;
int BUZZ = 4;
int RST = RST;
int switchPinCounter = 0;
int switchPinState = 0;
int lastSwitchPinState = 0;

LiquidCrystal_PCF8574 LCDi2C;

const byte switchPin = 8;

void setup ()
{
  Serial.begin (115200);
  pinMode (switchPin, INPUT);
  pinMode (RST, INPUT_PULLUP);
  pinMode (LED1, OUTPUT);
  pinMode (LED2, OUTPUT);
  pinMode (BUZZ, OUTPUT);
  LCDi2C.begin(LCD_COLUMNS, LCD_ROWS, LCD_ADDRESS, BACKLIGHT);
}

void loop () {

  switchPinState = digitalRead(switchPin);
  LCDi2C.setCursor(0, 0);
  LCDi2C.print("Refill Count: ");
  LCDi2C.print(switchPinCounter);

  if (switchPinState != lastSwitchPinState) {
    if (digitalRead (switchPin) == LOW) {

      switchPinCounter++;
      digitalWrite (LED1, HIGH);
      digitalWrite (LED2, LOW);
      LCDi2C.selectLine(2);
      LCDi2C.print("Water Lvl = SAFE");
      noTone (BUZZ);
    }
    lastSwitchPinState = switchPinState;

    if (digitalRead (switchPin) == HIGH)
    {

      digitalWrite (LED2, HIGH);
      digitalWrite (LED1, LOW);
      LCDi2C.selectLine(2);
      LCDi2C.print("Time To REFILL!!");
      tone (BUZZ, 1000);
    }
  }
}

Custom parts and enclosures

This is the layout of the PCB.
Without the grayed out parts and the connections to ground of the SWITCH and LCD.
Desktop screenshot 2018 kpret5ceyo
Used TinkerCad For 3D Mock-up
Sizzling bruticus 1eb3yoxqyq iilptiqo3p

Schematics

Water Bowl Refill Schematic.
Just match the dots and names/labels and I'm sure you'd understand how it's connected.
Doggiebowlschematic jalirgwspb

Comments

Similar projects you might like

Doggo Water Bowl Refill Monitor/Indicator - Part 1

Project tutorial by Heathen_Hacks-v2

  • 736 views
  • 2 comments
  • 4 respects

Sound Sensor Activated LEDs with LCD for Sound Level Data!

Project tutorial by Heathen_Hacks-v2

  • 1,649 views
  • 3 comments
  • 9 respects

The Vibrating Pressure Temperature Altitude Tilt Detector

Project tutorial by Kutluhan Aktar

  • 822 views
  • 0 comments
  • 4 respects

Arduino-Powered Water Bottle

Project tutorial by Md. Khairul Alam

  • 6,981 views
  • 5 comments
  • 30 respects

Simple Arduino Digital Clock Without RTC

Project in progress by Annlee Fores

  • 97,431 views
  • 24 comments
  • 84 respects

Marduino Party 1

Project tutorial by Arduino “having11” Guy

  • 1,170 views
  • 0 comments
  • 0 respects
Add projectSign up / Login