Gregg
a21cc0679d
Add two-wire addressable DotStar RGB LEDs to Pixel.h
...
Pixel.h now contains Pixel() and Dot() classes.
Dot() class uses more streamlined methods; must next update Pixel() to use similar methods, which will allow Pixel and Dot to be more "interchangeable".
2022-02-05 09:17:56 -06:00
Gregg
d2bbd4f56c
Added logic for RGB vs. RGBW
...
Tested with original 8-pixel RGB and 60-pixel RGBW. Works as expected.
2022-01-29 18:26:17 -06:00
Gregg
a09b8d0b85
Update Pixel.cpp
2022-01-22 07:18:19 -06:00
Gregg
95b41fd929
Revert "Update logic so Pixel uses only ONE channel and shares across all instances"
...
This reverts commit 4af3a22764 .
2022-01-22 07:09:48 -06:00
Gregg
4af3a22764
Update logic so Pixel uses only ONE channel and shares across all instances
2022-01-21 21:56:51 -06:00
Gregg
e060856b78
corrected an issue in loadData ISR that would cause a hang
...
Also updated Pixel example with Knight Rider Effect.
Testing on C3 seems to be working. Must test on S2 and ESP32 next.
2022-01-20 21:01:31 -06:00
Gregg
4419a91bef
verified functionality on ESP32-S2
2022-01-17 13:15:24 -06:00
Gregg
fd3955f0c2
verified functionality on ESP32 original
2022-01-17 12:52:09 -06:00
Gregg
b6d21fd2c0
streamlined identification of interrupt masks and memory size
2022-01-17 12:36:02 -06:00
Gregg
89f0d0dd94
verified works on C3 when either channel 0 or 1 is used
2022-01-17 11:30:55 -06:00
Gregg
5f513c4c34
updated
2022-01-17 08:25:26 -06:00
Gregg
79c028c057
moved loadData into interrupt
2022-01-17 07:16:31 -06:00
Gregg
40c05bd53f
some more cleanup
...
Next up: Move loadData into isrHandler, if possible.
To Do: redo single-color methods
2022-01-16 23:24:54 -06:00
Gregg
1a99df4214
check in progress
2022-01-16 23:14:12 -06:00
Gregg
aefa737675
Completed "optimization"
...
Pixels now lets you reserve memory for pixels so that the call to start the RF transmission can be done for multiple pixels at once. However, gain is not as much as expected. May need to revisit if driving a large matrix of pixels is needed.
2022-01-08 17:28:43 -06:00
Gregg
ee6c270de3
optimizing to allow for pulse train batching
2022-01-08 16:18:37 -06:00
Gregg
1b402b5ebc
changed range of S and V to be 0-100 instead of 0-1
...
But still use float so that values of 50.3, 99.5, etc. are still distinguishable.
2022-01-07 06:25:11 -06:00
Gregg
f10f5cffcd
Normalized and optimized Pixel methods
...
created color_t typedef and use as basis for all RGB and HSV methods
2022-01-06 21:15:03 -06:00
Gregg
d5b27d6e14
Added ability to set same color on multiple pixels
...
Added 4th, optional argument, nPixels, to setRGB() and setHSV().
2022-01-06 18:09:22 -06:00
Gregg
5d3a4bfc38
Added simple Pixel example to Other Examples
2022-01-01 08:14:32 -06:00
Gregg
368a06301a
renamed sk68xx class to Pixel and made it generic
...
Constructor now allows you to specify high/low timings for 1-bit and 0-bit, as well as timing for reset delay. Default parameters are included if none are specified.
2021-12-31 18:10:51 -06:00
Gregg
3b6bc13b1c
Added setHSV() to sk68xx class
2021-12-31 15:34:20 -06:00
Gregg
facba4c02a
Added Pixel.h and Pixel.cpp and implemented SK68XX Addressable LED Class
...
Also add getPin() to RFControl (which is used by SK68XX Class) as well as boolean operator overrides for both RFControl and PwmPin/ServoPin so that instances can be checked for validity.
2021-12-31 14:51:42 -06:00