Commit Graph

269 Commits

Author SHA1 Message Date
mxklb
84457b7334 Fix compile error 2023-11-17 14:28:44 +01:00
Blaz Kristan
f329a5950e Speed optimisations. 2023-10-15 13:06:40 +02:00
Blaz Kristan
3b74cd5676 Merge branch 'main' into 0_15 2023-10-02 21:20:20 +02:00
Frank
1c3fdb73fb optimization: only use "float" math functions
- saves 5KB flash and some RAM
-allow to build with -D WLED_USE_UNREAL_MATH, to restore old behaviour and save another 6KB flash
2023-10-01 19:04:30 +02: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
Frank
b4fe694d1b esp32 buildenv with audioreactive
To make it better readable and prevent copy&paste errors, all needed flags can be referenced from the "esp32" buildenv:
  ${esp32.AR_build_flags}
  ${esp32.AR_lib_deps}
2023-09-10 16:30:04 +02:00
Frank
c117785554 8266 optional build flags to increase IRAM
related to #3364
2023-09-10 02:00:09 +02:00
cschwinne
04aa9f0e61 Release of WLED beta 0.14.0-b4 2023-08-11 23:11:08 +02:00
Frank
5df197e814
disable ESP-NOW remotes in ethernet build (will crash without wifi) 2023-08-01 13:11:06 +02:00
Frank
c8fdf3731a upgrade to FastLED 3.6.0
changes from 3.50 to 3.6.0:
* bugfixes
* removed "register" keyword
* some speedups
* explicit bool() and uint32_t() operators, see https://github.com/FastLED/FastLED/issues/819

FX.cpp:  bugfix for "wled00/FX.cpp:4906:36:
error: cannot convert 'CRGB' to 'uint32_t' {aka 'unsigned int'} in initialization"
2023-07-20 22:36:47 +02:00
Frank
f8e766ffc0 add -S3 PSRAM (qio_opi) to nightly builds 2023-07-20 22:21:02 +02:00
Frank
2db966ba47 Improvements for -S3 with PSRAM
qio_opi:   PSRAM  8MB or 16MB
qio_qspi:  PSRAM  2MB or 4MB

fun fact: _opi and _qspi modes both require a special bootloader.
2023-07-20 22:09:14 +02:00
Frank
aa54d65f63 upgrade -S3/-S2/-C3 to platform 5.3.0
platform 5.3.0 = arduino-esp32 v2.0.6 + esp-idf v4.4.3

--> you will need new bootloader files for arduino-esp32 v2.0.6

