It seems that if you receive a color update from the entertainment service, these checks allow you to send only one command. In fact, there should be two commands - brightness update and color update. Or (not sure about this case) status update (ON/OFF) and color update.
Question: can we send two commands at once without hanging up the bulbs?
Unfortunately we cannot send full light status with one requests. I think this is a limitation of ZigBee protocol and Philips made some custom development outside the protocol in order to send RGB data directly. On ESP8266 based lights you don’t have this limitation.
Also, I don’t understand how Yeelight’s colors like 254;254;254 can be pinkish at one time and greenish-blue at another. It’s weird, it took a long time to figure it out…
By the way, for Yeelight in music mode it seems to be working fine. It should also reduce color update latency. If it’ll be stable, I’ll add it to pull request (of cource for Yeelight protocol only)…