This project is currently unmaintained, as ESPHome keeps introducing new breaking changes with every monthly update that require continuous rework, testing and debugging. This has been an issue from the very first ESPHome update that came out after I released the original files. I'm sorry that I currently can't dedicate the amount of time that staying on top of the running changes would require; so for now, be aware that the yaml config snippets provided on this page most likely will not compile with the current version of ESPHome.
I may pick this project up again when I find a way to work around ESPHome's “break things and blame it on the user for not reading the changelog” attitude, but for now, see this project more as inspiration for what can be done instead of something you should replicate 1:1.
The original Sensorbox received quite of interest from people wanting to build one for themselves, but it was never designed for that - this one is! Using cheaper components, a more modern microcontroller and a streamlined design for the printable parts, I felt this Sensorbox v2 is something I can actually put out there and recommend you to build as well.
This is a project that hinges on Home Assistant and runs their ESPHome framework, making it easy to visualize the collected data and automate actions based on what you're seeing, e.g. turning on ventilation or air filters. However, it also means that you should have a Home Assistant running on a Pi or in a VM to properly use the Sensorbox - but trying Home Assistant is something I'd recommend to anyone whether or not you're also building a Sensorbox! Nonetheless, there is also a ready-to-flash firmware available that configures the Sensorbox for standalone use without Home Assistant (more info below).
This v2 version also uses a couple of newer sensors that are more easily available. You can mix and match sensors based on your needs, and with the ones that are supported, you should be able to cover most scenarios. It's also now based on a core PCB, which only costs around $5 to get 5 pieces made and shipped. This enabled me to build it around the $2 ESP32-S2 Mini instead of the buggy $6 ESP32-WROVER, adds flexibility for using different sensor loadouts and screens and probably saves you another $2 in jumper cables. So, essentially, the PCB is free ;-)
I like cheap things, so all of the components are readily and cheaply available from sources like Aliexpress. But because sellers frequently change their prices, the affiliate links below only point to searches. Pick the cheapest one that look like the ones I used and comes with free “Choice” shipping. Some of the parts are also available cheaper in their separate “bundle deals” section.
There are five recommended core sensors that cover most of the bases, plus a selection of supported sensors as alternatives - these are all enabled in the sample config files and simply need to be plugged in to start providing data. But because ESPHome supports a massive amount of other technically compatible sensors that could all be useful, the main PCB has all of the spare microcontroller pins broken out, and you can connect whatever you want as long as you add the matching config options.
Here's how I'd kit out the Sensorbox for monitoring different scenarios:
AHT20 + BMP280, PMS5003, SGP30
AHT20 + BMP280, SGP30, ZE08-CH2O
AHT20 + BMP280, SCD40, SGP30, PMS5003 (optional), MQ-7 if you have a room-air-dependent furnace or fireplace
These should give you a good sense of what levels of air contamination you're dealing with - in this case, less contamination is always better.
Parts can be printed in any material, any color, no support material required.
For the latest Sensorboard PCB r1.1, print:
For the previous Sensorboard PCB r1, print:
Use the .zip file to order. I've added the r1.1 version to address some of the issues that became apparent when the r1 version was assembled out in the wild. The versions are pin-compatible, so they run the same firmware. They will fit inside the same printed shell, but the r1.1 version uses a different printed Serial Carrier.
The PCB also allows for plugging in a crisp 1.3" IPS screen, a 2.13" e-ink panel or running with no screen at all. The alternative screens require config changes, but omitting the screen should work with no changes. If there's interest, I can redesign the case to support these alternative options!
That's what the video is for, so… watch that please? The mechanical side of things is pretty straightforward, but configuring the ESP is a process that requires some hoop-jumping if you've never done it before, so I've tried to cover all the details there.
Official guide for setting up Home Assistant OS and ESPHome (as an add-on inside Home Assistant)
If you've got any problems or suggestions, please leave a comment here or under the video!
If you're using the Sensorbox with Home Assistant, the STANDARD config file can be used within the ESPHome compiler.
The STANDALONE version has WiFi disabled by default and will not connect to Home Assistant. For that to work, it has ESPHome's failsafe mechanism disabled that would reboot the ESP after a while if it wasn't connected to a Home Assistant setup.
It can still be reflashed with a new version (STANDALONE or STANDARD) at any time by plugging the sensorbox into a computer and using the ESPHome web flasher again. Alternatively, a new firmware can also be flashed wirelessly through the AP mode, which can be enabled or disabled by holding the top button for three seconds.
2024-11-20
2024-11-30
2024-12-01
2024-12-10
2024-12-11
Possible future improvements:
The author marked this model as their own original creation.