LIFX Request Response Data Stale/Old/Incorrect

I’ve been doing some debugging on my python API and noticed something odd about requesting responses from the bulb.

I’d expect that the response would essentially provide details into what state the light was currently in. This is extremely useful as I’ve seen response packets being broadcast over LAN when the bulbs are controlled via the cloud. So I thought I would give it a go trying to keep status information about the bulbs, both when acknowledgements are received that I requested and when cloud devices such as IFTTT change the light by reading the Light State broadcasts.

Unfortunately, these broadcasts contain the lights previous state, not the current one. As if the bulbs firmware is jumping ahead of itself and sending response information before the internal state has had time to change.

This looks like a bug to me, but any additional info would be appreciated.

Is this the http or lan interface?

Is it possible that your python API is caching the state anywhere which makes it seem like a stale response? Maybe try a different api library and compare the results.

LAN protocol, I’ve watched the traffic come in using two different libraries with the same result. So I am pretty confident that it isn’t caching anything. I’ll take a look again soon and post back here with my findings.

I wonder what Lifx bulb you are using. With my app (Python3, asyncio) and my Original bulbs I see nothing like that. My only issue is bulbs not/slow responding from time to time.

Note that I use a unicast connection to the bulb.