Creating and Solving Hysteresis Problems on and at the Same Desk
canopic jug writes:
Over at his personal blog, Kevin Norman describes how he has modified his motorized standing desk to raise and lower on its own according to a schedule. His post DeskOps: Commanding My Desk with HTTP - How I Brought Hysteresis Problems to the Desk Where I Solve Hysteresis Problems goes into a fair amount of detail about how he went about wiring it up and the problems which arose and how he fixed them. The active part uses an ESP-32 based microcontroller to change the desk's height using the I^2C protocol.
For those not familiar with hardware, I2C is the scheme by which most circuits use for inter-chip communication. In my desk controller, there is a microcontroller which writes data to a LCD driver chip, which in turn lights the correct segments on a 3 digit segmented LCD. How would I capture the data though? Easy, I thought! All I had do to was hook up to the same two pins the data sheet reported as being the i2c pins along with the grounds of the standing desk controller and my esp32, and I could then "sniff" the data that was being sent across the i2c bus, decode it, and then use that for something useful.
So away I went! I soldered two wires directly to the pins on the chip that were marked as the data pins (I am deeply sorry to anybody offended by my soldering job!), and soldered a third wire to a ground point on the board. I then connected those wires to an ESP32, and then went looking for somebody elses code to try to sniff the i2c data to see if this was even possible.
He even designed and 3D-printed an enclosure for this modification. It played a surprising role in this.
Read more of this story at SoylentNews.