Commit Graph

456 Commits

Author SHA1 Message Date
Frank
eeb06e0f4d Merge remote-tracking branch 'upstream/main' into mdev 2023-05-22 02:03:56 +02:00
Blaz Kristan
bffeec1615 Remove PSRAM use from global LED buffer. 2023-05-21 18:37:18 +02:00
Frank
2cbdc55a85 Merge remote-tracking branch 'upstream/main' into mdev 2023-05-21 14:53:49 +02:00
Frank
e4a9f115cb fx functions: avoid memory corruption
* PSRAM_Allocator was missing the "reallocate" method, which lead to undefined behaviour when dynamic JSON doc needed to grow/shrink
* Segment::setUpLeds() quickfix for length() == 0 (should not happen, but it did happen for me once)
* leds in PSRAM causes major slowdown on wrover boards - disabled.
2023-05-21 14:33:25 +02:00
Ewoud
22decaa0d6 segment.leds refactor (wip)
rename leds to ledsrgb
2023-05-19 15:25:26 +02:00
Ewoud
21c7347296 Minimal (de)allocs on customMappingTable (only grow, not shrink) 2023-05-16 15:13:30 +02:00
Ewoud
b51972fe41 Merge remote-tracking branch 'origin/mdev' into mdev 2023-05-16 13:12:40 +02:00
Ewoud
d6bc9967d0 Support for large ledmaps
optimize jMapC, enumerateLedmaps and deserializeMap
2023-05-16 13:12:30 +02:00
Blaz Kristan
380b63a255 Bugfix.
- disbled transitions/crossfade prevented segment off
2023-05-14 20:27:54 +02:00
Blaz Kristan
217004c70c Bugfix.
- disbled transitions/crossfade prevented segment off
2023-05-14 18:18:09 +02:00
Ewoud
fede3dd54c Merge remote-tracking branch 'upstream/main' into mdev 2023-05-11 17:39:12 +02:00
Ewoud
642dbfed85 GFX default on, if set off it stays off (until page refresh) 2023-05-04 17:51:33 +02:00
Blaz Kristan
65c584aeda 2D enhancement (internal)
- move() wrapping
- dual addPixelColorXY()
2023-04-27 17:31:55 +02:00
Blaž Kristan
2540a2dfd9 Soap, new 2D effect (#3184)
* Soap, new 2D effect

* Fix Soap FX on matrices with edges < 8 LEDs

* Add palette support to Soap FX

---------

Co-authored-by: cschwinne <dev.aircoookie@gmail.com>
2023-04-27 01:22:33 +02:00
Frank
8e9db0adde more accurate FPS forESP32
the standard millis() code is very inaccurate in the "high FPS" ranges. This replaces it with the esp32 high resolution timer.
2023-04-21 17:34:01 +02:00
Frank
9130e4be54 minor optimization of core LED functions
* use _fast_ integer types in loops - in contrast to "uint16_t" etc, the compiler can leave out range/overflow corrections, so it might run faster.
* fcn_declare.h: revive "WLED_USE_REAL_MATH" option, which can be a bit faster on ESP32.
2023-04-21 16:44:58 +02:00
Frank
00661de7fc accept up to 250 fps target in LED preferences
warning included.
2023-04-21 15:26:35 +02:00
Frank
d90ee766f6 PSRAM: you can have it, and eat it or not eat it
*This patch allows to compile with BOARD_HAS_PSRAM, but not set WLED_USE_PSRAM - reserved pins will be protected, and PSRAM usage will be shown in info.
* if you add `-D WLED_USE_PSRAM_JSON` then PSRAM will be used for some JSON buffers, but not for LEDs and Segments.
2023-04-19 17:58:50 +02:00
Frank
cc9a19bc1d partial merge of upstream/main
* leaving out DotStarHspi5MhzMethod, as we are still on NPB 2.6.9 for eth boards
* leaving out the index.css/index.css changes, as I'm not sure how to merge this.

@ewoudwijma we need to merge the JS and CSS parts when you are back; I'll stay with our MM version for now.
2023-04-14 19:53:04 +02:00
Will Tatam
cc25a21bcb Merge branch 'mdev' into audio-palette-updates 2023-04-14 18:28:43 +01:00
Frank
10ca7c83ca enumerateLedmaps: prevent buffer overflow
make sure that bounds of char fileName[33] are not exceeded by sprintf.
2023-04-14 18:33:07 +02:00
Frank
4a3bc486d0 two more "shadowed locals"
In these case, there seem to be no bug, but  simply renaming the "inner" variables improves code readability.
2023-04-14 13:09:25 +02:00
Ewoud
df4be5550f Net Debug = Net print and tablet pc mode on 1024 2023-03-27 14:47:13 +02:00
Ewoud
5611a54a1a Merge remote-tracking branch 'upstream/main' into mdev 2023-03-26 21:19:11 +02:00
Blaz Kristan
13678cb8d5 Add adjustable Random Cycle time.
- solves #3147
2023-03-25 21:28:30 +01:00
Ewoud
a66274d532 Random Cycle -> Random Smooth + netdebug/serial bugfix 2023-03-24 15:36:00 +01:00
Ewoud
8485be27f2 Merge remote-tracking branch 'upstream/main' into mdev 2023-03-21 11:39:30 +01:00
Ewoud
5ac9ffa073 Harmonize ledmap and jmap
ledmap: no lm prefix

jmap:
- also json extension (instead of jmap)
- also support json object with json array embedded:

{"n":"snake32"
,"width":32
,"height":32
,"map": []
}
2023-03-17 15:44:23 +01:00
Ewoud
e3e5825618 Simplification of ledmap width and height segment settings
(no recreation of panels anymore so back to default shows original)
2023-03-17 13:44:52 +01:00
Ewoud
a0576ba591 restore MM functionality to not reset segments if 2D settings change!!!
customeffects.js:
- rename downloadCEFile to downloadGHFile
- downloadGHFile: add GH ledmaps folder

FX_fcn.cpp and set.cpp:
- change makeAutoSegments with resetSegments(true)
2023-03-13 21:35:48 +01:00
Ewoud
2f024568de Fix for smaller number of pixeld than matrix size.
Borrowed from upstream / onepx-segment
2023-03-11 21:18:21 +01:00
Blaz Kristan
7c186e4fcc Fix for smaller number of pixeld than matrix size. 2023-03-11 15:03:28 +01:00
Ewoud
9f282f831e GEQ: even distribution of bands and small changes
FX.cpp: GEQ: even distribution of bands
FX_fcn: tiny change
wled.cpp: setupMatrix also if loadedledmap != 0
ws.cpp: replace getLengthTotal by width * height (for ledmaps)
2023-03-11 13:59:23 +01:00
Blaz Kristan
763b64cc57 Combat low memory condition on ESP8266. 2023-03-10 15:20:50 +01:00
Ewoud
c16532126a Ledmap refactors
Refactor ledmap in index.js and FX_fcn.cpp (remove physical)

WS2812FX::setPixelColor and gPC: check index after ledmap applied
2023-03-09 15:08:26 +01:00
Ewoud
7f7da1c52c Bugfix 2023-03-07 14:02:01 +01:00
Ewoud
10c5d8f20f Refactor setUpMatrix, deserializeMap for ledmaps 2023-03-07 13:56:18 +01:00
Blaz Kristan
ddd32bd600 Multiple fixes.
- compiler warning fixes (gcc17)
- revert min heap size to 8k
- fix form submitting in 2D settings
- remove IRAM_ATTR for ESP8266 core 4.1.0
2023-03-05 22:56:14 +01:00
Blaz Kristan
c151221d12 UI fixes & revert forcing ULTRAWHITE for on/off bus
Reduce min heap for 8266
2023-03-02 18:21:55 +01:00
Ewoud
f7e297160f ledmap file properties: width, length, physical and segment resize 2023-03-01 17:00:49 +01:00
Blaz Kristan
7a2f556682 Bugfix for 1 pixel segment capabilities. 2023-02-28 19:08:41 +01:00
Ewoud
6b659ab52e Add physical ledmap support + tiny changes
index.js, FX_fcn.cpp
- add physical ledmaps (lmPxyz.json)
2023-02-28 17:17:22 +01:00
Blaz Kristan
3ca7006e3a Tweaks & bugfixes.
One pixel segment handling.
- added 0D FX metadata (1 pixel effects)
- ignore palettes for White only segment
- ignore color for non-RGB & non-White segment (on/off)

Bugfix
- proper auto segment creation
- hide palettes for non RGB segments
- some tweaks for #2984
- force Solid for some FX (causing crash) on 1 pixel segment

UI Optimisations
- slider tooltips
- tiny bit smaller tooltips
- hide segment power if only one segment
- gap between sliders
2023-02-25 09:41:15 +01:00
Ewoud
4a5cbc9879 Merge remote-tracking branch 'upstream/main' into mdev
Some additions:

pio.ini: add debug entries
cfg.cpp, set.cpp, xml/cpp: keep storing basic 2D setup

index.js: use ledmapFileNames

settings_2D.htm: keep using basic and advanced

FX_2Dfcn.cpp: use gaptable and also MM ledmaps

FX_fcn.cpp: extend enumerateledmaps with AC ledmapNames (but not used in UI)
2023-02-22 16:09:27 +01:00
Christian Schwinne
220718cb58 Remove Blynk support (#3102)
Change default palette for Railway to Colors 1 and 2
2023-02-21 17:07:32 +01:00
Ewoud
d0c57c8c26 Merge remote-tracking branch 'upstream/main' into mdev 2023-02-15 22:23:49 +01:00
Blaz Kristan
3ffc58d442 Bugfix
- segment capabilities on 2D segments and ledmaps
- UI segment update
- auto segment creation 2D + 1D
2023-02-15 20:36:54 +01:00
Ewoud
6e187dd5aa Peek in segment tab
Move peek 2D functionality to peek.js

FX_fcn.cpp: always erase customMappingTable if non existent ledmap

wled_server.cpp: add peek.js

index.js:
- add canvasPeek
- change resize of canvas
2023-02-15 12:41:15 +01:00
Ewoud
d8f625beea show only ledmap pixels, show bus lengths in segment visualization
index.js: segment visualization:
- max width if no pc
- don't show nr if only one segment
- Ledmap nr color depending on bus output

FX_2Dfcn.cpp / FX_fcn.cpp
- don't show ledmap -1 pixels

json.cpp: add busses.length to outputs

ws.cpp: peek back to strip.gPC only
2023-02-14 17:22:58 +01:00
Blaz Kristan
92d2be3f5e Add ledmap names
Bugfix
- reset segments upon 2D ledmap allocation error
- fix invlid 2D segments
2023-02-14 17:11:58 +01:00