diff --git a/tasmota/xdrv_20_hue.ino b/tasmota/xdrv_20_hue.ino index 4b742bf65..9044d02b9 100644 --- a/tasmota/xdrv_20_hue.ino +++ b/tasmota/xdrv_20_hue.ino @@ -727,7 +727,12 @@ void HueLightsCommand(uint8_t device, uint32_t device_id, String &response) { if (Webserver->args()) { response = "["; +#ifdef ESP82666 // ESP8266 memory is limited, avoid copying and modify in place JsonParser parser((char*) Webserver->arg((Webserver->args())-1).c_str()); +#else // does not work on ESP32, we need to get a fresh copy of the string + String request_arg = Webserver->arg((Webserver->args())-1); + JsonParser parser((char*) request_arg.c_str()); +#endif JsonParserObject root = parser.getRootObject(); JsonParserToken hue_on = root[PSTR("on")];