Skip to content

Commit

Permalink
docs: documentation
Browse files Browse the repository at this point in the history
  • Loading branch information
pmarchini committed Dec 7, 2022
1 parent 396dbd6 commit 9450ada
Showing 1 changed file with 59 additions and 2 deletions.
61 changes: 59 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,55 @@
# Esp32Dimmer
Esp32-idf zerocrossing TRIAC dimmer library
# ESP32IDFDimmer

This library provides an API to control dimmer devices using the ESP32IDF. It supports both toggle and normal modes, and allows you to set the power levels of the dimmer.

### Prerequisites
- ESP32 board with ESP-IDF v4.1 or higher
- A dimmable AC load

### Installation
Clone the project from the repository and add the library to your project.

### Usage
1. Include the library header in your program
```
#include "esp32idfDimmer.h"
```
2. Instantiate the dimmers.
```
dimmertyp *ptr_dimmer;
dimmertyp *ptr_dimmer_2;
ptr_dimmer = createDimmer(TRIAC_1_GPIO, ZEROCROSS_GPIO);
ptr_dimmer_2 = createDimmer(TRIAC_2_GPIO, ZEROCROSS_GPIO);
```
3. Start the dimmers.
```
begin(ptr_dimmer, NORMAL_MODE, ON, _50Hz);
begin(ptr_dimmer_2, NORMAL_MODE, ON, _50Hz);
```
4. Set or get the power of the dimmers.
```
// Set the power level to 50
setPower(ptr_dimmer, 50);
// Get the current power level
int powerLevel = getPower(ptr_dimmer);
```

## API

The library provides the following API methods:

* `createDimmer` - creates a new dimmer object
* `begin` - starts the dimmer
* `setPower` - sets the power level of the dimmer
* `getPower` - gets the current power level of the dimmer
* `setState` - sets the state of the dimmer (on/off)
* `getState` - gets the current state of the dimmer
* `changeState` - changes the state of the dimmer (on/off)
* `setMode` - sets the mode of the dimmer (toggle/normal)
* `getMode` - gets the current mode of the dimmer
* `toggleSettings` - sets the toggle range of the dimmer

## Example schematics

Expand All @@ -11,3 +61,10 @@ Esp32-idf zerocrossing TRIAC dimmer library

![image](https://user-images.githubusercontent.com/49943249/194775053-0badd3f8-0c23-4a86-8843-abe2f994f5b3.png)

## Contributing

We welcome contributions to this library. Please open a pull request or an issue to get started.

## License

This library is released under the MIT License.

0 comments on commit 9450ada

Please sign in to comment.