Commit Graph

117 Commits

Author SHA1 Message Date
Frank
7465be7d42 heap mud scrum
Avoid heap fragmentation.
Use static UDP buffers on ESP32, instead of allocating them from the heap repeatedly.
2023-06-07 18:21:16 +02:00
Frank
d8a68890d4 build fix
removing some bonus colons.
2023-06-07 17:16:49 +02:00
Frank
af6091b493 fixing some memory leaks
* audio_reactive.h: catch memory errors from WiFiUDP
* udp: explicitly flush unused receive buffers.
* wled.cpp: additional debug info about "largest available block"
* FX_fcn.cpp: free _globalLeds before running purgeSegments().
2023-06-07 17:10:32 +02:00
Ewoud
40d120146f Merge branch 'mdev' into audio_fastpath 2023-05-17 11:58:43 +02:00
Ewoud
c0d5cad198 Merge remote-tracking branch 'upstream/main' into mdev 2023-05-17 11:15:50 +02:00
Blaz Kristan
1c8f349a62 Bugfix.
- prevent LED flash on realtime end
2023-05-14 20:30:57 +02:00
Frank
7d0e627e14 some effect optimizations
* getpixelcolor: attribute pure - it reads memory, but does not write
* some optimizations for SEGMENT.blur() and SEGMENT.fadeToBlackBy()

* FX.c:pp remove double calls to blur() and fade_out()
* FX.cpp: SEGMENT.setUpLeds() added to effects, to enable LED buffering (safe some time because getPixelColor does not need to access NeopixelBus)

* a few other optimizations to safe time and avoid "expensive" operations
* set I2C bus speed to 400kHz (default is 100Khz)

* a few other small optimizations and tweaks
* pio: esp32 V4 builds use "patch5" toolchain version, which contains a few bugfixes especially for memory management.
2023-05-03 20:33:23 +02:00
Blaz Kristan
274f5f2f1f Bugfix. 2023-04-22 16:06:13 +02:00
TroyHacks
b7f1373e7d DDP Transmit RGBW Fix 2023-04-14 15:05:41 -04:00
Frank
996d041581 bugfix for art-net transmit
art-net transmit was not sending out LEDs, but only transmitted headers repeatedly (thanks @troyhacks for noticing).

Actually such problems can be found by newer compilers, so i've added the warning option to [esp32_idf_V4].

wled00/udp.cpp: In function 'uint8_t realtimeBroadcast(uint8_t, IPAddress, uint16_t, uint8_t*, uint8_t, bool)':
wled00/udp.cpp:824:40: warning: declaration of 'byte buffer [12]' shadows a parameter [-Wshadow=compatible-local]
         byte buffer[ART_NET_HEADER_SIZE];
                                        ^
wled00/udp.cpp:720:85: note: shadowed declaration is here
 uint8_t realtimeBroadcast(uint8_t type, IPAddress client, uint16_t length, uint8_t *buffer, uint8_t bri, bool isRGBW)  {
2023-04-14 11:39:12 +02:00
TroyHacks
deb09c288a Unmessing an optimization to the header - which caused the header to be sent over and over. 2023-04-12 18:00:35 -04:00
Ewoud
ab808c5522 Merge remote-tracking branch 'upstream/main' into mdev 2023-03-12 20:53:22 +01:00
Blaž Kristan
9b98cbb894 PROGMEM for header 2023-03-11 22:35:22 +01:00
TroyHacks
a4fcbb9f67 Art-Net transmit support for network LEDs
Like DDP, this allows WLED to address network systems using the Art-Net protocol.

Universe starts at zero, because that's the first universe in Art-Net.

Works with RGB. It's coded to also work with RGBW, but I couldn't find a great place to enable it without mucking with things I don't understand.
2023-03-10 13:29:00 -05: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
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
TroyHacks
410baa9cae Art-Net transmit support for network LEDs 2023-02-16 12:54:32 -05:00
Blaž Kristan
506b6b51ce whitespace cleanup 2023-01-06 09:24:29 +01:00
Blaz Kristan
22b2503839 Bugfix & code optimisation. 2022-12-22 18:13:32 +01:00
Blaz Kristan
8899684092 Select custom palette bugfix. 2022-11-25 17:33:29 +01:00
Blaž Kristan
81d2a67948 Minor adjustment in UDP segment options sync.
Added support for node type for S2, S3 and C3.
2022-11-02 14:56:50 +01:00
Blaz Kristan
3bae3aa9aa UDP Sync fix
- sync new sliders
- sync 2D options
2022-10-31 07:13:12 +01:00
Squall-DA
b3a29188a2 Add number of UDP retries (#2830)
* Release of WLED v0.13.3

* Fixed a type in the file name (#2781)

* Fixed the dependency (#2782)

* Usermod Wordclock update to use an alternatve wiring pattern (#2757)

* Update

* update readme file

* readme update

* Update readme.md

* Update readme.md

* Update readme.md

* Update readme.md

* Update platformio.ini

* Add number of UDP retries

Add a configurable number of retries to the UDP WLED sync function.

* Add migration from old eeprom settings

* Revert some accidental carry overs

* Correct issues found in pull request

Change default number of retries
Fix migration from old settings

* Make the minimum number of retries 0

* Import notify twice setting

Co-authored-by: cschwinne <dev.aircoookie@gmail.com>
Co-authored-by: Soren Singh Dary <67230851+sorensd@users.noreply.github.com>
Co-authored-by: Patrick <40436536+paeppi88@users.noreply.github.com>
2022-10-19 01:31:23 +02:00
Blaž Kristan
51d3268eed Merge branch 'dev' of https://github.com/blazoncek/WLED into 0_14
- remove conditional audio compile
- Random Cycle bugfix
- AudioReactive updates
- global gamma flags
2022-09-05 15:13:15 +02:00
Blaz Kristan
787f5f06df Global gamma.
Randomcycle palette bugfix.
2022-09-04 20:17:05 +02:00
cschwinne
3270605b4f DDP network bus RGBW support 2022-09-02 03:12:03 +02:00
cschwinne
5b51ce9840 extractModeDefaults(): C strings instead of String 2022-08-31 02:26:26 +02:00
Blaz Kristan
6fd8a5a084 Replace setOption/getOption 2022-08-19 21:37:26 +02:00
Blaz Kristan
d0a08a55d1 Memory management! 2022-08-03 21:36:47 +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
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
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
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
46e1c8ef73 Update WS on exit of live mode. 2022-04-08 20:11:34 +02:00
Blaz Kristan
081f211231 Merge branch 'master' into merge-master 2022-04-04 20:52:42 +02:00
cschwinne
958cd35e21 Live mainseg improvements
Make override work in mainseg mode
Move unfreeze on turn on from UI to JSON parser
Fix mainseg not unfreezing on timeout
2022-04-01 00:59:19 +02:00
Blaz Kristan
955bb51f11 Freeze/unfreeze for mainseg UDP. 2022-03-28 22:36:58 +02:00
Blaz Kristan
b583def913 Using freeze instead of power for segment.
Fix for missing udp.cpp
2022-03-28 20:44:49 +02: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
Blaz Kristan
c14f16bdf1 Merge branch 'master' into master-merge 2022-03-19 21:05:28 +01:00
tonyn0
c73033c0b4 udp.cpp update
added ap check for ddp in L657
2022-03-16 11:00:29 -05: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
e561304645 Merge branch 'master' into master-merge 2022-03-07 09:44:35 +01:00
cschwinne
ad301fd087 Elekstube usermod enhancements
Coloring of grayscale images
Dimming control from configurable segment
2022-03-06 22:24:24 +01:00