Skip to content

MahimanaGIT/automatic_curtain

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

58 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Automatic Curtain

Elevate your home with IoT-enabled smart curtain controller for effortless living

⭐️ Why Automatic Curtain?

Automating blinds can provide convenience and energy efficiency. They can be programmed to open and close at specific times of the day, allowing natural light in to reduce the need of artificial lighting. They can also be controlled remotely, making it easy to adjust the amount of light and privacy in a room without having to physically adjust the blinds. Additionally, automatic blinds can help to regulate the temperature in a room.

🔥 Watch the video

Video

✨ Features

  • 😎 Easy to set up and integrate
  • 📱 Remote control - the ability to open and close the curtains with precision using Alexa app
  • 🛡 Safety feature - the ability to detect obstacles and stop the motor to prevent injury or damage to the curtains
  • 💅 Manual Override - the ability to manually operate the curtains in case of Alexa not available
  • 🚀 Motorized operation - the ability to open and close the curtains using a motor, rather than manual operation
  • 📦 Smart home integration - the ability to connect the blinds to other smart home devices such as thermostat using alexa. Provides added convenience and energy efficiency

🚀 Getting Started

For how to use and build your own, refer 🗒 Manual

👨‍💻 Coding Style

Steps to setup for development:

  1. Clone the repo

  2. Setup clang format:

    • Install clang format extension in VS Code:
      Name: Clang-Format
      Id: xaver.clang-format
      Description: Use Clang-Format in Visual Studio Code
      Version: 1.9.0
      Publisher: xaver
      VS Marketplace Link: https://marketplace.visualstudio.com/items?itemName=xaver.clang-format
    
    • Add following lines to settings.json in your VS Code:
    "editor.formatOnSave": true
    

    Now, everytime you save your code will automatically be formatted according to clang

  3. Setup ESP32 Arduino Core using this guide

  4. Setup Libraries

    • The link to all the libraries can be found at the end of this page. A compressed folder of all the libraries can be found in the folder
    • You can download the libraries using the links or just copy the extracted libraries from the above compressed folder in the ~/Arduino/libraries or your customized library folder.

Optional setup for development:

  1. Setup doxygen:
    • Install doxygen and graphviz (doxygen uses dot from graphviz to generate graphs):
      sudo apt-get install doxygen
      sudo apt-get install graphviz 
      
    • Currently, the DOT_PATH is hardcoded in Doxyfile as /usr/bin/dot on line no. 2398, one can check if the dot path in their system is same or not by running
      which dot
      
      If the path is different, update it in the doxyfile
    • Generate doxygen files by running the following command in the terminal:
      doxygen Doxyfile
      
    • The files will be available in doxygen folder, click on or open index.html in html folder with any browser and you would be able to browse the documentation

🛡️ License

Automatic Curtain is licensed under the MIT License - see the LICENSE file for details.

🗒 References:

Thanks to the following repos for making the journey easier for the project:

  1. AsyncTCP
  2. Fauxmo
  3. ESPAsyncWebServer
  4. FastLED
  5. TMCStepper

For awesome readme help, referenced novu

✏️ Contributors

💻 Need Help?

We are more than happy to help you. If you are getting any errors or facing problems while working on this project, join our slack and ask for help. We are open to discussing anything related to the project.

About

This repo is home to the source files of IoT enabled and Alexa compatible automatic curtain controller

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages