Frank
e2886e83b3
workaround for #3382
...
On esp32, its possible that two threads (async_tcp, looptask) are sending out JSON via AsyncWebServer in parallel
- serveJson() responds to json/si, and
- updateInterfaces() is sending JSON state info using sendDataWs().
This workaround uses the INTERFACE_UPDATE_COOLDOWN timer to delay the second webSocket send command so it does not (usually) interfere with the first.
It looks like the root cause that parts of AsyncWebServer are not thread-safe, and the payloads from a second ->send() call may corrupt the previous one if still being sent out. The problem should be solved properly in AsyncWebServer, however until that happens, this workaround help to reduce the frequency of errors.
2023-10-05 15:21:16 +02:00
Blaz Kristan
7e6eb65950
Fix for #3403
2023-10-01 13:26:31 +02:00
Frank
ddbe883d47
Merge branch 'fx-blending'
2023-09-05 18:37:55 +02:00
Sandro Pischinger
a79c9d5f4f
info page: add time
2023-08-29 23:44:08 +02:00
Blaz Kristan
06402cf1c6
Making buffer fix easy to maintain and portable.
...
Thanks to @softhack007
2023-08-17 17:10:29 +02:00
Blaz Kristan
4e83752655
Merge branch 'main' into fx-blending
2023-08-17 16:24:47 +02:00
Blaz Kristan
7e28718681
Too long metadata string bugfix.
2023-08-17 16:24:16 +02:00
Shlomo Zippel
800abc605f
Add send and receive groups to json api
2023-08-13 11:44:02 -07:00
Blaz Kristan
084070475d
Chasing memory corruption/leaks.
2023-08-07 16:50:18 +02:00
cschwinne
5e20abd7f1
Move segment bounds queuing to WS2812FX
2023-07-13 13:08:36 +02:00
cschwinne
4766666913
Static queued segment bounds
...
(saves 180 bytes of RAM)
Fixed segment index not increasing on inactive segments
2023-07-13 03:09:42 +02:00
Blaz Kristan
fa6070c680
Multiple updates:
...
- additional debug timings
- removed local leds[] buffer
- async segment bounds change (crashes seen otherwise)
- added isActive() check to Segment drawing methods
- ABL simplification
- palette option for Black hole (FX)
- (possible) crash mitigation is Segment handling (rapid preset changes)
2023-07-12 20:52:34 +02:00
Christian Schwinne
822298ab66
Merge branch 'main' into alt-buffer
2023-07-09 11:31:02 +02:00
Blaz Kristan
2ad3ab7f0d
Correct scaling for peek.
2023-07-06 22:48:13 +02:00
Blaz Kristan
f437fd6cd6
Code readability.
...
Fix for peek.
Loop timing.
2023-07-06 21:16:29 +02:00
Frank
7de7ef8e8c
fix some crashes when changing presets
...
This fixes some of the crashes I had when changing presets.
still not a full solution ...
2023-07-03 17:00:43 +02:00
Blaz Kristan
f442aad962
Misc.
...
- larger stack buffer for oappend
- increase max segment name for ESP32
2023-06-27 16:01:20 +02:00
Blaz Kristan
82e448de7c
Beta-3 changes
...
- remove I2C init from usermods
- PCF8574 (&co) port expander support
- refactor PIR & Rotary encoder & 4LD
- reboot race condition
- optimisations
2023-05-30 19:36:14 +02:00
Blaž Kristan
69ab2ce402
Merge branch 'main' into feature
2023-05-30 16:20:20 +02:00
Blaz Kristan
5a8a8dc292
Feature implementation
...
- #2236
- #1984
Better PSRAM handling
platformio.ini update
On/Off bus handling
2023-05-28 22:50:19 +02:00
Blaz Kristan
90431b662b
Rename "group" to "set"
2023-05-15 17:06:29 +02:00
Blaz Kristan
3d9160f2fa
Merge branch 'main' into seg-groups
2023-05-05 23:01:17 +02:00
Blaz Kristan
f38851b7c6
Merge branch 'main' into cpal
2023-04-30 17:52:28 +02:00
Blaz Kristan
70e9187bcb
Merge branch 'main' into seg-groups
2023-04-26 19:50:22 +02:00
Blaz Kristan
5e2fa13471
Bugfix.
...
- allow saving of reboot preset
- return Spread slider
2023-04-26 19:47:12 +02:00
Blaz Kristan
ece6759fa7
UI update.
2023-04-14 17:15:02 +02:00
Blaz Kristan
dfa0a16487
Reduce sound sim options to increase 2D mapping.
2023-04-04 17:16:50 +02:00
Blaz Kristan
558b22c36a
POC: Implemented segment groups (4).
...
Sacrificed 1 bit on sound simulation and 1D to 2D mapping each.
2023-04-01 23:40:43 +02:00
Blaz Kristan
763b64cc57
Combat low memory condition on ESP8266.
2023-03-10 15:20:50 +01:00
Blaz Kristan
bfbf7af411
Revert palette conditional load.
...
Playlist load bugfix.
2023-03-03 19:57:09 +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
Blaz Kristan
1ca4348ca0
Add Segment functions hasRGB() and hasWhite()
...
Makes code cleaner.
2023-02-25 17:58:51 +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
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
Blaz Kristan
1bb4b0156f
Bugfix
2023-02-14 20:25:26 +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
Blaž Kristan
fc7f609234
Disable 1D/2D mapping for individual pixel control
2023-01-31 12:49:36 +01:00
Blaz Kristan
1f135f1fa5
"i" start index bugfix #3024
2023-01-14 16:01:46 +01:00
Blaz Kristan
e410de9552
Bugfix.
...
- fadePixelColorXY()
- clearing 2D segment on mirror or reverse change
- FX update (DNA Spiral, Colored bursts)
2023-01-12 19:13:07 +01: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
3c5838cafd
Remove "strip" dependency in Segment class
2022-12-16 22:31:07 +01:00
Christian Schwinne
f50c9e855c
Use "pd" JSON API call for direct preset apply ( #2946 )
2022-12-13 14:27:44 +01:00
Blaz Kristan
e629c90a71
Missing UDP sync notifications bugfix.
2022-12-05 22:56:44 +01:00
cschwinne
efc476e50b
Disable register keyword to reduce compiler warnings
...
Minor formatting improvements
"ps" string optimization
Removed travis envs
2022-12-03 20:55:17 +01:00
Blaz Kristan
8899684092
Select custom palette bugfix.
2022-11-25 17:33:29 +01:00
cschwinne
324fc149b3
Shorter JSON keys for 1d2d map and sound sim
...
(smaller fxdata, saves 100b flash, slightly shorter json doc)
2022-11-24 04:15:24 +01:00
Jason Kölker
29b1f2afae
feat(json): add wifi scanning ( #2895 )
...
* feat(json): add wifi scanning
Adds wifi scanning to the JSON api at `/json/networks`. The initial
request will trigger a scan, subsequent requests will scan or return the
results depending on the state of the `WiFiScan`.
Add a `Scan` button next to the client ssid input, on click, scan for
networks, and change the input to a select with the found ssids.
Fixes : #1964
* Added option to go back to manual SSID input
Co-authored-by: cschwinne <dev.aircoookie@gmail.com>
2022-11-24 02:50:24 +01:00
Blaz Kristan
b141ec7ea7
Fix for #2880 (stateChanged on segment on/off)
...
Added comments.
Added X1, X2, X3, M1, M2, M3 segment options to HTTP API.
Added "on" handling with "ps".
2022-11-13 12:13:49 +01:00
cschwinne
c0a783198e
Reduce fxdata size by about 200 bytes
...
Removed redundant commas before semicolon delimiter (`,;` -> `;`)
No need to transmit `@` in /json/fxdata
2022-11-11 03:10:41 +01:00