Project Home Automation system
A home automation system that allows users to add and control various devices in their homes. They can automate their devices and generate system report for the devices. You can also add different section in a house .
Commands to start the application
- Ensure Python 3.x is installed.
- Run main.py using the following command :
python main.py
Supported Operating systems
- Windows
- MacOs (Some commands might be different)
- Linux
Prerequisites and Installation Steps
We have install the following libraries :
- customtkinter (need to be installed)
- Pillow (need to be installed)
- requests (need to be installed)
pip install customtkinter
pip install Pillow
pip install requests
Features Implemented
- Login and signup Page : A secure interface for users to create accounts and log in to the system.


- Add Sections : Users can create and manage different sections of a house, such as bedrooms or Living room.

- Add Devices : New Devices like bulb , cctv , thermostat, etc can be added to specific sections.


- View Device Settings : Access and modify the settings of each individual device from the home page.


- Filter Devices by Section : Easily filter and view devices based on the section they belong to for quick navigation.

- Generate System Reports : Generate detailed system reports in .txt format for a particular device type, providing comprehensive insights.

Libraries used
- customtkinter
- tkinter
- csv
- Pillow
- requests
- io
- colorsys
Classes and Modules made
1.Members: This class handles the login and sign-up functionality for users.
2.Deivce : A class designed to manage various devices. It includes multiple device types as subclasses, enabling users to update their attributes efficiently.
3.Houses: This class is responsible for managing different sections of a house. It includes device types as subclasses, allowing users to organize and update their attributes.
-
Csv Handler : A module dedicated to managing all CSV files, including Houses.csv, Members.csv, and Devices.csv.
-
UI : This module oversees the graphical user interface (GUI) of the application, ensuring a seamless user experience.
-
Homemanager : A module focused on functionality for adding and removing devices from specific sections within the house.
-
Status Report : A module that generates detailed .txt status reports for specific device types, providing insights into their attributes and current state.
Name | Roll Number | Role |
---|---|---|
Vedant Mundada | BT2024268 | GUI and Integration |
Saarthak Singh | IMT2024082 | Device class and system report |
Ravva Sai Sujay | IMT2024086 | Login and singup page |
Saanvi Choudhary | BT2024223 | Houses class |
Kaushiksai Yakkala | BT2024240 | Devices subclass |