The Linux-Powered Keg Fridge

Cross a Linux computer with a keg fridge, and you get a tap that knows when you’ve had enough

by Courtesy Mike Wakerly

Courtesy Mike Wakerly

Dept.: You Built What?!
Tech.: Robotic Kegerator
Cost: Roughly $600
Time: 8 hours
Practical | | | | | Popcorn

Since the first brew fan installed a tap on the spare fridge and stuffed a keg inside, one question has been paramount: "Who's been drinking all the beer?"

Mike Wakerly's keg fridge will tell you. It'll also estimate the drinker's blood alcohol level and post it
to a Web page; log his consumption for the night, week or month (and cut him off if you like); and keep track of his tab. The Kegbot can even send you a text message when the beer supply runs low.

Wakerly, a software engineer, got the idea during a spell of unemployment just before grad school.
He built a microcontroller that directs a valve and a flow meter, and spliced both into the tap line of an everyday keg fridge. Then he wrote custom software for an attached Linux computer that can look up drinkers in a database and post their pour total to the Web. (See Wakerly's drinks at kegbot.org.)

Wakerly solved a few unexpected problems along the way-for one, the not-so-great taste you get when you splice gizmos into the beer line with brass fittings from the nearest hardware store. For another, extra parts in the line, such as the spinning paddle of the flow meter, can make the tap sputter and the beer foam too much. Still unsolved: the microcontroller board Wakerly will send you to build your own Kegbot has an exposed 120-volt section right next to the low-voltage digital lines. So you might want to calculate your own blood alcohol level before installing it. Turn the page to see how the Kegbot works.

How the Kegbot Works

1.A standard "kegerator" uses a CO2 canister to pressurize the beer in the keg and force it through a tube to the tap, usually connected via a hole drilled in the fridge's top or front.

2.Each approved drinker gets a digital ID button with a unique 64-bit code. To pour a drink, plug your button into a reader, where it makes electrical contact.

3.The microcontroller reads the button's code and sends it to the Linux computer, which matches it to your entry in the database and checks any restrictions on your drinking.

4.If you're clear for beer, the computer tells the microcontroller to open the solenoid valve and count flow-meter ticks (2,200 per liter).

5.Open the tap and pour a frosty one. When you're done, unplug your button from the reader. The microcontroller closes the valve and tells the computer how much beer you took.

6.The computer updates the database with your total volume drunk, your estimated blood alcohol and, if a limit has been set, how many drinks you have left. It also updates the totals for the keg, the status message for the LCD on top of the Kegbot, and the Web page.