forked from Makuna/NeoPixelBus
64958ad7433345e937e8cfa867b7d27dff758ed7
* Move interrupt handling in EspBitBangMethod Move the interrupt enable/disable in to the common neoEspBitBangWriteSpacingPixels function. * Check interrupts during ESP bit-banging Rather than leave interrupts completely disabled, check in between elements. If interrupted for long enough to complete an update, retry from the beginning. We don't yield to the system context, so only interrupt processing goes on. This is intended to stave off interrupt related crashes (hard WDT resets) experienced when a too-long strand is used with a too-busy network. Essentially it trades off correctness for stability. This logic is inspired by the workaround used in FastLED. * Replace TInterPixel with TLatch when bit-banging In NeoESPBitBangMethod, remove the minimum time between pixels, and replace it with a maximum time between pixels. Use the outer function to handle the retry logic. * Support no interrupt mode when bit-banging * Add no-interrupt bit-banging method typedefs
NeoPixelBus
Arduino NeoPixel library
A library to control one wire protocol RGB, RGBW, and RGBWW leds like APA106, SK6812, WS2811, WS2812 and WS2813 that are commonly refered to as NeoPixels and two wire protocol RGB like Lpd8806, APA102 and SK9822 commonly refered to as DotStars. Supports most Arduino platforms.
For quick questions and support:
- Try the new Github Discussions
- Discord NeoPixelBus Invitation or if you are already a member of Discord Server NeoPixelBus
- Or jump on Gitter
For bugs, make sure there isn't an active issue and then create one.
Documentation
Installing This Library (preferred, you just want to use it)
Open the Library Manager and search for "NeoPixelBus by Makuna" and install
Installing This Library From GitHub (advanced, you want to contribute)
Create a directory in your Arduino\Library folder named "NeoPixelBus"
Clone (Git) this project into that folder.
It should now show up in the import list when you restart Arduino IDE.
Description
An Arduino NeoPixel support library supporting a large variety of individually addressable LEDs. Please refer to the Wiki for more details. Please use the GitHub Discussions to ask questions as the GitHub Issues feature is used for bug tracking.
7.8 MiB
Languages
C++
89.5%
C
10.5%