--> coredumps are supported now, if you leave 64Kb of flash at the end of your partitions file (see example in wled_esp32_8MB.csv)
2023-07-20 21:39:25 +02:00
Christian Schwinne
481bd6f57a
Add WiFi network scan RPC command to Improv Serial (#3271) 2023-06-27 01:51:44 +02:00
cschwinne
c04c73bbd7 WS logic: No resending, improved ESP8266 stability
Update ESP8266 core to 3.1.2
2023-06-18 01:07:50 +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
Frank
bc90309dd6 fix error message in latest platformio
fix for "Error: Invalid environment name 'codm-controller-0.6-rev2'. The name can contain alphanumeric, underscore, and hyphen characters (a-z, 0-9, -, _)"
2023-05-09 17:34:30 +02:00
Frank
cd82a34392 fixing github CI builds for -S3/-S2/-C3
explicitly adding `toolchain-riscv32-esp @ 8.4.0+2021r2-patch5` seems to do the trick.

Suggested here:
* https://github.com/platformio/platform-espressif32/issues/1081#issuecomment-1518601054
2023-05-01 16:54:30 +02:00
Blaz Kristan
432c5837f0 Bugfix
- WiFi power for Lolin S2 & C3 (use -DLOLIN_WIFI_FIX)
- web response buffer size (corruption when websockets not used)
2023-04-30 17:30:36 +02:00
Blaz Kristan
0aea75edb7 NeoPixelBus 2.7.5
UI bugfix
2023-04-28 16:52:48 +02:00
Blaž Kristan
e00116551c
Add Ucs890x support and swaps NeoPixelBrightnessBus with NeoPixelBusLg (#3091)
* Add UCS890x support.

* Fixes

* Update NeoPixelBus to 2.7.3 for UCS8904 support.
Update ESP8266 core to 4.1.0

* ESP8266 compile fixes.
- use PlatformIO framework and toolchain
- add compiler warning suppression
- remove IRAM_ATTR to fit in IRAM

* Replace NeoPixelBrightnessBus with NeoPixelBusLg
Resolves #3087

* Update to NPB 2.7.4

* Internal NPB color conversions.

* Fix errors due to merge with SPI Hz methods

Regenerate settings page HTML

---------

Co-authored-by: Christian Schwinne <dev.aircoookie@gmail.com>
2023-04-28 01:28:57 +02:00
cschwinne
4d55e05b07 Fix CI properly
Small 2D Soap FX optimizations
2023-04-28 00:51:34 +02:00
Blaž Kristan
9ff3f85432
Allow SPI clock speed selection. (#3173)
* Allow SPI clock speed selection.

* Bump NPB to 2.7.4
2023-04-28 00:27:19 +02:00
Christian Schwinne
468ed1a9ce
Restore Github actions CI build (#3187)
* Update dependencies

* Do not fail fast

* Disable ESP32 variant CI builds
2023-04-26 10:52:54 +02: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
Frank
d48e4adcd4 CI build fix
seems that NPB 2.7.4 introduces new incompatibilities that break our gh build action.
2023-04-13 12:16:32 +02:00
Blaz Kristan
5875b1988b Change log update 2023-04-11 21:34:43 +02:00
Frank
af44730418 platformio.ini minor cleanups
- fixed a few typos, trailing spaces and bad alignments
- added the previous 8266 platform packages as a comment, just in case
- [env:esp32dev_V4_qio80] is actually "dio" --> renamed to [env:esp32dev_V4_dio80]
- all esp32dev targets use the same ${esp32.platform} now (3.2.0 would not compile any more)
2023-03-31 15:44:21 +02:00
Frank
54eb42d658 build env for -C3 with only 2MB flash
based on proposal from  in PR #2951 by @andyshinn.
2MB does not allow to have an OTA partition, so this feature is disabled.
2023-03-30 00:20:01 +02:00
Frank
a7a6f4cec6 small re-organization of build flags
* -Wno-attributes added to common flags
* USB_MSC and USB_DFU flags moved to common board sections (does not make sense with WLED to ernable these)
2023-03-30 00:03:04 +02:00
Christian Schwinne
3968a8e0dc
Attempt fixing GitHub actions ESP8266 build (#3151)
(explicit toolchain version)
2023-03-28 23:19:00 +02:00
Frank
890aa6f9ac experimental esp32 buildenv with platform = espressif32@5.2.0
experimental ESP32 buildenv using ESP-IDF V4.4.x / arduino-esp32 v2.0.5
Warning: this build environment is not stable!!
2023-03-22 00:46:27 +01:00
Frank
646cf44b83 moved register override into 8266 section,
so it cannot destroy builds for ESP32 devices
2023-03-22 00:06:25 +01:00
Frank
bf789ca97b minor cleanup 2023-03-21 23:36:50 +01:00
Frank
9b90ff10f4 buildenv improvements for -S3/-S2/-C3
- corrected some broken references
- added `platform_package =` --> use default packages
- renamed env:esp32c3 to env:esp32c3dev to avoid confusion
- added lolin_s2_mini to CI builds
2023-03-21 23:15:08 +01:00
Blaz Kristan
0cc719a823 Remove "register" override 2023-03-21 20:01:16 +01:00
Blaz Kristan
4cd026dfe9 ESP8266 core 4.1.0, ESP32 core 5.2.0 (S2,S3,C3)
NeoPixelBus 2.7.3 (adding UCS890x support)
2023-03-21 17:28:04 +01:00
Aiden
3120b49dba
Add some Athom devices (#3114)
Add some compile configurations for Athom's devices
2023-03-20 23:44:12 +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
Frank
b8cc783583 pio: minor update for -C3
adding optional platform version that seems to help in some special cases.
2023-01-09 13:20:02 +01:00
cschwinne
72eb61951b Dynamically show hidden color slots for * palettes
Disable Blynk by default in release builds
Single quote strings everywhere for classList
2022-12-23 02:59:24 +01:00
Frank
d7b5719dfd add mandatory build flags for -S2 and -C3 (virtual USB)
I was wondering why sometimes the new MCUs still work better in Arduino IDE, so compared our build flags to what is used in Arduino IDE:

-S2 always has -DARDUINO_USB_MODE=0
-C3 always has -DARDUINO_USB_MODE=1
-S3 supports all possible modes
2022-12-21 22:07:15 +01:00
Frank
cafa78c3f3 fixing CI build. really now.
-check IDF target after including arduino.h
-add missing build flags in [env:esp32s2_saola]
2022-12-10 19:00:48 +01:00
Frank
88d05578a8
platformio.ini: do not redefine "register" as it break ASM code and affects methods called "register" as well
unfortunately this breaks build for -C3 and -S3

/.platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/riscv/include/riscv/semihosting.h:75:19: warning: ignoring asm-specifier for non-static local variable 'a0'
     register long a0 asm ("a0") = id;
                   ^~
.platformio/packages/framework-arduinoespressif32/tools/sdk/esp32c3/include/riscv/include/riscv/semihosting.h:76:19: warning: ignoring asm-specifier for non-static local variable 'a1'
     register long a1 asm ("a1") = (long) data;
2022-12-08 22:00:44 +01:00
Frank
3da2ec5112 upps
forgot to remove this.
2022-12-08 13:20:50 +01:00
Frank
c3545ef060 build env update for -S3 without serial-to-USB chip
small -S3 like Adafruit "QT Py ESP32-C3" seems to need USBCDC.
2022-12-08 12:47:34 +01:00
Frank
da7972c119 use latest NeoPixelBus for -S3
NeoPixelBus 2.7.1 is the first release that has official support for ESP32-S3
2022-12-05 16:20:58 +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
Frank
9a44f0c869 small update for env:esp32s3dev_8MB_PSRAM
- corrected board
- added link to workaround
2022-11-26 15:13:54 +01:00
Ewoud
78e9f5bd1a
Clean up UserMod settings: grouping of variables and add preInfo to variables (#2894)
* Grouping um settings, add pre and post Info, update  SR & 4LD settings

Settings_um.htm: 
- modify addField (grouping)
- addInfo (pre and post texts)

Add preInfo to audio reactive and 4ld usermod

Extra:
platformio: wemos_shield: add audio reactive usermod and update to alt display

* um settings: cpp: lowercase, js: initcap

* um settings: txt only pre, txt2 only post and initCap as function

* Fix rotary encoder info string

Co-authored-by: Blaž Kristan <blaz@kristan-sp.si>
2022-11-26 03:44:04 +01:00