Commit Graph

336 Commits

Author SHA1 Message Date
Blaž Kristan
da0da4c75e Remove NONUNITY
Expand soundSim
Tetrix optimisation
2022-08-31 14:24:02 +02:00
Blaz Kristan
030833f942 Global MISO pin.
Virtual strip expansion for 2D.
2022-08-25 21:57:43 +02:00
Blaz Kristan
daf67d9cf7 Whitespace cleanup.
Revert legacy effects to 1D and use mapping instead.
2022-08-24 23:04:51 +02:00
Blaž Kristan
1711ac9a88 Fix in is2D()
Horizontal and vertical 1D segment
Index overshoot fix.
2022-08-22 14:35:34 +02:00
Blaz Kristan
44a4b11d36 Replace setOption/getOption 2022-08-19 21:14:49 +02:00
Blaz Kristan
fa55896722 Const functions. 2022-08-17 20:45:30 +02:00
Blaz Kristan
32fc6d4b7f Binary effect parameters. 2022-08-12 17:58:20 +02:00
Blaz Kristan
957948f906 Code optimisations in effects.
Remove Wire initialisation from RTC.
Peek fix.
2022-08-09 21:14:37 +02:00
Blaž Kristan
acb17dc575 Fix addEffect() 2022-08-08 10:21:11 +02:00
Blaz Kristan
a8785570df Memory allocation fixes.
Whitespace.
Cleanup.
2022-08-06 12:39:12 +02:00
Blaz Kristan
9270f80af2 Merge branch 'integration' into merge-audio 2022-08-05 23:03:38 +02:00
Blaz Kristan
095099a085 Rename WLED_NO_AUDIO 2022-08-05 15:54:48 +02:00
Blaz Kristan
cdca715afc Effect change at end of transition.
Compile bugfix.
2022-08-03 22:09:27 +02:00
Blaz Kristan
d0a08a55d1 Memory management! 2022-08-03 21:36:47 +02:00
Blaž Kristan
c5f3e76b21 Compile optimisations, code reduction.
2D peek resize.
2022-08-03 14:23:24 +02:00
ewowi
a098aa0a89 leds array from CRGB to uint32_t 2022-08-02 22:06:13 +02:00
ewowi
44c585e8c8 Merge branch 'ledsArrayToSGPC' into integration 2022-08-02 21:12:59 +02:00
ewowi
640f45f57d Remove leds array from utility functions + small things
- Remove CRGB* leds from utility functions
- GameOfLife: fill_solid for prevLeds to for loop
- Remove if !fftResult
- Funky Plank: toggle src and dst
- Comment drawLine as not used
- Duplicate FadeToBlack, call one FadeToBlackOld
2022-08-02 19:44:27 +02:00
Blaz Kristan
0ba8bace0d 2D optimisations. 2022-08-02 18:27:32 +02:00
ewowi
78edcfe5cf Merge branch 'ledsArrayToSGPC' into integration 2022-08-02 12:21:46 +02:00
ewowi
2ca5e0c8b8 Remove leds from FX.cpp
- add addPixelColor overloads
- remove setPixels function
- sPC/gPC move leds check to beginning
- refactor wu_pixel work without leds
- remove leds out of effects and replace by sPC/gPC/aPC/nullptr
- workaround %=
- refactor game of life (but need to check patterns / history, see SR)
- refactor fill_circle to work without leds
2022-08-02 12:19:04 +02:00
Blaz Kristan
7ca1d99412 Multiple additions:
- transparent leds[] for getPixelColor()
- sample 2D Black Hole for trnasparent leds[]
- conditional audio compile (WLED_NO_AUDIO)

