Wykres commitów

273 Commity (a0c55c6406909f00c5217468994f0576dc201efe)

Autor SHA1 Wiadomość Data
Damian Schneider d45b4ad134 fixes and consistency 2024-09-13 19:01:54 +02:00
Damian Schneider c3f472fbcb some improvements to consider
no real difference in FPS but code is faster.
also 160bytes smaller, meaning it is actually faster
2024-09-11 21:41:42 +02:00
Blaz Kristan 1cee1c3562 Merge branch '0_15' into blending-styles 2024-09-11 17:28:48 +02:00
Blaz Kristan eae5a74a11 color_fade bugfix
impure void remove
optimisations: hot
2024-09-11 17:14:59 +02:00
Blaz Kristan de5632b1cf Merge branch '0_15' into blending-styles 2024-06-01 17:54:57 +02:00
Blaz Kristan 501f988b0f ESP-NOW usermod hook 2024-05-25 20:01:38 +02:00
Blaž Kristan f441ce9c17 Merge branch '0_15' into blending-styles 2024-05-12 08:12:58 +02:00
Blaz Kristan 4afed48f58 Use libc trigonometric functions on ESP32 by default
- use custom (space saving) functions on ESP8266
2024-05-10 15:59:11 +02:00
Blaz Kristan a320f16404 Real math fix 2024-05-09 23:58:58 +02:00
Blaz Kristan 2ff49cf657 Fix for #3952
- included IR optimisations & code rearrangement
2024-05-03 15:45:15 +02:00
Blaz Kristan a3a8fa1cef Remove conditional fade/blend
- transitions always enabled (use delay 0 to disable)
- optimisation in on/off fade
- fix for palette/color blend when blending style is not fade
- various tweaks and optimisations
2024-04-08 16:24:27 +02:00
Blaz Kristan c6805271e9 Merge branch '0_15' into blending-styles 2024-04-08 15:28:57 +02:00
Blaž Kristan bd60fe5a13
Merge pull request #3798 from DedeHai/ESP32_S3_TouchFix
Esp32 s3 touch fix
2024-04-07 22:24:32 +02:00
Blaz Kristan 0c8d9d5614 Mode blending styles
- alternative to #3669
2024-04-03 18:38:06 +02:00
Blaz Kristan ecfdc6f0a8 Bugfixes:
- #3843
- #3844
- network scan on new install
- misc optimization
2024-03-22 20:49:13 +01:00
Will Miles df6c271830 Use web server ContentType symbols
These were mostly PROGMEM already, but every little bit helps.
2024-03-16 12:12:48 -04:00
Christian Schwinne b2afac8914 GIFs work again in principle 2024-03-10 21:36:13 +01:00
Christian Schwinne 3ad56ea103 GIF testing 2024-03-10 14:34:15 +01:00
Christian Schwinne 7e17011ebc Revert "Merge branch 'gif' into 0_15"
This reverts commit cb5eb9edc7, reversing
changes made to da5c12f466.
2024-03-09 20:00:41 +01:00
Christian Schwinne cb5eb9edc7
Merge branch 'gif' into 0_15 2024-03-09 18:23:59 +01:00
Blaz Kristan da6d64e581 Multiple fixes
- compile time button configuration #3792
- remove IR config if not compiled
- additional string optimisations
2024-03-05 16:27:28 +01:00
Damian Schneider c8f48168b4 fixed touch buttons for ESP32 S2 and S3
touch is implemented differently on S2 and S3, these changes make touch buttons work on S2 and S3
2024-03-04 14:38:37 +01:00
Blaz Kristan 41129cf379 Sqeeze every byte 2024-02-25 17:08:01 +01:00
Blaz Kristan 95e2e574b8 ESP-NOW packet modification
- include up to 5 segments in 1st packet
- header contains total number of packets (instead of segments)

web server code reorganise
2024-02-15 20:40:55 +01:00
Blaz Kristan 66d9e8c038 Merge branch '0_15' into harmonic-random-palette-generator 2024-02-06 10:53:44 +01:00
Damian Schneider ca05aa84ff changed randomness and added optimizations
-added fully random palette function ('the old way', currently just used for initialization)
-changed randomness values to make it a little less random
-added 10% chance for pastel color palette
-now using swap() from std library for shuffeling
-changed function name
-moved update check from loadPalette() to handleRandomPalette() saving CPU cycles
2024-01-30 22:28:40 +01:00
Damian Schneider f5ed757780 added some minor fixes
-fastled flags
-gamma correction
-pass by reference instead of pointer
2024-01-29 20:47:09 +01:00
Damian Schneider bccc97d25f fixed include, bugfix in random palette handling 2024-01-29 20:47:08 +01:00
Damian Schneider a9bcc75733 added function to generate random palette based on harmonic color theory 2024-01-29 20:47:08 +01:00
Blaz Kristan bfb217c203 Implement multiple WiFi
- similar to #3705
- solves #2845, #2974, #852, #1228
2024-01-21 00:30:15 +01:00
Christian Schwinne 9378fc7276 Merge remote-tracking branch 'origin/0_15' into gif 2024-01-16 21:53:08 +01:00
Will Miles 6382d2b730 Add C++-style guard class for JSON Buffer lock
Add JSONBufferGuard, an RAII lock guard class for JSONBufferLock
analogous to std::lock_guard.  This permits binding the guard to a scope,
such as an object life cycle or function body, guaranteeing that the
lock will be released when the scope exits.
2024-01-06 10:05:18 -05:00
Blaz Kristan 67ae716c60 JSON HTTP error handling 2023-12-12 15:45:57 +01:00
Blaz Kristan 2b616b688d Implement global JSON API boolean toggle. 2023-11-06 20:08:45 +01:00
Blaz Kristan cc68e6b6e6 Squashed commit of the following:
Remove sync receive
Disallow 2D effects on non-2D segments
Optimisations
Sync clarification
AR palettes
Return of 2 audio simulations
Bugfix in sync #3344
    - remove excessive segments
    - ignore inactive segments if not syncing bounds
    - send UDP/WS on segment change
    - pop_back() when removing last segment
