Commit Graph
19 Commits
Author SHA1 Message Date
Michael Miller 5563ee0e42 Ws2805Methods and warning fixes (#784) 2024-03-16 21:53:57 -07:00
Michael Miller 3417f1e5bf Tlc59711 (#783)
* 2Mhz max due to timing requirements with a clock based signal?!
2024-03-16 11:21:56 -07:00
Michael Miller 7c6744da4f Rp2040 (#779)
Support x4 on each PIO
2024-03-11 09:36:13 -07:00
Michael Miller f700889c5c Fix API Change (#777)
Used to state just use 0x100, but this is incorrect on some platforms.  Recommened now to just use SIG_GPIO_OUT_IDX.
2024-03-07 09:02:50 -08:00
Michael Miller 35910a2376 corrections (#769) 2024-02-16 11:08:37 -08:00
Michael Miller 30fbdd8788 style cleanup 2024-02-07 16:36:41 -08:00
Will Miles 64958ad743 Esp bitbang interrupt workaround (#759)
* 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
2024-01-28 15:18:19 -08:00
Michael Miller a89c09dc53 Esp32 i2s jitter (#754)
* ESP32 I2s clock divider calculations improved
* ESP32 I2s DMA silence block data improved
2024-01-03 16:58:02 -08:00
nick-diel b7f0b44aa5 Added stream flush to destructor (#753) 2023-12-26 08:36:28 -08:00
Michael Miller 5b6e6f514f Update PixieStreamMethod.h (#752) 2023-12-23 15:05:55 -08:00
nick-diel 99f8bcf6f7 Support for Adafruit Pixie (#749)
* Support for Adafruit Pixie

* Updated based on PR review to align with library style and added Pixie constructor to NeoPixelBugLg
2023-12-13 16:33:42 -08:00
Michael Miller 9a42d3e7aa debug error check (#731) 2023-09-02 07:56:35 -07:00
Michael Miller 029f71eb15 Gs1903 (#725) 2023-07-09 09:59:47 -07:00
Michael Miller 1cf6b3187b Avr APA106 (#721)
* Apa106 timing support for 600Kbps

* interpixel time by speed object
2023-06-26 06:32:45 -07:00
Michael Miller 66a6ae41d4 Mbi6033 (#719)
* two wire protocol
* due to unique reset using clock pin, supports bit bang only methods.
2023-06-19 10:01:55 -07:00
Michael Miller 567faa6c02 Color feature refactor (#716)
* refactor color order design within a color feature using a template to reduce duplicate code making it easier to add similar features with different order
* fix warnings
2023-06-12 20:10:06 -07:00
Michael Miller 1cb18aea82 disconnect mux pin (#713)
https://github.com/Makuna/NeoPixelBus/issues/704
2023-06-05 18:33:51 -07:00
Frank 512f27a88f NeoEsp32I2sXMethod::IsWriteDone() misses const attribute (#696)
adding the missing `const` attribute to NeoEsp32I2sXMethod::IsWriteDone().
See https://github.com/Makuna/NeoPixelBus/issues/695
2023-05-02 09:16:50 -07:00
Michael Miller c74febefef Method File Cleanup (#683) 2023-04-09 10:02:49 -07:00