Bugfix:
- effect filtering
2022-08-01 22:01:24 +02:00
ewowi
987b442796 Merge branch 'ledsArrayToSGPC' into integrationMergeOnly 2022-08-01 16:25:51 +02:00
ewowi
69f9a484ca strip.leds array fully fastLed and segment compatible
- leds array from uint32_t to CRGB for fastled compatibility
- reading and writing leds from strip to segment sPC/gPC so it has logical instead of physical indexes so it can be used in effects
- change mode_2DBlackHole as showcase how it can both work with leds or with sPC/gPC
2022-07-31 14:48:00 +02:00
Blaz Kristan
dde5367560 Default palette gamma fix.
Reverted to leds[] in SR effects.
Code optimisations.
2022-07-31 13:28:12 +02:00
ewowi
66da57f375 POC to use leds array in strip.set/getPixelColor 2022-07-31 12:38:10 +02:00
Blaz Kristan
d328db543e Bugfixes.
- gamma on *Color palettes
- gamma moved out of WS2812FX
- palette fade (JSON) fix
2022-07-30 23:58:29 +02:00
Blaz Kristan
eb9eda1f6d Transition struct (reduced RAM footprint). 2022-07-30 14:50:11 +02:00
Blaz Kristan
f16558c126 Optimisations. 2022-07-30 14:20:36 +02:00
Blaz Kristan
52b863fe36 Memory allocation bugfix. 2022-07-29 20:24:29 +02:00
Blaž Kristan
191db46c4f Code optimisation & cleanup.
Minor fixes.
2022-07-29 12:15:56 +02:00
Blaz Kristan
df534d30bf Custom palettes. 2022-07-28 23:19:58 +02:00
Blaz Kristan
1e4f8be74b Merge branch 'mapping12soundsim' into segment-api 2022-07-20 21:22:23 +02:00
Blaz Kristan
b6e53b1a0c Minor bugfix and for loop optimization. 2022-07-19 22:14:46 +02:00
Blaz Kristan
a46894f395 Bugfixes. 2022-07-19 16:16:43 +02:00
Blaz Kristan
6c6849d8d7 Vectors & dynamic loadJS.
- Segments
- Modes

NOTE: crashes ESP if effect is running while deleting segment.
2022-07-17 15:58:41 +02:00
Blaž Kristan
1151b615a0 Fix for SEGLEN 2022-07-14 13:47:30 +02:00
Blaž Kristan
0cf891b9d9 Optimisations 2022-07-14 13:22:34 +02:00
ewowi
9bec394d7f Add mapping12 and soundsim defaults to effects and apply in segment ui
index.js: rename setSliderAndColorControl to setEffectParameters, rename extras to effectPars, add segment variable update code
FX.cpp: add map12 and ssim defaults to data_FX_MODE variables (WIP)
FX_fcn.cpp: add return in setPixelColor for 2D
2022-07-13 12:41:33 +02:00
ewowi
6799a3bd35 Merge remote-tracking branch 'origin/segment-api' into mapping12soundsim 2022-07-12 20:04:44 +02:00
Blaz Kristan
588c7a81fc Fix for transitions. 2022-07-12 18:10:07 +02:00
ewowi
d5523615ef Merge branch 'refactor-ws2812fx' into mapping12soundsim 2022-07-11 11:05:49 +02:00
Blaz Kristan
d9f2c2b968 Segment API
- moved all drawing logic to segment
- moved transitions to segment
Conditional 2D compile.
Rearranged effect IDs.
Implemented dynamic effect arrays.
2022-07-10 22:23:25 +02:00
ewowi
2f6adbd07c Add Mapping 1D to 2D. Mapping12 and sound simulation effect independent
- add to segment: mapping 1D2D and Sound Simulation (WIP!)
- Add sound simulation WeWillRockYou
- All audio effects use segment soundSim
- Redefine SEGLEN: strip.getMappingLength (depending on mapping12)
- make setPixelColor aware of mapping12
2022-07-10 14:30:10 +02:00
Blaz Kristan
698a32f364 Cleanup effects. 2022-07-06 20:41:12 +02:00
Blaz Kristan
64fd207533 Refactoring WS2812FX class.
- effect functions no longer part of class
- methods to access private members
- separate Segment, Segment_runtime, ColorTransition from WS2812FX
2022-07-06 13:13:54 +02:00
Blaz Kristan
0a2e01a616 Multiple changes:
- change arduinoFFT to float (custom)
- update audioreactive to use float
- update effects to use float
- info slider (usermod)
- hide Peek in 2D
- minor bugfixes
2022-07-03 22:55:37 +02:00
Blaz Kristan
cf3faa1170 Merge branch 'audioreactive-prototype' into 2D-support 2022-06-29 16:30:50 +02:00
Blaz Kristan
d2705f033d Enhance API
- addPixelColorXY()
- fadeToBlackBy()
2022-06-28 23:32:29 +02:00
Blaz Kristan
a75b3a53aa Use getModeCount() instead of MODE_COUNT
Clear strip if spacing changes.
Rewrite 2DGEQ.
2022-06-26 23:01:22 +02:00
Blaz Kristan
3891348c26 Multiple fixes.
- anti-aliasing fix
- minor UI CSS fix
- dynamic JS loading (2D & UM)
- 2D Lissajous fix
2022-06-23 17:42:02 +02:00
Blaz Kristan
4c759083be Multiple changes.
Added:
- introduced addEffect() and setupEffectData()
- conditional compile for audio effects
- introduced getModeData() and getModeDataSrc() instead of public var
- changed _modeData[] to private non-static

