diff --git a/wled00/FX.h b/wled00/FX.h index 31cfefc94..2cd886f61 100644 --- a/wled00/FX.h +++ b/wled00/FX.h @@ -545,7 +545,7 @@ class WS2812FX { //10 names per line const char JSON_mode_names[] PROGMEM = R"=====([ "Solid","Blink","Breathe","Wipe","Wipe Random","Random Colors","Sweep","Dynamic","Colorloop","Rainbow", -"Scan","Dual Scan","Fade","Chase","Chase Rainbow","Running","Saw","Twinkle","Dissolve","Dissolve Rnd", +"Scan","Dual Scan","Fade","Theater","Theater Rainbow","Running","Saw","Twinkle","Dissolve","Dissolve Rnd", "Sparkle","Dark Sparkle","Sparkle+","Strobe","Strobe Rainbow","Mega Strobe","Blink Rainbow","Android","Chase","Chase Random", "Chase Rainbow","Chase Flash","Chase Flash Rnd","Rainbow Runner","Colorful","Traffic Light","Sweep Random","Running 2","Red & Blue","Stream", "Scanner","Lighthouse","Fireworks","Rain","Merry Christmas","Fire Flicker","Gradient","Loading","In Out","In In", diff --git a/wled00/html_settings.h b/wled00/html_settings.h index 98b9012e4..cb3b29fc3 100644 --- a/wled00/html_settings.h +++ b/wled00/html_settings.h @@ -52,7 +52,7 @@ mDNS address (leave empty for no mDNS):
http:// .local
Client IP: Not connected

Configure Access Point

-AP SSID (leave empty for no AP):

+AP name (SSID):

Hide AP name:
AP password (leave empty for open):

Access Point WiFi channel:
@@ -316,6 +316,7 @@ Time zone: +
UTC offset: seconds (max. 18 hours)
Current local time is unknown. diff --git a/wled00/wled00.ino b/wled00/wled00.ino index 96e136e45..88157e816 100644 --- a/wled00/wled00.ino +++ b/wled00/wled00.ino @@ -100,7 +100,7 @@ //version code in format yymmddb (b = daily build) -#define VERSION 1910255 +#define VERSION 1910291 char versionString[] = "0.8.6"; @@ -409,7 +409,7 @@ time_t local = 0; unsigned long ntpLastSyncTime = 999000000L; unsigned long ntpPacketSentTime = 999000000L; IPAddress ntpServerIP; -unsigned int ntpLocalPort = 2390; +uint16_t ntpLocalPort = 2390; #define NTP_PACKET_SIZE 48 #define MAX_LEDS 1500 diff --git a/wled00/wled10_ntp.ino b/wled00/wled10_ntp.ino index e9eec7694..6eb5d9070 100644 --- a/wled00/wled10_ntp.ino +++ b/wled00/wled10_ntp.ino @@ -52,7 +52,10 @@ Timezone tzNZ(NZDT, NZST); TimeChangeRule NKST = {Last, Sun, Mar, 1, 510}; //Pyongyang Time = UTC + 8.5 hours Timezone tzNK(NKST, NKST); -Timezone* timezones[] = {&tzUTC, &tzUK, &tzEUCentral, &tzEUEastern, &tzUSEastern, &tzUSCentral, &tzUSMountain, &tzUSArizona, &tzUSPacific, &tzChina, &tzJapan, &tzAUEastern, &tzNZ, &tzNK}; +TimeChangeRule IST = {Last, Sun, Mar, 1, 330}; // India Standard Time = UTC + 5.5 hours +Timezone tzIndia(IST, IST); + +Timezone* timezones[] = {&tzUTC, &tzUK, &tzEUCentral, &tzEUEastern, &tzUSEastern, &tzUSCentral, &tzUSMountain, &tzUSArizona, &tzUSPacific, &tzChina, &tzJapan, &tzAUEastern, &tzNZ, &tzNK, &tzIndia}; void handleNetworkTime() { diff --git a/wled00/wled17_mqtt.ino b/wled00/wled17_mqtt.ino index 6a52b85e8..53d499d4a 100644 --- a/wled00/wled17_mqtt.ino +++ b/wled00/wled17_mqtt.ino @@ -102,7 +102,7 @@ char* buffer; void sendHADiscoveryMQTT() { - +//TODO: With LwIP 1 the ESP loses MQTT connection and causes memory leak when sending discovery packet #if ARDUINO_ARCH_ESP32 || LWIP_VERSION_MAJOR > 1 /* diff --git a/wled00/wled19_json.ino b/wled00/wled19_json.ino index d2a3e8a1d..9d02d457c 100644 --- a/wled00/wled19_json.ino +++ b/wled00/wled19_json.ino @@ -77,21 +77,22 @@ bool deserializeState(JsonObject root) } } - byte fx = elem["fx"] | seg.mode; - if (fx != seg.mode && fx < strip.getModeCount()) strip.setMode(id, fx); - seg.speed = elem["sx"] | seg.speed; - seg.intensity = elem["ix"] | seg.intensity; - seg.palette = elem["pal"] | seg.palette; //if (pal != seg.palette && pal < strip.getPaletteCount()) strip.setPalette(pal); seg.setOption(0, elem["sel"] | seg.getOption(0)); //selected seg.setOption(1, elem["rev"] | seg.getOption(1)); //reverse //int cln = seg_0["cln"]; - //temporary + //temporary, strip object gets updated via colorUpdated() if (id == 0) { - effectCurrent = seg.mode; - effectSpeed = seg.speed; - effectIntensity = seg.intensity; - effectPalette = seg.palette; + effectCurrent = elem["fx"] | effectCurrent; + effectSpeed = elem["sx"] | effectSpeed; + effectIntensity = elem["ix"] | effectIntensity ; + effectPalette = elem["pal"] | effectPalette; + } else { //permanent + byte fx = elem["fx"] | seg.mode; + if (fx != seg.mode && fx < strip.getModeCount()) strip.setMode(id, fx); + seg.speed = elem["sx"] | seg.speed; + seg.intensity = elem["ix"] | seg.intensity; + seg.palette = elem["pal"] | seg.palette; } } it++;