Skip to content

Latest commit

 

History

History
70 lines (47 loc) · 2.53 KB

README.md

File metadata and controls

70 lines (47 loc) · 2.53 KB

catFeeder

catFeeder is an Arduino (ESP8266) Telegram controlled cat feeder which I use to feed my cats when I'm away.

About the ESP8266:

Wikipedia:

The ESP8266 is a low-cost Wi-Fi chip with full TCP/IP stack and MCU (microcontroller unit) capability produced by Shanghai-based Chinese manufacturer, Espressif Systems.

Click here to access the full article

Main features:

  • Controlled via Telegram bot.
  • Wifi connection.
  • Possibility to check how much food can be still delivered with an HC-SR04 ultrasonic ranging sensor.
  • Multi access point (can manage more than one SSID / password).

Bill of materials (with shipping):

  • 1 x NodeMCU V3 dev board (esp8266): ~2.65 USD.
  • 1 x NodeMCU Base Breadboard (optional): ~1.88 USD.
  • 1 x L298N Dual H bridge driver: ~3.33 USD.
  • 1 x HC-SR04 ultrasonic ranging sensor: ~1.50 USD.
  • 1 x 12V 2A Power Supply*: ~6.58 USD.
  • 1 x Cereal dispenser: ~10.00 USD.
  • 1 x 80x25x1.8cm piece of wood: ~6.00 USD.
  • 1 x Plastic enclosure for PSU: ~4.00 USD.
  • 1 x 4 pieces lot 5x8mm couplings: ~5.50 USD.
  • 1 x NEMA 17 Motor 1.7A: ~9.00 USD.
  • 1 x Misc. cables: ~2.00 USD.

Total cost: 52,44 USD.

Schematics:

There's actually no need of perfboard / protoboard. However, in order to mount the HC-SR04 on the top of the cereal dispenser you may use a hot glue gun.

Parameters to be updated on the .ino file:

Define how many steps will the stepper motor rotate in order to deliver one dose:

const int stepsPerDose = 100;

Define de max. distance the ultrasonic sensor measures when the cereal dispenser is empty:

float max_food = 23.50;

Replace "XXXXXXX" with your Telegram Token:

#define BOTtoken "CHANGEME_TELEGRAM_TOKEN"

Add one of those statements for each SSID you want to be able to connect:

wifiMulti.addAP("CHANGEME_SSID1", "CHANGEME_SSID1_PASS");
wifiMulti.addAP("CHANGEME_SSID2", "CHANGEME_SSID2_PASS");

Necessary libraries:

#include <Stepper.h>
#include <ESP8266WiFi.h>
#include <ESP8266WiFiMulti.h>
#include <WiFiClientSecure.h>
#include <UniversalTelegramBot.h>

How to control the cat feeder via Telegram bot: