In this Instructable, weâre going to build a very modern take on an iconic piece of studio equipment: a smart on-air warning light that responds to the Robin room reservation system.
This project started life as a practical solution to our occasional need for quiet in a busy office of creatives while recording Uncorked Studioâs podcast, With Intent. To read the whole back-story, and find out more about Uncorked Studios, take a look at our blog post.
Bits and Pieces
- Sandies 343-110 3-sided studio warning light
- Raspberry Pi 2B
- USB A to micro B cable and USB power supply
- 8GB+ SD card
- USB keyboard
- HDMI cable and monitor
- USB Mini WiFi Adapter based on Realtek 8188CU
- 12V power supply that can deliver at least 1.25A. We recycled an old laptop power brick that can deliver 12V/5A.
- Pimoroni ExplorerHat Pro expander board
- 12V G4 26 LED lamp assembly
- Murata 78SRH-5/2-C DC-DC converter
- 2x 2N2222A/PN2222A NPN Transistors, TO-92 package
- 2x 10K resistors (leaded)
- Assorted breadboard wire
- 4x Delrin screws, nuts and standoffs
Initial assembly
- Plug the ExplorerHat expander board into the RaspberryPi
- Plug a USB keyboard into any of the USB ports
- Plug the HDMI cable into the RPi and connect a monitor
- Insert the USB WiFi dongle into any available USB port
At this point, donât power the board up. For the first couple steps in this Instructable, weâll power the RaspberryPi from the USB power supply and cable, connected to J1 (marked âPWR INâ). After the board is booting and configured, weâll mod it to run off the 12V power brick.
Step 1: Raspbian Installation and Configuration
Raspbian is a Debian Wheezy variant built for the RaspberryPi. For this project, we installed the stock Raspbian build, configured it for command-line only access, and added a few packages to support the additional hardware we installed.
To get the RPi booting a fresh copy of Raspbian, follow the instructions for NOOBS Setup, stopping at âFIRST BOOTâ step 5 (raspi-config). Since this application requires the RPi to understand our current time and time zone, weâll make a few modifications to the standard config before exiting the utility.
Get some more room
From the main menu, select â1 Expand Filesystemâ and follow the prompts to make some more space on the SD card.
Locali(s/z)e Raspbian
By default, Raspbian is configured for the UK, including time zone and keyboard layout. If you happen to live elsewhere, a little reconfiguration is required. Clayton Smith wrote a very concise guide to Making the Raspberry Pi a little less British. (His instructions assume youâre starting from the command prompt; to get there, exit out of raspi-config and log in to a shell.)
- From the raspi-config main menu, select â4 Internationalisation Optionsâ
- Select âI1 Change Localeâ
- Deselect en_GB.UTF-8 and select the locale appropriate to your location. We chose en_US.UTF-8.
- Select OK to return to the main menu
- Once again select â4 Internationalisation Optionsâ and then âI2 Change Timezoneâ. Walk through the screens to select your time zone, and save to return to the main menu.
- Once again, select â4 Internationalisation Optionsâ and then âI3 Change Keyboard Layoutâ. Select the correct keyboard layout for your system. Save, and return to the main menu.
- Itâs probably a good idea to change the default password on your RPi at this point. Select â2 Change User Passwordâ and follow the prompts.
- Save, and then exit raspi-config by selecting âFinishâ.
Log in to the RaspberryPi using the password you set in step 7 above. (Default user is âpiâ, password is âraspberryâ.)
Update Raspbian and install a few essentials
Itâs a good idea to update Raspbian to the latest build, and then install a few essential tools weâll need later. Given all that may have been installed, a reboot is a good idea.
sudo apt-get update -y && sudo apt-get upgrade -y sudo apt-get install -y git build-essential vim tmux curl sudo reboot
Step 2: Set up WiFi
Install the USB WiFi adapter
By default, Raspbian comes with the drivers required to support the USB mini WiFi adapter. The driver should have loaded automatically on boot. To confirm, run the lsusb utility.
pi@localhost ~$ lsusb | grep WLAN Bus 001 Device 004: ID 0bda:8176 Realtek Semiconductor Corp. RTL8188CUS 802.11n WLAN Adapter
Configure the WiFi interface for your network
Now, we just need to configure the WiFi interface to access your WiFi network. (Oliver Marriott provides a very complete set of instructions for setting up WiFi on the RPi. The abbreviated version appears below.)
Edit /etc/network/interfaces with your favorite editor, and add the following block at the end, changing the parameters for wpa-ssid and wpa-psk to match your network configuration.
iface wlan0 inet dhcp wpa-ssid âYourSSIDHereâ wpa-psk âYourPasswordHereâ iface default inet dhcp
Now, bring up the wlan0 adapter to get the changes and request a new DHCP address
pi@localhost ~$ sudo ifup wlan0 pi@raspberrypi ~ $ ip addr ... 3: wlan0: mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff inet 192.168.1.100/24 brd 192.168.255.255 scope global wlan0
Set up the host name (optional)
Depending on your network configuration, this may be an optional step. This will enable your RPi to broadcast its hostname so that you may ssh into it by name rather than IP address. To do this, weâll install avahi-daemon, and configure it to broadcast as onairlight.local.
sudo apt-get install avahi && sudo apt-get install avahi-daemon
Open /etc/avahi/avahi-daemon.conf, and modify the [server] section to broadcast the correct host name and domain. Modify as required to match your network configuration and requirements.
[server] host-name=onairlight domain-name=local
Then restart the avahi-daemon service
sudo service avahi-daemon restart
Step 3: Install NTPD
Since weâre going to be consuming a calendar service to control when the light is on, weâll need to make sure the RPi always has the correct time. Simply install ntpd and youâre good to go.
sudo apt-get install ntpd
Step 4: Install the ExplorerHAT python libraries
Pimoroniâs instructions on Github are complete and very good.
TL;DR:
curl get.pimoroni.com/i2c | bash sudo apt-get install python-smbus sudo apt-get install python-pip sudo pip install explorerhat
You can then confirm the card is working.
pi@onairlight ~ $ sudo python Python 2.7.3 (default, Mar 18 2014, 05:13:23) [GCC 4.6.3] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import explorerhat Explorer HAT Pro detected... >>> explorerhat.light blue, green, red, yellow
For more detail: Connected Studio Warning Light