Commit Graph

824 Commits

Author SHA1 Message Date
Blaž Kristan
77f04d913a NetworkDebugPrinter packet optimization. 2022-11-11 14:39:47 +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
Blaz Kristan
d370f67f60 Optimization & bugfix for net debug.
- Inherited from Print class.
- Added UI option to disable net  debug output.
2022-11-10 21:50:21 +01:00
Blaz Kristan
7fcc8be73c Merge branch 'netdebug' of https://github.com/visigoth/WLED into net_debug 2022-11-06 10:58:19 +01:00
Blaz Kristan
e5f9cfd5b6 Add ESP32 variant display in update page. 2022-11-05 18:31:38 +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
siggel
82af52a0bc
Feature/nine additional alexa devices for presets (#2787)
* add 9 further alexa devices for calling presets 1-9

* use preset names from WLED for Alexa preset device names instead of hardcoded names

* update readme and version

* call alexaInit() at end of savePreset() to keep Alexa in sync with the preset IDs and names

* This reverts commit f8db06c7c5.

* change order to configured Alexa WLED name first, preset names afterwards

* fix status of devices when shown within Alexa, i.e. switching one preset on switches others off (except for alexaInvocationName)

* re-add getPresetName() after merge with master

* restore original readme for pull request

* restore original platformio.ini for pull request

* Logic simplification

* Pass string by reference

* Added number of presets check

* fix alexaInit() in case of alexaNumPresets==0

Co-authored-by: Christian Schwinne <dev.aircoookie@gmail.com>
2022-10-25 23:42:26 +02:00
Blaz Kristan
ca891b0e70 Merge branch 'audioreactive-prototype' of https://github.com/blazoncek/WLED into audio-fix 2022-10-22 11:13:02 +02:00
Christian Schwinne
0de928a674
Merge branch 'main' into 0_14 2022-10-20 00:44:40 +02: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
Blaz Kristan
8417589789 Fix fork version. 2022-10-18 20:54:23 +02:00
Blaz Kristan
426635871b Bus corrections for C3, S2 & S3.
Minor hostname tweak.
2022-10-10 16:46:23 +02:00
Blaz Kristan
7642f8d702 Async preset saving.
Minor bugfixes.
2022-10-08 18:25:51 +02:00
Blaz Kristan
4fb44d98db Merge branch '0_14' of https://github.com/aircoookie/WLED into merge-0_14 2022-10-06 18:25:51 +02:00
Blaz Kristan
bd025309fb Custom palette name bugfix. 2022-10-04 22:10:20 +02:00
ingDIY
1880740561 Update wled.h
reverted back settings to enable Alexa, Blynk, Huesync, IR.
The user shuld #define -D in platformio_override.ini to disable them
2022-10-03 19:17:28 +02:00
ingDIY
503835d47e submitting PR
Here they are the PR #2776, #2803 and #2804 rebased for 0_14 branch,
I hope that now they are OK!
2022-10-02 23:23:24 +02:00
Blaz Kristan
4cd6bafc15 Merge branch '0_14' of https://github.com/aircoookie/WLED into merge-0_14 2022-09-27 18:34:03 +02:00
Blaz Kristan
dc700c41fb Invalid FX bugfix. 2022-09-26 21:26:00 +02:00
Christian Schwinne
5f606bb0b7
DMX improvements (merge #2619) (#2794)
* Art-Net improvements

* Fix brightness level

* Update cfg.cpp

Co-authored-by: 4lloyd <github@lloydpost.nl>
2022-09-23 01:02:49 +02:00
4lloyd
d0189b0719
Add ArtPoll support (#2615)
* Add ArtPoll support

* Improved calculations

* Add support for legacy DMX start address 0

* Small efficiency improvement

* ESP8266 doesn't like yield

* Optimized ArtPoll memory use

Co-authored-by: cschwinne <dev.aircoookie@gmail.com>
2022-09-22 20:34:46 +02:00
Blaz Kristan
222b92807e Percent FX use % as index in palette.
FX Checkmark bugfix.
2022-09-21 21:09:52 +02:00
Blaz Kristan
fc0dc4472b Merge branch 'esp32-s2' into dev 2022-09-20 21:52:40 +02:00
Blaz Kristan
7824f9ee63 Remove sync preset loading (ugly core check)
WS buffer check for ESP32-S2
Delay for Serial init on CDC USB
2022-09-20 21:17:44 +02:00
Blaz Kristan
cce54f3bb7 Loading cfg.json without wsec.json
Bugfix for BudOnOff.
2022-09-16 23:19:53 +02:00
Blaz Kristan
799d4f9465 Playlist load bugfix.
serializeConfig() in loop() (prevent crash/hang in web server callback)
2022-09-14 22:28:06 +02:00
Blaz Kristan
8402de601f More fixes for GPIOs.
UI fixes.
2022-09-13 21:41:51 +02:00
Blaz Kristan
a1dc7a52e9 Merge branch '0_14' of https://github.com/aircoookie/WLED into dev 2022-09-12 22:39:00 +02:00
Frank
6771bd84c6 introduce hardwareTX / hardwareRX
RX/TX is not defined on all boards.
Fall-back to previous behavior on "classic" ESP32 and 8266.
2022-09-11 00:16:48 +02:00
Blaz Kristan
e4fbf70568 Preset loading tuning.
Multi-relay toggle support.
Fire2012 tuning.
2D functions tuning.
Global SPI comments & tuning.
Bugfix in 4LD usermod.
On & bri support fix.
2022-09-09 17:16:52 +02:00
Blaz Kristan
94243ac605 Better palette blending. 2022-09-06 21:44:11 +02:00
cschwinne
6802f5a802 Fix several small bugs
Fixed no new 2D segments creatable in UI
Fixed brightness not applied if `"on":true` present in the same JSON api call
Fixed CJK text upside down in namelabel (rotate to nicer direction only if no CJK characters)
Gamma correction color enabled by default
2022-09-06 03:06:00 +02:00
Blaz Kristan
3a1ddce13f Return of Supāku. 2022-09-05 19:56:55 +02:00
Blaž Kristan
6c18857109 Fix build. 2022-09-05 19:01:58 +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
2c27240da6 Remove DISABLE_AUDIO 2022-09-05 00:43:26 +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
Blaz Kristan
38bd0d6bbb Bugfixes 2022-08-31 21:21:53 +02:00
cschwinne
2ada88a266 Small improvements to fx data extraction functions
- Un-F() most segment JSON keys, decreases JSON doc usage by 47 B (increases static RAM usage by 32 B),
makes `extractModeDefaults` work without strstr_P
- Removed String from serializeModeData and serializeModeNames
- Set 0.14 version name "Hoshi"
2022-08-31 04:31:56 +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
Blaz Kristan
af5e38e5ee Fix for segment on/off transitions.
Fix for missing return.
Slightly smoother Chunchun, added Speed parameter for Hiphotic.
2022-08-23 15:57:05 +02:00
cschwinne
102a28aef4 Release of WLED v0.13.3 2022-08-23 01:26:18 +02:00
Blaz Kristan
b8b3d17570 Merge remote-tracking branch 'upstream/0_14' into dev 2022-08-22 19:37:17 +02:00
Blaz Kristan
59b038b8c4 Index under- shooting.
Fix for arc 1D to 2D mapping.
UI segment 2D mapping fix.
Watchdog reposition & flicker reduction.
2022-08-22 16:48:19 +02:00
Blaž Kristan
cf0f0d77be Merge branch 'audioreactive-prototype' of https://github.com/blazoncek/WLED into merge-audio 2022-08-22 10:34:10 +02:00
cschwinne
844bef9fda Explicit JSON flag for loading FX defaults
Disable watchdog by default
2022-08-22 01:17:10 +02:00
Blaz Kristan
b722c618bd Fixes in NodeStruct & bus manager. 2022-08-21 20:50:24 +02:00
Blaz Kristan
e9f6509cb0 Merge branch 'segment-api' into dev 2022-08-19 15:14:56 +02:00
Christian Schwinne
b44ed70112
Merge branch 'main' into segment-api 2022-08-18 20:13:02 +02:00
Blaz Kristan
fa55896722 Const functions. 2022-08-17 20:45:30 +02:00
Blaz Kristan
2149bbb8ea Remove CS from global interface pins.
Fixes.
2022-08-17 19:44:32 +02:00
Blaž Kristan
3d47a8e9c0 Merge branch 'master' into dev 2022-08-16 07:52:33 +02:00
Blaz Kristan
7125d19af1 Bugfix for saving usermod settings.
Modification of global interface pin allocation.
Code relocation in 4LD.
2022-08-15 20:23:47 +02:00
cschwinne
420f858d9b Release of WLED v0.13.2 2022-08-15 02:08:48 +02:00
Blaz Kristan
1de009a80d I2C & SPI fixes. Global interface. 2022-08-14 13:05:59 +02:00
Blaz Kristan
74b6a78a9b Effect fixes. 2022-08-13 00:58:27 +02:00
Blaž Kristan
52e5f467b0 Added two more fonts to Scrolling text. 2022-08-11 11:46:30 +02:00
Blaz Kristan
1cb3ab82c2 Reduction of flicering on web access (info) 2022-08-10 20:53:11 +02:00
Blaz Kristan
998f2f9421 Global I2C & SPI pin allocation. 2022-08-07 16:43:29 +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
4e11806d00 Code optimisations. 2022-08-04 16:15:49 +02:00
Blaz Kristan
f45082b764 Crash fix for ESP8266 if mode contains ! 2022-08-03 22:27:45 +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
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
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
1abf0fc134 Deprecate EEPROM support (compile time option). 2022-07-30 11:04:04 +02:00
Blaz Kristan
52b863fe36 Memory allocation bugfix. 2022-07-29 20:24:29 +02:00
Blaz Kristan
79337a4568 Bugfix for palette transitions. 2022-07-29 16:26:15 +02:00
Blaž Kristan
191db46c4f Code optimisation & cleanup.
Minor fixes.
2022-07-29 12:15:56 +02:00
Blaz Kristan
3b2573afed More filtering options.
Palette loading bugfix.
2022-07-27 17:00:55 +02:00
Blaz Kristan
78aad924c5 Bugfixes.
- moved simulateSound() to util
- effect fixes (name changes)
- mapping fixes
- default values fixes
- UI fixes
2022-07-25 21:31:50 +02:00
Blaz Kristan
026425407e Adde more default options.
UI bugfix.
2022-07-24 16:21:29 +02:00
Blaz Kristan
8e9637f6d4 Default effect values. 2022-07-23 22:00:19 +02:00
Blaz Kristan
c15ffca48c Merge branch 'master' into master-merge 2022-07-22 14:34:02 +02:00
Blaž Kristan
902c11d074
Merge pull request #2657 from poelzi/watchdog
Enable ESP watchdog by default
2022-07-22 09:26:46 +02:00
Blaž Kristan
2fe4edb6df Segment clear bugfix.
getPixelColor fix.
2022-07-21 07:24:03 +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
febd7cbca8 Enable Peek for 2D. 2022-07-04 11:12:55 +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
cd46d84dcb Shuffle tooltips. 2022-06-28 12:36:23 +02:00
Blaz Kristan
4c60a70c6f Slider div change.
Effect data bugfix.
2022-06-27 22:46:36 +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
dbe90eb3f5 Minor UI fixes. 2022-06-23 21:00:12 +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
84106d6282 Merge branch 'dev' into audioreactive-prototype 2022-06-22 18:04:40 +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
2b259f3704 Usermod API enhancements
- data exchage getUMData()
- usermod configuration helper appendConfigData()
- notification on updates onUpdateBegin()
2022-06-13 22:11:55 +02:00
Blaz Kristan
9db872db56 Fixes:
- mirroring
- FX memory allocations
- preset loading if WS request too big

Changes:
- remove "pt" in favor of "ps" in JSON
- fading in Ghost rider
2022-06-05 10:16:56 +02:00
Blaz Kristan
f1a1b89d13 Fixes.
- correct preset cycling
- updated rotary encoder preset selection
2022-06-03 22:22:18 +02:00
Blaz Kristan
14887d5e88 Multiple fixes.
- non matrix bugs in legacy effects
- preset loading (cycling)
- segment length in UI
- possible WS heap corruption prevention
2022-06-01 22:11:25 +02:00
Blaz Kristan
366006273d Watchdog timer (@poelzi).
Transpose optimisations.
Rain effect updated.
2022-05-30 22:21:13 +02:00
Blaz Kristan
6a69a726f2 Build bump. 2022-05-29 18:34:59 +02:00
Blaz Kristan
e9cd4d95a7 Merge branch 'master' into master-merge 2022-05-29 18:22:33 +02:00
Blaz Kristan
e248b989e1 2D Scrolling text
Updated Glitter & Sparkle
2022-05-25 21:15:08 +02:00
Blaz Kristan
17be0a2c12 Enhance rotary encoder with custom sliders.
Soft watchdog timer (by poelzi)
2022-05-24 13:45:35 +02:00
Daniel Poelzleithner
26fa38d052 Watchdog: disable watchdog while OTA is running 2022-05-23 22:30:13 +00:00
Blaz Kristan
34a4382920 Effect fixes. 2022-05-23 21:04:16 +02:00
Blaz Kristan
d522b608d3 Finally fix for Crazy Bees. 2022-05-22 12:32:38 +02:00
Blaz Kristan
0955480f5b Build bump. 2022-05-20 19:51:46 +02:00
Blaz Kristan
598549b5fb Additional 2D effects. 2022-05-19 11:29:04 +02:00
Blaz Kristan
4963a5797b Corrected slider names & options for 2D effects. 2022-05-10 21:41:20 +02:00
Daniel Poelzleithner
213e3e998a Enable ESP watchdog by default
Use the ESP watchdog to detect hanging ESP and reset the firmware.
Can be disable by defining WLED_WATCHDOG_TIMOUT 0
Default timeout is 3 seconds on ESP32 and 8 seconds on ESP2688
2022-05-05 11:33:00 +00:00
Luke Plassman
bef9c68f81
Working DMX Libraries (#2652)
* added SparkFunDMX library dependencies

* changed variable names to avoid conflicts with SparkFunDMX library

* board version checks

* minor changes to DMX

* fix brightness when no shutter DMX channel is set

* fix compile issue on newer ESP32 variants
2022-05-05 02:28:09 +02:00
Blaz Kristan
e088f7a552 PIN code field focus on load. 2022-05-01 10:27:26 +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
279664a578 Added compile time PWM fan pins.
Updated readme
2022-04-29 09:52:45 +02:00
Blaz Kristan
9667365d9e Optional HSV sliders instead of color wheel.
PIN code optimizations & fixes.
2022-04-27 12:31:47 +02:00
Blaz Kristan
d4ef26e0f3 HSV sliders option instead of color picker. 2022-04-26 22:16:08 +02:00
Blaz Kristan
1494bfe855 Fix for non-websockets build.
Cleanup.
2022-04-24 19:30:14 +02:00
Blaz Kristan
385c526414 Added new holidays. 2022-04-19 17:16:07 +02:00
Blaz Kristan
1663601dcb UI fixes.
- correct load sequence
- incorrect power on repeated segments
- update button
- fix for find icon
- connection icon colors
2022-04-17 11:13:13 +02:00
Blaz Kristan
0f6b1e4ae1 Synchronus applyPreset() from HTTP JSON API call.
Bugfix for HTTP API preset.
WS multiple broadcast fix.
Turning segment on/off will not reset currentPreset/cause stateChanged.
2022-04-16 16:28:43 +02:00
Blaz Kristan
845aa733b7 Bugfixes.
- auto segments selected
- slider data aded to data-opt
2022-04-11 22:18:44 +02:00
Blaz Kristan
a0e318827d Hide custom sliders by default. 2022-04-11 15:14:47 +02:00
Blaz Kristan
eda6f134a9 Moved effect sliders to bottom.
Implemented custom effect parameters.
2022-04-10 11:02:57 +02:00
Blaz Kristan
f247139f1c Bugfixes.
- prevent changing main segment during live
- PIN code entry validation
- UI CSS fixes
2022-04-07 21:54:55 +02:00
Blaz Kristan
566985cf72 Add preset (name) UI bugfix.
Close modal button.
2022-04-06 05:45:39 +02:00
Blaz Kristan
081f211231 Merge branch 'master' into merge-master 2022-04-04 20:52:42 +02:00
Blaz Kristan
31012671c5 UI sliding bugfix. 2022-04-02 07:42:04 +02:00
Blaz Kristan
73e898773b Minor fixes.
- reversed condition for simplified UI
- removed duplicate code
2022-03-31 21:44:11 +02:00
Blaz Kristan
6eff2e6e74 Missing .h 2022-03-28 22:43:51 +02:00
Blaz Kristan
955bb51f11 Freeze/unfreeze for mainseg UDP. 2022-03-28 22:36:58 +02:00
Blaz Kristan
81d880fb4e Global Auto-calculate white override. 2022-03-26 23:20:14 +01:00
Blaz Kristan
bdbce67473 Movable segment power.
UI CSS fixes.
2022-03-25 20:30:29 +01:00
Blaz Kristan
6079effae3 UDP on main segment only. 2022-03-25 17:20:41 +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
cschwinne
9c9854b6bf Fixed sunrise/set calculation 2022-03-19 19:27:32 +01:00
cschwinne
d280e16723 Fixed /json/cfg unable to set busses (fixes #2589) 2022-03-19 14:21:14 +01:00
Blaz Kristan
eee9de8271 Bumped build. 2022-03-16 17:14:37 +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
Blaž Kristan
0234017ca1 Merge branch 'master' into master-merge 2022-03-15 09:55:23 +01:00
cschwinne
6c315e5a9c 0.13.1
Fix persistent preset bug
2022-03-15 03:45:20 +01:00
cschwinne
ef0f91d8d0 Release of WLED v0.13.0 2022-03-15 02:28:26 +01:00
cschwinne
9552784e72 Remove persistent argument from savePreset()
(fixes temp preset not applicable by APIs)
Default to 5Mhz hardware SPI driving (#2558)
2022-03-14 20:53:00 +01:00
Blaz Kristan
ac20d7f302 UI updates.
- optional show/hide segment power
- skinnable sliders
- changed some CSS to be more to @aircoookie's liking
2022-03-14 20:22:20 +01:00
SpeakingOfBrad
f068327307
Add option to set module name at runtime, and add extra examples in platformio_overrides.ini (#2578)
* Added option to set the name of the module at runtime.

* added example how to set number of LEDs at runtime

* Example to enable/set IR remote type at runtime

* Clarification on how to use platformio_overrides

* Example for setting abl milliamp limit at runtime

* Corrected example set LED count
2022-03-14 18:23:53 +01:00
cschwinne
1bc698ae78 Button 0 long press factory reset
JS simplification
2022-03-14 12:26:45 +01:00
Blaz Kristan
3f6691dcd5 Easter egg added. 2022-03-13 14:04:29 +01:00
Blaz Kristan
28b78c2b27 Select/unselect all segments chekmark.
CSS fixes.
2022-03-12 18:03:00 +01:00
Blaz Kristan
b3d691fff6 Select/deselect all segments.
CSS optimisations & fixes.
2022-03-11 23:38:50 +01:00
Blaz Kristan
841a9f8082 Searchable presets.
Inline sin_gap().
Prevent live timeout.
2022-03-10 22:36:09 +01:00