esphome / esphome/feature-requests
SOLVED: TRIAC delayed-trigger compensation routine
- Dominant language
- No language data
- Stars
- 450
- Forks
- 29
- PR merge metrics
- No merged PRs in 30d
Description
**Describe the problem you have/What new integration you would like**
Hello,
if a TRIAC delay is decreased linearly, the output power delivered to a resistive load does not increase linearly. I thus developed the following compensation routine:
_Input:_ Relative power (0: off up to 1: full power)
_Output:_ Linearized relative TRIAC trigger delay (0: start of half sine wave up to 1: end of half sine wave, 1 when input < 0, 0 when input > 1, NaN when input is NaN)
_Relative error_ of power delivered to the resistive load: < 1e-5
[plin.zip](https://github.com/user-attachments/files/18758984/plin.zip) (7-Zip)
[Original post](https://github.com/espressif/esp-dsp/issues/76)
Cheers!
f4lc0n
P.S.: If you want ~1.4× `plin()` speedup just for **ESP32(-S3)**, see the [original post](https://github.com/espressif/esp-dsp/issues/76) for ESP32(-S3), there is a float reciprocal macro in play to achieve this…
**Please describe your use case for this integration and alternatives you've tried:**
I wanted the power delivered to a resistive load (e.g. a heater or a boiler) to be controlled linearly so I developed this compensation routine.
**Additional context**
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.