3 ms·
great work! > reading brightness, contrast or volume from the monitor fails about 30% of the time I2C over long lengths of wire isn't the sturdiest physical l
by jareklupinski 5y ago
great work!
> reading brightness, contrast or volume from the monitor fails about 30% of the time
I2C over long lengths of wire isn't the sturdiest physical layer... I would expect the low level I2C handlers to retry a few times on no ACK received, but a retry_count of 5 might resolve most of the issues around a bit flipping on its way through the wire :)
- alin23 5y agoYes, retrying always fixes the problem. And for the purpose of getting the latest monitor values from time to time to keep the UI in sync, this suffices. I'm more surprised that I2C works at all over the long, thin Thunderbolt cable of my LG. Huge bandwidth going through it for video and the USB hub, lots of current passing through for charging the MacBook at the same time, I'm amazed it works so well.
- mypalmike 5y agoIs it actually I2C over the Thunderbolt cable? I had assumed it was I2C just between the CPU and video hardware on the motherboard.
- alin23 5y agoIt is really I2C over whatever cable you have between your monitor and your computer. I don’t know how they multiplex it through the Thunderbolt little wires but it does work.