During the SOTOH pre-show I shared in an interview that my latest Home Assistant installation is an office for 250+ people. Some people wanted to know more about this project, so I’m sharing some details here.
The office is suppose to be a happy place for nerds, these nerds were already losing their The Hague home. And therefore I got involved to make it the new happy place for nerds, using Home Assistant, ESPHome, ZigBee2MQTT, Shelly and Hue in the process. It is located in the historic Groot Handelsgebouw, a building build after the second world war to bring back commerce in Rotterdam 🇳🇱. For the people who know the history of the building, we have moved into the former conference and meeting rooms of “Brasserie Engels”.
The key points for this office were: Automagically, occupancy detection and "gezellig" and with HA we nailed that.
So when you are at Rotterdam Centraal, you can point to our office and say “Home Assistant runs that office!”. Because Home Assistant integrates with the lighting, motion detection, alarm, access control and the event space AV.
Lighting
The lights in the office are for the most part 1-10V dimming fixtures, the common areas have some triac dimming spotlights and there are some on/off grow lights to keep the plants 🪴 happy. In addition there are Hue bulb, Hue led strips and Hue pendant lights.
Workspaces, toilets, meeting rooms and call booths are outfitted with Shelly 0/1-10V dimmers. Connected to the S1 and S2 inputs are 230V motion sensors. Veko MD-O motion sensors to be precise. The S1 and S2 inputs are both set to “Switch” and “Detached” mode. Instead the light is controlled by a script that runs on the Shelly itself using the script engine.
Using the script engine on the Shelly, when S1/S2 input is detected the light turns on, when S1 and S2 input is off a timer starts counting down (defaults to 15 minutes) and the light turns off. With custom components in the Shelly, the off delay and transition time are exposed to home assistant, allowing for easy tweaking of these settings. All this creates a redundant system that should keep working in case home assistant or the network goes down. But allows for overrides and controls using Home Assistant.
Occupancy
I lied in the previous part. The call booths do have a motion sensor hardwired into them, but they are not the Veko MD-O motion sensors. No, instead the call booths are fitted with Whenzi 24G mmWave sensors. These mmWave sensors report their status back to Home Assistant via Zigbee2MQTT. This indicates the occupancy state of a call booth.
On top of this because access control is also in Home Assistant we have an estimate of the amount of people in the office, handy when preparing lunch.
User Control
Only IT and a select few nerds have access to the Home Assistant instance. The other employees? They have an interactive map they can access from any laptop or phone on the network, or they use the meeting room touch screens. This map is a custom project by me which uses Home Assistant (and Biamp Workplace) as data source and pushes updates to a front-end over web sockets. On the occupancy part you can see the occupancy of the call booths thanks to the mmWave sensors. With meeting room occupancy coming from the Biamp screens outside the room.
In the lighting part everyone can change the brightness and color of lights. For the workspace and meetings rooms they can even turn off the motion sensing script on the shelly, for example for when we have DND sessions or sleepovers in the office. Presets in the map are actually Home Assistant buttons, scripts and scenes with specific labels.
And all of it is also 🌈 automagically controlled by enabling or disabling the alarm, ensuring the lights are only on when people are in the office.
Lastly IT has one privilege: We can shit in peace since we can control the brightness of the toilet lights 🚽.
I'm happy to share more details on this project!