Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement phase shifted PWM #4034

Closed
blazoncek opened this issue Jun 27, 2024 · 2 comments
Closed

Implement phase shifted PWM #4034

blazoncek opened this issue Jun 27, 2024 · 2 comments
Assignees
Labels
enhancement help wanted in progress This pull request is currently being reviewed and, if necessary, modified

Comments

@blazoncek
Copy link
Collaborator

Implement phase shifted PWM outputs to lower the demand on PSU and/or allow 2-channel polarity changed LED strips to function properly.

The discussion about (issues with) PWM started in #3962 as a result of crashes within PWM handling code.

Requested participants: @softhack007 @willmmiles @jw2013 @tablatronix and (optional) @Jason2866
Please follow up here from #3962 (comment)

References:
https://www.hackster.io/daniel232/esp32-generate-two-180-phase-shifted-pwms-c1010f
"On ESP8266, there is a hidden, but officially supported solution for PS-PWM" by @jw2013

@willmmiles
Copy link
Collaborator

Phase shifting on ESP32 was prototyped in #4115 and merged in #4129.

willmmiles added a commit to willmmiles/WLED that referenced this issue Sep 28, 2024
Use the phase-locked soft PWM from the Arduino core to implement the
same PWM phase management as ESP32s are using.  The soft PWM code is
vendored in, as it was previously, to add the NMI workaround from Aircoookie#4035.

Completes Aircoookie#4034
@softhack007 softhack007 added the in progress This pull request is currently being reviewed and, if necessary, modified label Sep 28, 2024
willmmiles added a commit to willmmiles/WLED that referenced this issue Sep 29, 2024
Use the phase-locked soft PWM from the Arduino core to implement the
same PWM phase management as ESP32s are using.  The soft PWM code is
vendored in, as it was previously, to add the NMI workaround from Aircoookie#4035.

Completes Aircoookie#4034
willmmiles added a commit to willmmiles/WLED that referenced this issue Sep 29, 2024
Use the phase-locked soft PWM from the Arduino core to implement the
same PWM phase management as ESP32s are using.  The soft PWM code is
vendored in, as it was previously, to add the NMI workaround from Aircoookie#4035.

Completes Aircoookie#4034
@blazoncek
Copy link
Collaborator Author

I am content with current implementation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement help wanted in progress This pull request is currently being reviewed and, if necessary, modified
Projects
None yet
Development

No branches or pull requests

3 participants