Raspberry Pi Doorbell is Fully Featured

When you think of a doorbell, you typically don’t think of anything very complicated. It’s a button that rings a bell inside your home. That’s about it. [Ahmad] decided he wanted to turn his doorbell up to eleven (Google Doc) with this build. Using a Raspberry Pi, he was able to cram in loads of features.

When the doorbell button is pressed, many different events can be triggered. In the demo video, [Ahmad] shows how his phone receives a text message, and email, and a tweet. The system can even be configured to place a voice call via Google Hangouts using a USB microphone. [Ahmad] demonstrates this and shows how the voice call is placed almost instantly when the button is pressed. This may be a bit overkill, but it does demonstrate many different options depending on your own needs.

For the hardware side of things, [Ahmad] purchased a wireless doorbell. He opened up the ringer unit and hooked up the speaker wires to a couple of pins on the Raspberry Pi through a resistor. The doorbell unit itself is powered off of the 3.3V supply from the Pi. The Pi also has a small LCD screen which shows helpful information such as if the Internet connection is working. The screen will also display the last time and date the doorbell was pressed, in case you weren’t home to answer the door.

On top of all of that, the system also includes a Raspberry Pi camera module. This allows [Ahmad] to take a photo of the person ringing the doorbell as a security measure. He can even view a live video feed from the front door by streaming directly to YouTube live. [Ahmad] has provided a link to his Pi image in the Google Doc so others can use it and modify it as they see fit. Continue reading “Raspberry Pi Doorbell is Fully Featured”

A Raspberry Pi Garage Door Opener

We can never seem to get enough garage door hacks around here. [Tanner’s] project is the most recent entry into this category. He’s managed to hook up a Raspberry Pi to his garage door opener. This greatly extends his range to… well anywhere with an Internet connection.

His hack is relatively simple. He started with the garage door opener remote. He removed the momentary switch that was normally used to active the door. He bridged the electrical connection to create a circuit that was always closed. This meant that as long as the remote had power, the switch would be activated. Now all [Tanner] had to do was remove the battery and hook up the power connectors to his Raspberry Pi. Since the remote works on 3.3V and draws little current, he is able to power the remote directly from the Pi. The Pi just has to turn its pin high momentarily to activate the remote.

The ability to toggle the state of your garage door from anywhere in the world also comes with paranoia. [Tanner] wanted to be able to tell if the door is up, down, or stopped somewhere in the middle while he was away from home. He also wanted to use as little equipment as possible. Since he already had an IP camera in the garage, he decided to use computer vision to do the detection.

He printed off two large, black shapes onto ordinary white computer paper. One was taped to the top of the door and one to the bottom. A custom script runs on the Pi that grabs the latest image from the camera and uses OpenCV to detect the shapes. If both shapes are visible, then the script can assume the door is closed. Otherwise, it’s likely open. This makes it easier for [Tanner] to know if the door is opened or closed without having to check the camera himself.

Can’t get enough garage door hacks? Try these on for size. Continue reading “A Raspberry Pi Garage Door Opener”

Teletext on a Raspi With Zero Additional Parts

Way back in the 70s, the UK and BBC rolled out teletext – an information retrieval service that’s much closer to the ‘television screens connected to computers the size of a room’ popularized by 1960s futurists than the Internet and world wide web. For about 30 years, teletext was one of the most reliable means of information distribution until it was quietly shelved with the rollout of digital television.

Playing with dead protocols is fun, though, and since the Raspberry Pi has an analog video out, [Alistair] thought it would be fun to turn his Pi into a teletext generator and display.

This isn’t [Alistair]’s first teletext rodeo; earlier he built an add-on board for the Raspi that uses an AVR and an LM1881 video sync separator to mux the video output of a Raspi with teletext signals. The new build does away with this completely, allowing any Raspberry Pi to generate and display information from a teletext service. Right now there are two demos, a Raspi status display that shows the CPU frequency, usage, memory, and temperature. There’s also a ‘clock cracker’ with a picture of Tux that should help diagnose reception issues.

All the code is available on the project’s github, although [Alistair] hasn’t released the scripts to output teletext pages captured from broadcast signals years ago.

Continue reading “Teletext on a Raspi With Zero Additional Parts”

WiFi Controlled Power Outlets with Raspberry Pi

[Tim] was looking for a way to control his power outlets using WiFi. He looked into purchasing a WeMo but he realized that he could build something even better with more bang for his buck. He started out by purchasing a five pack of Etekcity wireless remote control outlet switches. These are kind of like the WeMo, only they aren’t controlled via WiFi. Instead, they come with an RF controller. [Tim] just needed to find a way to bridge the gap between the RF remote and WiFi.

[Tim] decided to use a Raspberry Pi as the brains of the controller. He also purchased a SMAKN 433MHz RF receiver and transmitter for communicating with the wireless outlet switches. The wiring for the modules is pretty simple. There are only four wires. There are power and ground wires for each module. Then the transmitter needs two GPIO pins while the receiver only needs one.

[Tim] began with a fresh installation of Raspbian. He then installed Wiring Pi, which gives you the ability to interface with the GPIO pins in a way that is similar to Arduino. He also installed Apache and PHP to create a web interface for switching the outlets. The last step was to write some custom software. The software included a script that allowed [Tim] to sniff out the controls of his RF remote. The correct codes are entered into the “toggle.php” file, and everything is set. All [Tim] has to do now is browse to his Pi’s web server and click a button. All of the custom code is available via git.

A Tweeting Vending Machine

[Sigurd] manage to obtain an old vending machine from his dorm. The only problem was that the micocontroller on the main board was broken. He and his friend decided they could most likely get the machine back into working order, but they also knew they could probably give it a few upgrades.

This system uses two Arduino Pro Minis and an Electric Imp to cram in all of the new features. One Arduino is connected to the machine’s original main board. The Arduino interfaces with some of the shift registers, relays, and voltage regulators. This microcontroller also lights up the buttons on the machine as long as that particular beverage is not empty. It controls the seven segment LED display, as well as reading the coin validator.

The team had to reverse engineer the original coin validator in order to figure out how the machine detected and counted the coins. Once they figured out how to read the state of the coins, they also built a custom driver board to drive the solenoids.

A second Arduino is used to read NFC and RFID cards using a Mifare RC522 reader. The system uses its own credit system, so a user can be issued a card with a certain amount of pre-paid credit. It will then deduct credit appropriately once a beverage is vended. The two Arduinos communicate via Serial.

The team also wanted this machine to have the ability to communicate with the outside world. In this case, that meant sending cheeky tweets. They originally used a Raspberry Pi for this, but found that the SD card kept getting corrupted. They eventually switched to an Electric Imp, which worked well. The Arduino sends a status update to the Imp every minute. If the status changes, for example if a beverage was dispensed, then the Imp will send a tweet to let the world know. It will also send a tweet to the maintenance person if there is a jam or if a particular slot becomes empty. Continue reading “A Tweeting Vending Machine”

Use Ruby to Make Any Window A Blinken Window

[Akhil Stanislavose] wanted to spice up his window decorations for the holidays. Inspired by blinkenlights, he decided to make his front window interactive. The Blinken Window is a grid of 6 x 10 programmable LEDs running on a Raspberry Pi. Since a RasPi doesn’t have enough GPIO pins for 60 LEDs, [Akhil] built an expander board using 8 daisy chained standard CD4094 (74HC595 could also be used) shift registers to accommodate them.

[Akhil] designed a PCB to replace the expander board for future use. It is modular in nature so that many of them can be connected together to provide as many outputs as one needs, allowing any size window to become a Blinken Window. The PCBs are still being fabricated, but the Eagle files are available for download (zip file). Ruby was used to implement the API. You can find the project files on GitHub, which also features a simulator that you can run on your computer to see how an animation or game will end up looking on the window. In the demo video, [Akhil] demonstrates how you can use the Blinken Window to play a version of Pong using your smartphone as the controller. [Akhil] has also provided a few basic animation examples that can be expanded upon. We’d enjoy seeing an implementation of Tetris. There’s so many fun ways to turn regular windows into dynamic displays, we’re starting to look scornfully at our own lazy, air leaking windows.

See the Blinken Window in action after the break.

Continue reading “Use Ruby to Make Any Window A Blinken Window”

Automated Mushroom Cultivation

Lots of people have developed their own systems for automating the growth of plants. Keeping the environment under tight control leads to better yield, and computers are better than humans at remembering to water the plants regularly. [Kyle] is into growing mushrooms (the legal, edible type) and automating things. This led to his system for automated mushroom cultivation.

We’ve seen an automated system for growing fungi before, but [Kyle]’s project is a bit bigger. He’s built a sealed room for growing mushrooms. The room is sealed with a plastic sheet, using magnetic strips to create a doorway. Within the room, a heater, humidifier, and circulation fan control the environment. Temperature, humidity, and dew point in the chamber are constantly monitored and adjusted as necessary.

The entire system is controlled with a Raspberry Pi and custom software, which is available on Github. GNUPlot is used to generate graphs, which are accessible through a web server. The web interface also allows the parameters of the chamber to be tweaked remotely. Based on the settings, the Raspberry Pi controls a set of relays to keep the chamber in an ideal state.