Skip to content

This automated pet feeder system ensures your furry friends are fed on time, every time! The system combines hardware components (load cell, servo motor, ESP8266, and Micro:bit) with a custom Java application to schedule and monitor feeding times. The system precisely measures food weight using a load cell, dispenses food with a servo motor.

License

Notifications You must be signed in to change notification settings

ImRoodyDev/PetFeeder-BitbyBit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

8 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

BitByBit Logo BitByBit

🐾 Automated Pet Feeder System

Image Image

THAUS The Challenge Project

Status License Challenge Project

model-animation.mp4

🌟 Project Overview

This automated pet feeder system ensures your furry friends are fed on time, every time! The system combines hardware components (load cell, servo motor, ESP8266, and Micro:bit) with a custom Java application to schedule and monitor feeding times.

The system precisely measures food weight using a load cell, dispenses food with a servo motor, and connects to a centralized server to store feeding data and allow remote management.

🌟 UI

bandicam.2025-01-20.16-03-59-072.mp4

πŸ“ Repository Structure

πŸ” Components

3D Model 3D Model

The /3DModel folder contains all the STL files and design documents for the 3D printed components of the pet feeder. These parts were designed to fit the electronic components perfectly while maintaining an aesthetically pleasing look.

Java JavaFX Application

The /Application folder houses the Java application that provides a user interface for setting up feeding schedules, monitoring food levels, and viewing feeding history. Built with JavaFX for a modern, responsive UI that communicates with the server to send commands to the feeder.

ESP8266 ESP8266

The /ESP8266 folder contains Arduino code that runs on the ESP8266 WiFi module. This code handles communication between the physical feeder and the server, as well as controlling the servo motor based on received commands.

Micro:bit Micro:bit

The /MicroBit folder includes the code that runs on the BBC Micro:bit, which serves as a secondary controller and provides additional functionality to the system.

Node.js MySQL Server

The /Server folder contains the Node.js backend that acts as the middleware between the Java application and the feeder hardware. It uses Express for API endpoints and Sequelize ORM with MySQL to store feeding schedules, history, and configuration data securely and efficiently.

πŸ’» Technologies Used

Arduino Java JavaFX Node.js Express MySQL Sequelize ESP8266 Micro:bit

βš™οΈ Setup Instructions

  1. Print the 3D model components
  2. Assemble the hardware according to the schematics in the documentation
  3. Flash the ESP8266 and Micro:bit with their respective code
  4. Set up the server:
    cd Server
    npm install
    # Configure .env with your MySQL credentials
    npm start
  5. Launch the Java application and connect to the server
  6. Configure your feeding schedule and enjoy!

πŸ† Challenge Project Story

I didn't win the trophy for this school challenge, but I felt it needed to be posted because I worked incredibly hard on this project. It represents days without sleeping (a lot of sleepless nights), troubleshooting, and determination to create something functional.

Every line of code, every 3D print, every circuit connection has a story of persistence behind it. This project taught me that success isn't just about winning trophiesβ€”it's about what you learn along the way.

I'm a warrior made by @imroodydev, ready to tackle any coding challenge! Hopefully, this project showcases my skills and dedication as I search for employment opportunities in the tech industry.

πŸ“¬ Contact

Made with love By imroodydev

About

This automated pet feeder system ensures your furry friends are fed on time, every time! The system combines hardware components (load cell, servo motor, ESP8266, and Micro:bit) with a custom Java application to schedule and monitor feeding times. The system precisely measures food weight using a load cell, dispenses food with a servo motor.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published