Repository navigation
Releases: ronny-antoon/AccessoryModules
Release list
v7.9.1
v7.8.0
v7.0.0
v6.0.3
Fix Blind not updating that moving. Add a if the blind moved 1% then call the notfy callback
v6.0.2
v6.0.1
Merge pull request #5 from ronny-antoon/4-boiler Add get/set duration time
v6.0.0
v5.5.5
v4.1.1
v4.1.0
AccessoryModules Library
The AccessoryModules Library provides a collection of C++ classes representing various smart home accessories. These accessories include blinds, boilers, buttons, doorbells, door locks, fans, light bulbs, outlets, and switches. The library aims to simplify the development of applications for controlling and monitoring these devices in a smart home environment.
Table of Contents
- Introduction
- Features
- Installation
- Dependency
- Usage
- API
- Example
- License
- Contributions
- Platformio Registry
Introduction
The AccessoryModules Library simplifies the management of various accessory modules in ESP32/Arduino projects. It provides abstract interfaces for controlling accessory states, offering methods for turning on/off, toggling, and checking the current state and more as more accessories will added.
These modules are designed to be controlled through a relay module and a button module, with the flexibility to trigger status changes either through user input or app commands.
Features
The library consists of several accessory modules, each encapsulated in a separate C++ class.
The library currently supports the following accessories:
- Fan Accessory
- Light Bulb Accessory
- Outlet Accessory
- Switch Accessory
- Button Accessory
- Blind Accessory
- Boiler Accessory
- Doorbell Accessory
- Door Lock Accessory
Each accessory class extends a common interface, providing consistency in usage.
Installation
Method 1:
To use the AccessoryModules library in your PlatformIO project, follow these steps:
-
Open "platformio.ini", a project configuration file located in the root of PlatformIO project.
-
Add the following line to the
lib_depsoption of[env:]section:
ronny-antoon/AccessoryModules@^4.1.0 -
Build a project, PlatformIO will automatically install dependencies.
Method 2:
To use the AccessoryModules library in your Arduino project, follow these steps:
-
Download the latest release from the GitHub repository.
-
In the Arduino IDE, click "Sketch" -> "Include Library" -> "Add .ZIP Library" and select the downloaded
.zipfile. -
Make sure to link your project with the necessary ESP-IDF libraries for NVS support.
Dependency
The library depends on the following libraries:
Usage
Include the appropriate header file for the accessory you want to use in your project. Each accessory class is designed to provide a set of methods for controlling and monitoring the corresponding device. Refer to the Classes section for details on each class.
API
The AccessoryModules Library provides abstract interfaces and implementations for different accessory modules. For detailed documentation and usage examples, refer to the header files in the source code.
Example
Explore example sketches for each accessory module in the "examples" directory.
License
This library is provided under the MIT License. You are free to use, modify, and distribute it as needed.
Contributions
If you'd like to contribute to the Library, please follow these guidelines:
- Fork the repository.
- Make your changes and document them.
- Submit a pull request.
Author
This library was created by Ronny Antoon. You can contact me at [ronny.antoon@gmail.com] for any questions or feedback.
Platformio Registry
https://registry.platformio.org/libraries/ronny-antoon/AccessoryModules