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

ws2812 change from opendrain to push_pull output #44

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

TechAUmNu
Copy link

with open drain the driver doesn't work on hardware with inline resistance between the stm32 and output pins. Changing to push_pull output means it works reliably with a 1k resistor inline for pin protection.

with open drain the driver doesn't work very well on hardware with inline resistance between the stm32 and output pins. Changing to push_pull output means it works reliably with a 1k resistor inline for pin protection.
@vedderb
Copy link
Owner

vedderb commented Jul 4, 2024

The reason for opendrain is that some (most) LEDs require more than 3.3V on the data-pin. On 5V-tolerant pins (most are) you can use a pull-up to 5V and opendrain to make it work. If the pins are in push-pull the simple pull-up trick won't work. Maybe there should be an option to switch between open-drain and push-pull?

@TechAUmNu
Copy link
Author

The leds I am using say 0.7xVcc so 3.5v but seems to work fine with 3.3v.
But yes for compatibility having the option to use open drain or push pull would be ideal.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants