diff --git a/platformio.ini b/platformio.ini index c6b42150..3fba4998 100644 --- a/platformio.ini +++ b/platformio.ini @@ -12,7 +12,7 @@ ; default_envs = travis_esp8266, travis_esp32 # Release binaries -default_envs = nodemcuv2, esp8266_2m, esp01_1m_full, esp32dev, esp32_eth, esp32_eth_ota1mapp, esp32s2_saola, esp32c3 +default_envs = nodemcuv2, esp8266_2m, esp01_1m_full, esp32dev, esp32_eth, esp32s2_saola, esp32c3 # Build everything ; default_envs = esp32dev, esp8285_4CH_MagicHome, codm-controller-0.6-rev2, codm-controller-0.6, esp32s2_saola, d1_mini_5CH_Shojo_PCB, d1_mini, sp501e, travis_esp8266, travis_esp32, nodemcuv2, esp32_eth, anavi_miracle_controller, esp07, esp01_1m_full, m5atom, h803wf, d1_mini_ota, heltec_wifi_kit_8, esp8285_H801, d1_mini_debug, wemos_shield_esp32, elekstube_ips @@ -204,9 +204,11 @@ lib_deps = makuna/NeoPixelBus @ 2.6.7 # 2.6.5/2.6.6 and newer do not compile on ESP core < 3.0.0 [esp32] -#platform = https://github.com/tasmota/platform-espressif32/releases/download/v2.0.2/platform-tasmota-espressif32-2.0.2.zip +#platform = https://github.com/tasmota/platform-espressif32/releases/download/v2.0.2.3/platform-espressif32-2.0.2.3.zip platform = espressif32@3.5.0 +platform_packages = framework-arduinoespressif32 @ https://github.com/Aircoookie/arduino-esp32.git#1.0.6.4 + build_flags = -g -DARDUINO_ARCH_ESP32 #-DCONFIG_LITTLEFS_FOR_IDF_3_2 @@ -320,8 +322,9 @@ lib_deps = ${esp8266.lib_deps} [env:esp32dev] board = esp32dev platform = ${esp32.platform} +platform_packages = ${esp32.platform_packages} build_unflags = ${common.build_unflags} -build_flags = ${common.build_flags_esp32} -D WLED_RELEASE_NAME=ESP32 -D WLED_DISABLE_BLYNK #-D WLED_DISABLE_BROWNOUT_DET +build_flags = ${common.build_flags_esp32} -D WLED_RELEASE_NAME=ESP32 #-D WLED_DISABLE_BLYNK #-D WLED_DISABLE_BROWNOUT_DET lib_deps = ${esp32.lib_deps} monitor_filters = esp32_exception_decoder board_build.partitions = ${esp32.default_partitions} @@ -329,17 +332,13 @@ board_build.partitions = ${esp32.default_partitions} [env:esp32_eth] board = esp32-poe platform = ${esp32.platform} +platform_packages = ${esp32.platform_packages} upload_speed = 921600 build_unflags = ${common.build_unflags} build_flags = ${common.build_flags_esp32} -D WLED_RELEASE_NAME=ESP32_Ethernet -D RLYPIN=-1 -D WLED_USE_ETHERNET -D BTNPIN=-1 lib_deps = ${esp32.lib_deps} board_build.partitions = ${esp32.default_partitions} -# ESP32 ETH build that fits in old 1M app space (disables Blynk and Hue sync) -[env:esp32_eth_ota1mapp] -extends = env:esp32_eth -build_flags = ${common.build_flags_esp32} -D WLED_RELEASE_NAME=ESP32_Ethernet_OTA -D RLYPIN=-1 -D WLED_USE_ETHERNET -D BTNPIN=-1 -D WLED_DISABLE_BLYNK -D WLED_DISABLE_HUESYNC - [env:esp32s2_saola] board = esp32-s2-saola-1 platform = https://github.com/tasmota/platform-espressif32/releases/download/v2.0.2.2/platform-tasmota-espressif32-2.0.2.zip diff --git a/wled00/FX.cpp b/wled00/FX.cpp index 5a9fcd1c..fa6cb355 100644 --- a/wled00/FX.cpp +++ b/wled00/FX.cpp @@ -2346,7 +2346,7 @@ uint16_t WS2812FX::mode_ripple_rainbow(void) { // incandescent bulbs change color as they get dim down. #define COOL_LIKE_INCANDESCENT 1 -CRGB WS2812FX::twinklefox_one_twinkle(uint32_t ms, uint8_t salt, bool cat) +CRGB IRAM_ATTR WS2812FX::twinklefox_one_twinkle(uint32_t ms, uint8_t salt, bool cat) { // Overall twinkle speed (changed) uint16_t ticks = ms / SEGENV.aux0; diff --git a/wled00/FX.h b/wled00/FX.h index d9f826b8..ca288026 100644 --- a/wled00/FX.h +++ b/wled00/FX.h @@ -671,9 +671,13 @@ class WS2812FX { setPixelSegment(uint8_t n), gamma8(uint8_t), gamma8_cal(uint8_t, float), - sin_gap(uint16_t), get_random_wheel_index(uint8_t); + inline uint8_t sin_gap(uint16_t in) { + if (in & 0x100) return 0; + return sin8(in + 192); // correct phase shift of sine so that it starts and stops at 0 + } + int8_t tristate_square8(uint8_t x, uint8_t pulsewidth, uint8_t attdec); diff --git a/wled00/FX_fcn.cpp b/wled00/FX_fcn.cpp index 4c98480d..4dae5a12 100644 --- a/wled00/FX_fcn.cpp +++ b/wled00/FX_fcn.cpp @@ -937,12 +937,6 @@ uint16_t IRAM_ATTR WS2812FX::triwave16(uint16_t in) return 0xFFFF - (in - 0x8000)*2; } -uint8_t IRAM_ATTR WS2812FX::sin_gap(uint16_t in) { - if (in & 0x100) return 0; - //if (in > 255) return 0; - return sin8(in + 192); //correct phase shift of sine so that it starts and stops at 0 -} - /* * Generates a tristate square wave w/ attac & decay * @param x input value 0-255 diff --git a/wled00/html_other.h b/wled00/html_other.h index 72a0b224..c73e9c94 100644 --- a/wled00/html_other.h +++ b/wled00/html_other.h @@ -85,7 +85,7 @@ charset="utf-8">