Add pairing support for ESP-NOW sync
Reduce string RAM footprint
UDP parse optimisation
Make WizMote work with sync.
ESP-NOW wireless sync POC.
    - caveat: devices have to be on the same channel
    - clashes with WizMote handling ATM
2023-09-10 18:52:14 +02:00
Aircoookie 2f9c126d34 GIF Error codes 2023-07-31 18:13:03 +02:00
cschwinne c16462a0ce Experimental GIF support 2023-06-30 23:59:29 +02:00
Christian Schwinne 481bd6f57a
Add WiFi network scan RPC command to Improv Serial (#3271) 2023-06-27 01:51:44 +02:00
Clayton Sims e4ee392c27
Support for ESP-NOW Wireless Remote Control (#3237)
* Initial checkin for ESP-NOW remote feature

* cleanup irrelevant comment

* don't bring in espnow package includes when feature disabled

* Formatting and removing inaccurate call mode hardcoding

* Fork ESP Now code by platform (8266 v. esp32)

* compiled html update

* Disable ESP-NOW remote by default on ESP32 until tested

* Enable ESP-NOW remote for ESP32

* Rename ESP NOW define

---------

Co-authored-by: cschwinne <dev.aircoookie@gmail.com>
2023-06-22 10:06:19 +02:00
Aircoookie dd9da2853a Support settings pin unlock via JSON
Also supports locking by providing any incorrect pin
2023-06-14 11:53:39 +02:00
Blaz Kristan 3ca58ee65f Pin dropdowns POC.
NeoPixelBusGammaMethod POC.
PixelMagic POC.
Button reassign POC.
2023-06-10 20:43:27 +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
Blaz Kristan 763b64cc57 Combat low memory condition on ESP8266. 2023-03-10 15:20:50 +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 c041d39cab Usermod enhancements
- added onStateChange() callback
- added examples & comments to usermod_v2_example.h
- PIR sensor cancels countdown on state change
2023-02-05 12:23:05 +01:00
Blaz Kristan d78bef72ea Disable MQTT more.
Disable Alexa more.
2023-01-12 20:35:34 +01:00
Blaž Kristan 506b6b51ce whitespace cleanup 2023-01-06 09:24:29 +01:00
Blaz Kristan c47d6cffa8 Missing presets.json on factory reset bugfix.
Clarification on loading ledmaps in UI.
Added manual ledmap loading.
2022-11-16 20:55:21 +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 7642f8d702 Async preset saving.
Minor bugfixes.
2022-10-08 18:25:51 +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 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 1cb3ab82c2 Reduction of flicering on web access (info) 2022-08-10 20:53:11 +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 1abf0fc134 Deprecate EEPROM support (compile time option). 2022-07-30 11:04:04 +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 8e9637f6d4 Default effect values. 2022-07-23 22:00:19 +02:00
Blaž Kristan 35250677b9 Prevent I2S use for LEDs w/ Audioreactive on ESP32 2022-07-22 08:59:04 +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 8c759cb65a Usermod config info & data. 2022-06-11 18:55:23 +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 dd584e929f Added audioreactive to usermod_list
Formatting in usermod
2022-06-10 16:37:55 +02:00
Blaz Kristan 184ff7a3b3 Audioreactive usermod. 2022-06-08 21:14:01 +02:00
Blaz Kristan f1a1b89d13 Fixes.
- correct preset cycling
- updated rotary encoder preset selection
2022-06-03 22:22:18 +02:00
Blaz Kristan 17be0a2c12 Enhance rotary encoder with custom sliders.
Soft watchdog timer (by poelzi)
2022-05-24 13:45:35 +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
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 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
Blaž Kristan 0234017ca1 Merge branch 'master' into master-merge 2022-03-15 09:55:23 +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
Blaž Kristan e561304645 Merge branch 'master' into master-merge 2022-03-07 09:44:35 +01:00
cschwinne a2c8796e04 Replaced native Cronixie support with usermod 2022-03-06 23:47:36 +01:00
Blaz Kristan 9fd26fa574 Settings PIN protection. 2022-03-01 23:37:28 +01:00
Blaz Kristan 4ce557a829 Multiple fixes:
- ability so select mainseg (UI)
- changed preset sort (UI)
- IR40 white +/- fix
- IR repeatable actions fix
- minor UI CSS change
- removed unnecessary color functions
2022-02-27 22:19:05 +01:00
Blaz Kristan 4d10c9de95 Removed unnecessary set call.
Fixed incorrect colorUpdated call.
Fixed white +/- in IR40 remote.
2022-02-27 16:18:37 +01:00
Blaž Kristan 7beae93441
IR rewrite. (#2561)
* IR rewrite.
- added CCT (WW/CW) support
- support for applying change to main segment or all selected segments

* Remove extra setValuesFromFirstSelectedSeg()

Co-authored-by: cschwinne <dev.aircoookie@gmail.com>
2022-02-26 01:37:09 +01:00
Blaž Kristan c8f1297adb Fixed main/first selected segments in IR.
Code optimization.
2022-02-25 10:24:00 +01:00
Blaž Kristan 23d7c3d0fe Merge branch 'master' into merge-master 2022-02-24 13:43:12 +01:00
cschwinne ed90b638a9 Main seg replaced by first selected in internal interfaces
Version bump to 0.13.0-b7
Various small improvements
2022-02-23 19:20:07 +01:00
Blaz Kristan 2e84f82ed6 Fix for incorrect application of color in set.cpp 2022-02-21 19:44:12 +01:00
cschwinne ae0eba866a Improve Stream and fix HTTP segment application 2022-02-21 16:19:11 +01:00
Blaz Kristan 41b6f3ffa7 Merge branch 'master' into merge-master 2022-02-20 22:24:11 +01:00
cschwinne 7b969bb8c2 Various state changed logic simplifications
Changed main segment, must be selected
2022-02-16 21:12:33 +01:00
Blaz Kristan f8eece362f Compile fix.
Adjusted function names.
2022-02-10 16:09:16 +01:00
Blaz Kristan a5b19bbc83 Multiple changes:
- added segment capabilities utility
- removed colorFromUinXX functions
- rewritten IR color handling (changeColor())
2022-02-10 13:24:51 +01:00
Blaz Kristan e35ad7551b Apply IR to main or selected segments.
Refactored IR code.
2022-02-07 00:40:45 +01:00
Blaz Kristan 52f0ae9350 Merge branch 'master' into master-merge
Few UI fixes.
2022-02-03 17:40:44 +01:00
Blaz Kristan 09bcf34050 Non-effect preset should not unload playlist. 2022-02-02 20:53:16 +01:00
Christian Schwinne 795c515999
Merge pull request #2517 from ChuckMash/serial+
Extend Serial functions. Baudrate changeable during runtime and fast LED data retrieval
2022-02-01 20:07:30 +01:00
cschwinne 00dbdc2267 Baud rate setting 2022-02-01 20:02:46 +01:00
Christian Schwinne 565d8d8f04
Binary Websockets for Peek (#2516)
* Binary Websockets for Peek

* No IRAM_ATTR here

* Use builtin LittleFS for all ESP32 builds

* Attempt LittleFS compilation fix

* Use tasmota zip for all ESP32 builds

* Revert to Arduino Core 1 for the time being
2022-02-01 12:02:04 +01:00
Blaž Kristan 0a5a0bef48
Enhanced usermods. (#2522) 2022-02-01 09:33:57 +01:00
Blaz Kristan 6e0e5c102e Added extractModeName() utility function. 2022-01-31 20:43:35 +01:00
Blaz Kristan d31271fee3 Minor fixes:
- optimized setPixelSegment()
- moved extractModeName() to util.cpp
- optimized extractModeName()
- removed SR extensions from /json/effects endpoint (compatibility estabished)
2022-01-31 20:35:11 +01:00
Blaz Kristan 3332375d7c A few fixes.
Added HA autodiscovery to Multi relay usermod.
2022-01-21 17:30:52 +01:00
Blaz Kristan 7eb029dcb6 Complete segment syncing.
Reduced complexity of colorUpdated regarding effect/color change.
Minor optimizations.
2022-01-15 14:04:16 +01:00
Blaž Kristan 1ab555b590 Cleaning colorUpdated() & UDP segment syncing.
Added selected segments only save.
2022-01-14 14:27:11 +01:00
Blaz Kristan 8386b9a0b4 Removed dynamic JSON buffer entirely.
Temporary presets in RAM (ESP32)
Async loading of presets (stability).
Other minor fixes.
Bumped version to 0.13.1-bl6
2022-01-01 12:52:50 +01:00
Blaz Kristan f45b5da71a GZIPped UI & settings pages.
settings.js for pasting data into HTML.
Reduced simple & classic flash footprint.
Split iro.js and rangetouch.js into separate requests (instead of embedding)
2021-12-06 20:53:09 +01:00