Smartify a Dumb Bedwarmer: A DIY Success Story

I recently decided to upgrade my trusty Perfect Fit SoftHeat heated mattress pad by making it smarter. The goal was to add a timer function, and I’m thrilled to share how I achieved this using an ESP-01S and a relay board. **This project was a breeze and a fantastic way to enhance my sleep experience!The mattress pad has a controller with a rotary dial and an on/off toggle button, but it couldn’t be controlled via a smart plug because it always starts off when plugged in. To solve this, I used an ESP-01S paired with a relay board to mimic the button presses. The setup allows me to turn the pad on with a timer and control it through Home Assistant.Parts List:- Perfect Fit SoftHeat heated mattress pad- ESP-01S module- ESP-01S Relay Board- Optional: 3D printed case for a neat lookPower Management:**The relay board handles power regulation, stepping down to 5V for the relay and 3.3V for the ESP-01S. I used the existing power supply, ensuring it was within the board’s input range.**Wiring:**The wiring was straightforward. GPIO0 controls the relay, and GPIO3 monitors the heater’s state. This setup ensures the pad only turns on when needed and prevents it from staying on indefinitely.**Code and Automations:**I added failsafes to turn off the heater if disconnected and ensured the relay starts in the off position. The code also includes a sensor to detect heating status, preventing unnecessary toggles. Automations include turning the pad off after 30 minutes and activating it at bedtime based on temperature and presence.**Why This Matters:**This DIY project transformed a simple device into a smart, convenient solution. It’s perfect for anyone looking to enhance their sleep environment without breaking the bank. Plus, the ability to control it via Home Assistant integrates seamlessly with my existing smart home setup.If you’re considering a similar project, I highly recommend this approach. It’s affordable, easy to implement, and incredibly effective. Happy building! :bed::sparkles: