mirror of https://github.com/arendst/Tasmota.git
Add Keep last channels values when Color command end with '=' #6799
This commit is contained in:
parent
538d40ab72
commit
ae7120b068
|
@ -4,6 +4,7 @@
|
||||||
* Change supported PCF8574 I2C address range to 0x20 - 0x26 allowing other I2C devices with address 0x27 to be used at the same time
|
* Change supported PCF8574 I2C address range to 0x20 - 0x26 allowing other I2C devices with address 0x27 to be used at the same time
|
||||||
* Change supported PCF8574A I2C address range to 0x39 - 0x3F allowing other I2C devices with address 0x38 to be used at the same time
|
* Change supported PCF8574A I2C address range to 0x39 - 0x3F allowing other I2C devices with address 0x38 to be used at the same time
|
||||||
* Change supported MCP230xx I2C address range to 0x20 - 0x26 allowing other I2C devices with address 0x27 to be used at the same time
|
* Change supported MCP230xx I2C address range to 0x20 - 0x26 allowing other I2C devices with address 0x27 to be used at the same time
|
||||||
|
* Add Keep last channels values when Color command end with '=' #6799
|
||||||
*
|
*
|
||||||
* 7.0.0.3 20191103
|
* 7.0.0.3 20191103
|
||||||
* Initial support for I2C driver runtime control using command I2CDriver and document I2CDEVICES.md
|
* Initial support for I2C driver runtime control using command I2CDriver and document I2CDEVICES.md
|
||||||
|
|
|
@ -1901,6 +1901,11 @@ bool LightColorEntry(char *buffer, uint32_t buffer_length)
|
||||||
}
|
}
|
||||||
|
|
||||||
memset(&Light.entry_color, 0x00, sizeof(Light.entry_color));
|
memset(&Light.entry_color, 0x00, sizeof(Light.entry_color));
|
||||||
|
// erase all channels except if the last character is '=', #6799
|
||||||
|
while ((buffer_length > 0) && ('=' == buffer[buffer_length - 1])) {
|
||||||
|
buffer_length--; // remove all trailing '='
|
||||||
|
memcpy(&Light.entry_color, &Light.current_color, sizeof(Light.entry_color));
|
||||||
|
}
|
||||||
if (strstr(buffer, ",") != nullptr) { // Decimal entry
|
if (strstr(buffer, ",") != nullptr) { // Decimal entry
|
||||||
int8_t i = 0;
|
int8_t i = 0;
|
||||||
for (str = strtok_r(buffer, ",", &p); str && i < 6; str = strtok_r(nullptr, ",", &p)) {
|
for (str = strtok_r(buffer, ",", &p); str && i < 6; str = strtok_r(nullptr, ",", &p)) {
|
||||||
|
|
Loading…
Reference in New Issue