Nothing annoys me more at work than finding all the conference rooms booked in the online scheduler but then walking around the building and finding a large percentage are actually unoccupied. If I were President, I would institute a policy where by people would lose vacation days if they didn’t cancel their conference room reservation when they canceled their meeting or ended up doing a conference call from their office.
Me becoming President of the company – very unlikely; so on to plan B – creating a conference room monitor so that I know when a room is unoccupied regardless of what the online scheduler shows. (This project isn’t limited to the office; I initially set it up at home as my daughter isn’t allowed in my home office when I am not there.)
The projects uses a simple PIR motion sensor connected to a Raspberry Pi running Windows 10 IoT Core. The Universal Windows App (UWA) on the Pi reports the status of the conference room to an Azure IoT Hub – “occupied” or “not occupied”. IoT Hub allows me to easily collect data from several devices; once the data is in Azure, the possibilities are endless – including just simply showing whether a room is empty.
This is a fairly easy project to get started with IoT. The hardware and the app are both quite simple. Creating an IoT Hub in Azure was even easier (this is the first time I have used Azure). I am using a Free Trial subscription so nothing to worry about there. Additionally, I have created a series of step-by-step build videos for the project.
If you haven’t already upgraded your development machine to Windows 10 and installed Visual Studio 2015, do that first (here are some instructions); this could take up to an hour – most of which is unattended while the bits download and get installed – so plan accordingly. Then, put the Windows 10 IoT Core image on your SD card using the Windows 10 IoT Core Dashboard. Insert the SD card into the Pi and power it.
The easiest way to verify that Windows 10 IoT Core loads properly is to plug in an HDMI capable monitor as the Pi’s status will be displayed throughout the boot up process. Alternatively, use the Windows 10 IoT core Dashboard to verify that the Pi is ready to go; the Dashboard will discover the Pi once it has booted and connected to the network (you can plug a network cable between the Pi and your network’s router or directly into your development machine’s Ethernet port if you turn on Internet connection sharing).
You’ll also need an Azure account. I only have a Free Trial subscription and was still able to use all the services described in this project. If you don’t already have an Azure account, sign up for the free trial.
What You’ll Need
- Raspberry Pi 2 and standard accessories: 5v 2A power supply, 8GB class 10 micro SD card, case, and network cable
- PIR motion sensor
- LED and 200 ohm resistor
- Male/female jumper wires
- Mini breadboard
Step 1: Assemble the Hardware
Time: 15 mins
Parts: PIR motion sensor, mini breadboard, LED, resistor, jumper wires
The hardware component of this project is fairly straightforward. You’ll use the Raspberry Pi’s GPIO pins to read the input from the PIR motion sensor and to turn on the LED when motion is detected.
For more detail: Conference Room Truth Serum