How to build a battery-powered DIY chair occupancy sensor

Disclosure: This post contains affiliate links. If you click through and make a purchase, I will earn a commission, at no additional cost to you. Read my full disclosure here.

An illustration of a woman sitting on a chair at a desk.

Introducing an innovative, yet straightforward DIY project for Home Assistant enthusiasts: a chair occupancy sensor. This addition to your smart home toolkit can significantly enhance room presence detection, a feature that has been increasingly popular among Home Assistant users.


The Concept of Chair Occupancy Sensing

Traditional methods of detecting presence in a room have their limitations. For instance, passive infrared sensors require significant movement, and Bluetooth-based systems, like room-assistant, hinge on the constant presence of a personal device. The latter poses an issue if the device is left in another room, leading to inaccurate presence detection. The chair occupancy sensor we are about to discuss offers a simpler and more cost-effective solution.

Crafting Your Own Chair Occupancy Sensor

The cornerstone of this project is a familiar object repurposed innovatively: a car seat pressure sensor. Common in vehicles, this sensor activates a circuit upon sensing weight, making it ideal for our purpose. When sourcing a car seat pressure sensor, opt for a universal model rather than one tailored to a specific vehicle make.

A car seat pressure sensor.

Option 1: Using ESP8266 or ESP32 Board

While an ESP8266 or ESP32 board could be employed for this project, using a GPIO binary sensor in ESPHome, it's important to consider the power demands of Wi-Fi devices. Achieving optimal battery life might necessitate a substantial battery, like an 18650 in combination with a deep sleep wake-up pin.

Option 2: Repurposing a Zigbee Sensor

A more power-efficient alternative is repurposing an Aqara Zigbee door/window sensor, as demonstrated by Home Assistant community member 'parrel'. This sensor operates with a reed switch and a magnet, detecting when a circuit is closed. By connecting the car seat pressure sensor to the reed switch, we can transform the Aqara sensor into an effective chair occupancy detector.

Connecting the sensor requires minimal technical work: solder the car seat pressure sensor's cables to the reed switch ends. It's not necessary to remove the reed switch, barring concerns about magnetic interference.

Once set up, this sensor integrates seamlessly with Zigbee2MQTT or ZHA as a binary sensor. For those who prefer a more descriptive sensor type, it's possible to modify the device class to “occupancy” in Home Assistant.

A photograph of the PCB inside an Aqara door/window sensor. Two wires are soldered to either end of the reed switch.

Assembling the Sensor in Your Chair

The final step involves placing the car seat pressure sensor in the chair. Most chairs have removable upholstery with a zipper, allowing easy insertion of the sensor between the fabric and padding. In chairs without such access, alternative methods may be required.


This DIY chair occupancy sensor not only enhances your Home Assistant's room presence detection capabilities but also introduces a fun, practical project for smart home enthusiasts. With its straightforward assembly and integration, it's an excellent addition to any smart home setup.

Remember, this guide is for intermediate users, aiming to make complex information accessible without losing technical depth. For further assistance or to share your experience, feel free to engage with the Home Assistant community.

A portrait photo oif Liam Alexander Colman, the author, creator, and owner of Home Assistant Guide wearing a suit.

About Liam Alexander Colman

is an experienced Home Assistant user who has been utilizing the platform for a variety of projects over an extended period. His journey began with a Raspberry Pi, which quickly grew to three Raspberry Pis and eventually a full-fledged server. Liam's current operating system of choice is Unraid, with Home Assistant comfortably running in a Docker container.
With a deep understanding of the intricacies of Home Assistant, Liam has an impressive setup, consisting of various Zigbee devices, and seamless integrations with existing products such as his Android TV box. For those interested in learning more about Liam's experience with Home Assistant, he shares his insights on how he first started using the platform and his subsequent journey.

Leave a comment

Share to...