diff --git a/CHANGELOG.md b/CHANGELOG.md
index 1626051d3..0df948c52 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -2,6 +2,15 @@
### Development versions after 0.9.1 release
+#### Build 2004300
+
+- Added realtime override option and `lor` JSON property
+- Added `lm` (live mode) and `lip` (live IP) properties to info in JSON API
+- Added reset commands to APIs
+- Added `json/si`, returning state and info, but no FX or Palette lists
+- Added rollover detection to millis(). Can track uptimes longer than 49 days
+- Attempted to fix Wifi issues with Unifi brand APs
+
#### Build 2004230
- Added brightness and power for individual segments
diff --git a/wled00/const.h b/wled00/const.h
index 176043781..533a5f270 100644
--- a/wled00/const.h
+++ b/wled00/const.h
@@ -45,6 +45,11 @@
#define REALTIME_MODE_ADALIGHT 5
#define REALTIME_MODE_ARTNET 6
+//realtime override modes
+#define REALTIME_OVERRIDE_NONE 0
+#define REALTIME_OVERRIDE_ONCE 1
+#define REALTIME_OVERRIDE_ALWAYS 2
+
//E1.31 DMX modes
#define DMX_MODE_DISABLED 0 //not used
#define DMX_MODE_SINGLE_RGB 1 //all LEDs same RGB color (3 channels)
diff --git a/wled00/e131.cpp b/wled00/e131.cpp
index 6e774194a..bfd93d691 100644
--- a/wled00/e131.cpp
+++ b/wled00/e131.cpp
@@ -56,6 +56,7 @@ void handleE131Packet(e131_packet_t* p, IPAddress clientIP, bool isArtnet){
if (uni != e131Universe) return;
if (dmxChannels-DMXAddress+1 < 3) return;
realtimeLock(realtimeTimeoutMs, mde);
+ if (realtimeOverride) return;
for (uint16_t i = 0; i < ledCount; i++)
setRealtimePixel(i, e131_data[DMXAddress+0], e131_data[DMXAddress+1], e131_data[DMXAddress+2], 0);
break;
@@ -64,6 +65,7 @@ void handleE131Packet(e131_packet_t* p, IPAddress clientIP, bool isArtnet){
if (uni != e131Universe) return;
if (dmxChannels-DMXAddress+1 < 4) return;
realtimeLock(realtimeTimeoutMs, mde);
+ if (realtimeOverride) return;
if (DMXOldDimmer != e131_data[DMXAddress+0]) {
DMXOldDimmer = e131_data[DMXAddress+0];
bri = e131_data[DMXAddress+0];
@@ -103,6 +105,7 @@ void handleE131Packet(e131_packet_t* p, IPAddress clientIP, bool isArtnet){
case DMX_MODE_MULTIPLE_RGB:
realtimeLock(realtimeTimeoutMs, mde);
+ if (realtimeOverride) return;
if (previousUniverses == 0) {
// first universe of this fixture
possibleLEDsInCurrentUniverse = (dmxChannels - DMXAddress + 1) / 3;
@@ -125,6 +128,7 @@ void handleE131Packet(e131_packet_t* p, IPAddress clientIP, bool isArtnet){
case DMX_MODE_MULTIPLE_DRGB:
realtimeLock(realtimeTimeoutMs, mde);
+ if (realtimeOverride) return;
if (previousUniverses == 0) {
// first universe of this fixture
if (DMXOldDimmer != e131_data[DMXAddress+0]) {
diff --git a/wled00/html_settings.h b/wled00/html_settings.h
index 009dda502..b44f29421 100644
--- a/wled00/html_settings.h
+++ b/wled00/html_settings.h
@@ -344,7 +344,7 @@ Hue Bridge IP:
Press the pushlink button on the bridge, after that save this page!
(when first connecting)
-Hue status: Disabled in this build