SpaceState
Goals
On our website and hackerspaces.nl we wanted to easily communicate with the outside world whether or not our hackerspace was open or not. There are a lot of (complicated) ways to do this, for example, detect movement with a webcam, regularly scan Bluetooth / WiFi for active devices etc. etc. However, I personally subscribe to the philosophy of K.I.S.S. (Keep It Stupidly Simple), so I've decided to do something with a simple on/off switch mounted on the wall where people can just easily say "space is open" or "space is closed" like this:
<TODO Picture of the box mounted on the wall>
That switch can easily be hooked into HomeAssistant using ESPHome on an ESP8266 development board which then controls the SpaceAPI integration. Normally that should be it, however we have one issue.. Our internet is behind a double NAT, which makes it a royal PITA. However, there are solutions for that.
Hardware used
1x ESP8266 Development board
1x Dead simple on/off switch
1x 3D printed box
Software used
- HomeAssistant with the SpaceAPI integration
- ESPHome
Implementation
<Insert little spiel about our double nat situation etc etc>
HomeAssistant configuration
<TODO>
ESPHome configuration YAML
<TODO>
Double NAT workaround
Changelog:
- 05-09-2025: Initial version