Fixes:
- DMTYPE use
- add reboot info to DMTYPE
- transpose & reverse with mirroring
2022-06-21 22:49:45 +02:00
Blaz Kristan
d3bb079be4 Muliple enhancements:
- Smarter on/off buttons in Info panel (usermods)
- On/Off bus in bus_manager
- 2D GEQ fix (2D CenterBars obsolete)
- hide unused palettes & modes
2022-06-20 22:17:01 +02:00
Blaz Kristan
041426fecb Scrolling text selectable font. 2022-06-17 21:19:12 +02:00
Blaz Kristan
b00e038b33 Enhancement in effect functions.
- added color_add()
- fixed AA setPixelColor()
- added fadeToBlackBy() (FastLED)
- added hiding of * palettes if not all color selectors shown
2022-06-17 18:57:32 +02:00
Blaz Kristan
12a94c50b8 Various fixes.
Added support for no audio to some effects.
2022-06-16 16:10:38 +02:00
Blaz Kristan
477c9ef577 Cosmetic fixes. 2022-06-15 22:17:34 +02:00
Blaz Kristan
e146a476bd Effect ID compatibility with WLED-SR
Updated some SR effects.
2022-06-15 17:21:32 +02:00
Blaz Kristan
45e74126da Non-2D audio effects. 2022-06-14 18:16:18 +02:00
Blaž Kristan
489b144085 Overload temporary fix.
Non-audio SR effects.
2022-06-14 12:06:51 +02:00
Blaž Kristan
4cc2dea2fe color_add() that preserves color ratio
AA version of setPixelColor(float)
Fix in AA ratio calculation.
2022-06-14 09:11:56 +02:00
Blaz Kristan
1e2cae7087 W fix. 2022-06-13 22:13:04 +02:00
Blaz Kristan
0df5221784 Normalised/antialiased setPixelColorXY() 2022-06-13 21:55:51 +02:00
Blaz Kristan
4c78d35680 Fix CRLF. 2022-06-13 21:29:08 +02:00
Blaz Kristan
cdef8472e3 Gav... efects to test audio
Anti-aliased setPixelColor() with support for normalized x & y
2022-06-13 21:28:10 +02:00
Blaz Kristan
562a206508 It compiles!
Cleaned (and possibly broken) AudioSource
Added:
- usermod notification about update
- strip.getMinShowDelay()
- pin manager updates
Changed:
- data exchange
2022-06-11 00:50:29 +02:00
Blaz Kristan
366006273d Watchdog timer (@poelzi).
Transpose optimisations.
Rain effect updated.
2022-05-30 22:21:13 +02:00
Blaz Kristan
8b73a7375a Fix for transpose.
blur1d() using weighted box blur.
2022-05-28 19:23:16 +02:00
Blaz Kristan
3d6df07335 Bugfixes in 2D.
PIR stops countdown if preset changed.
2022-05-27 13:39:22 +02:00
Blaz Kristan
7689587879 New 2D Drift Rose effect.
Fix for segment name.
Updated blurRow & blurCol to work on non-leds[].
Updated several legacy effects to be 2D aware.
Code cleanup.
2022-05-26 21:36:48 +02:00
Blaz Kristan
e248b989e1 2D Scrolling text
Updated Glitter & Sparkle
2022-05-25 21:15:08 +02:00
Blaz Kristan
9920424a31 Polar Lights fix.
Cleanup.
2022-05-24 16:43:21 +02:00
Blaz Kristan
6e342983f9 It did not like PROGMEM. 2022-05-22 00:41:45 +02:00
Blaz Kristan
a6d7ed3824 Moved mode names (& slider data) to a static array
-- may break some things --
2022-05-21 18:37:09 +02:00
Blaz Kristan
e003ec39fb Transpose fix for XY()
Slight internal API change.
Renamed c1x,c2x,c3x to custom1, custom2, custom3 to be in line with SR.
2022-05-21 13:19:11 +02:00
Blaz Kristan
b4d6525899 Added new 2D effects:
- 2D Floating Blobs
- 2D Ghost Rider
Crash fix for 2D Game of Life.
Added support function fill_circle() & wu_pixel().
Removed obsolete debug strings.
2022-05-20 19:35:22 +02:00
Blaz Kristan
ba3555a66f 2D Game of Life update.
Added crc16().
Reduced errorToast popup time.
Fixed drawLine() incorrect uint16_t use and added leds[] support.
2022-05-20 14:48:40 +02:00
lost-hope
65f5bc531c Added line drawing function based on Bresenham 2022-05-19 22:49:04 +02:00
Blaz Kristan
3ba4702181 2D crazy bees. 2022-05-19 18:57:23 +02:00
Blaz Kristan
ad9c42e832 2D Spaceships. 2022-05-19 18:27:04 +02:00
Blaz Kristan
598549b5fb Additional 2D effects. 2022-05-19 11:29:04 +02:00
Blaz Kristan
4484721a9f 2D Haloween eyes
Misc fix.
2022-05-11 09:37:38 +02:00
Blaz Kristan
c9bdecdb69 API change.
New SR effects.
Bugfixes.
2022-05-10 00:35:26 +02:00
Blaz Kristan
adb7726974 Bugfixes.
- removed IS_ macors
- replaced .options with getOptions()
- Fire2012 matrix fix
2022-05-09 16:15:07 +02:00
Blaz Kristan
d6883d0c1c Added CRGB variant for setPixelColor() 2022-05-09 11:11:25 +02:00
Blaz Kristan
f0d36fd769 WLED 2D matrix support.
- Added 2 sample effects to UI.
- 2D segment details.
- 1D effect upscaling to 2D.
- 2D setPixelColorXY() and other utility functions
- Arbitrary panel position & oritentation.
- 2D settings with physical to logical mapping.
- Bump version.
2022-05-08 10:50:48 +02:00
Blaz Kristan
2e6ce0481c Allow swapping of W channel for RGBW LEDs.
Backporting fix.
2022-04-30 12:45:38 +02:00
Blaz Kristan
eda6f134a9 Moved effect sliders to bottom.
Implemented custom effect parameters.
2022-04-10 11:02:57 +02:00
Blaz Kristan
81d880fb4e Global Auto-calculate white override. 2022-03-26 23:20:14 +01:00
Blaz Kristan
41aa1ee318 Use UDP live/realtime data on main segment only.
Includes Adalight revert, CSS optimizations and setPixelColor() refactoring.
2022-03-25 16:36:05 +01:00
Blaž Kristan
aecfa3ff0f Merge branch 'master' into master-merge 2022-03-16 08:52:48 +01:00
cschwinne
522e752582 Add ability to skip up to 255 LEDs (#2342) 2022-03-16 01:45:07 +01:00
SpeakingOfBrad
854ed8cfa9
ABL milliamps no longer hardcoded to 850 at runtime (#2581) 2022-03-16 00:35:49 +01:00
Blaž Kristan
e0fcaa6103 Merge branch 'master' into master-merge 2022-03-11 11:28:02 +01:00
Blaz Kristan
841a9f8082 Searchable presets.
Inline sin_gap().
Prevent live timeout.
2022-03-10 22:36:09 +01:00
cschwinne
4865ddb377 Fix realtime mode disabled by brightness change
Fix realtime mode not working immediately at turn on
Fix individual segment control not working immediately at turn on
2022-03-10 20:40:48 +01:00
cschwinne
0ea31cb088 Fix indefinite realtime terminated by new packet (fixes #2356 )
Add custom Aircoookie fork of ESP32 core (reduces bin size by >100kB)
2022-03-10 11:20:39 +01:00
Blaž Kristan
5b88894638 Reintroduction of per bus auto white calculation.
JS/CSS UI optimizations.
2022-03-09 13:39:51 +01:00
Blaz Kristan
ddadaa828a Merge branch 'master' into master-merge 2022-03-08 22:46:50 +01:00
cschwinne
b626c7620e Disabled auto white mode in segments with no RGB bus 2022-03-08 02:16:33 +01:00