arrow-left2arrow-right2Vector Smart Object7Vector Smart Object2Vector Smart Object111Vector Smart Object1snapchat

OktoberTekfest KegBot: IoT Integration on Tap! (Part 2)

[fa icon="calendar"] September 27, 2017 - Written by: Marty Jefferson

Welcome to KegBot, Part 2!  If you read my last blog, you know that we’ve set out to build the most awesome IoT device ever; an automated beer dispenser we call the KegBot!  If you didn’t get a chance to read it, you can get up to speed on the first several hurdles we tackeled here.

You may recall the recent full
solar eclipse. I live near Charleston, SC and the eclipse was supposed to be one for the record books. We were in “the path of totality” as they say. Since SC is hot, very hot, in August, we thought there coudn't be a better time to put the KegBot through its paces. Well, we should’ve taken a queue from mother nature and postponed that decision.

The day started out overcast and threating rain. My friend is a government employee so we took a page out of the US Postal Service notebook, “Neither snow nor rain nor heat nor gloom of night stays these couriers from the swift completion of their appointed rounds.” We set up the KegBot beside the pool and pressed forward with our first “wet” run test. (Hopefully with beer, not rain.)


First Things First
With a name like KegBot you can guess the most important part, right? It’s the keg, of course. If you’re like us, with years of training in either college or the military, you’d expect the keg to be the easiest part of this exercise. So, before the big day, we called up our favorite spot for adult libations and ask if they had kegs of beer. With an affirmative response, we felt good about our progress and envisioned the coolest solar eclipse party on the east coast. Next, we had to find a place to fill the CO2 tank to pressurize the keg. That turned out to be a bit more of a challenge. After a few phone calls, we found a place to fill the tank but they said we would have to swap it for a full one if we wanted CO2 the same day. Goodbye new shiny red tank. Hello generic, industrial grey metal tank.

KegBot Co2 Tanks.png 

Ok, if that was to be the worst thing we’d  have to encounter, we’d survive. Wishful thinking in retrospect. But now, back to our main character, the keg.


Murphy’s Law
I headed home since the CO2 place was conveniently located back in Charleston. On the way back, traffic starts to slow down. It’s almost rush hour and in the median two police cars go screaming by. Great, a pre-rush hour accident. (Wishful thinking, again, in reality.) Now parked on the Interstate, 15 more police cars go by. Not an accident. Apparently the police decided to serve a warrant on a gentleman who took offense by shooting at them. Two hours into my 15-minute drive, I finally arrived and collected the unattractive CO2 tank. What else can go wrong, right?

Upon arriving at the keg store, I’m informed that they only supply kegs on a pre-order basis. They don’t stock them in store. I’m sure any college kid worth his salt could have told me this but hey, I’m a little out of practice. I should probably have taken the hint and just went home but with every roadblock, my resolve to have a frosty beverage deepened. I inquired of the store employee where I might be able to get a keg today. To my great despair he said, “Oh, you can get those at the Wine and Liquor Store in Charleston”. I said, “You mean the one just down the street from the CO2 tank filling place?”  “Yes,” he said. Sigh.

After another 3 hours of excrutiating rush hour traffic, I arrived home with the keg and CO2. I put the keg in fridge only to discover I measured from the back of the fridge to the door opening not accounting for the fixed shelves on the door. A half an inch off doesn’t sound like much until you’re drinking warm beer. Then it hit me, just put the keg in a trash can with ice like we did in our less civilized days. I grabed a trash can I use for yard debris, cleaned it out and headed to convenience store for ice. A short time later, I packed my little baby (we’d become family at this point) with ice and water to maximize the chill.

But our trials and tribulations didn’t end there.


The Wet (& Foamy) Run

Recall that on the day of the eclipse, it was overcast and threating rain. We were hopeful the clouds would part as we had our viewing glasses ready. We hauled the keg across the street and connected the electronics to the spout. I tested the electronics before connecting the spout to the tap and all appeared to be working well. My friend connected the regulator to the tap and the CO2 tank. He is an ex-diver, so I thought it was a good idea to assign him to this task. We then proceeded to connect the tap to the spout only to realize we had to take the motor housing off. No big deal. The keg is tapped, the tap is connected to the CO2 tank and the spout, the motor is reconnected to the handle, and we were ready for our first “wet” run.

We placed a cup under the spout and sent the command from Cisco Spark. With great anticipation, we both stood there, watching the beer spout and dreaming of being pararaded through the streets in celebration of bringing beer automation to the world. We watched. And watched. And watched.

What went wrong? Perhaps the command didn’t go through? I sent another and we watched and waited some more. I feavorsishly replayed all the steps in my mind, over and over again. Programming is working? Check. The command made it to the IoT device? Check. Still, no movement from the handle. Finally, in desperation we simply pulled the handle but it was difficult to pull. After some investigation, we found the motor housing was misaligned with the tap hose, causing the wire connecting the motor and the handle to bind. An easy fix.

After realigning the motor housing, the handle began moving freely again. So we opened the tap on the keg and sent the command to Spark once more. Eureka! Our KegBot poured a beer! Sure, it was mostly foam but to us, it was as perfect as a newborn baby. A few moments later, however, our euphoria faded like the foam in our mug and our inner engineer kicked in. Realizing it must be a timing issue,we adjusted the timing, sent Spark the command and poured more foam.


After 10 minutes of tuning, we noticed the handle was quivering every time the KegBot tried to pour a beer. We checked the housing, all good. However, we noticed that the motor was now quivering when it should be idle. We disconnected the handle, sent a command from Spark and noticed the motor was now quivering, clicking and stalling with the handle disconnected. Conclusion? We burnt the motor out. With a smile on his face, my friend blurts out a paraphrase of police chief Martin Brody, “We’re going to need a bigger motor.”

KegBot Part 2 Eclipse Party.png

For months we had anticipated the eclipse and KegBot test. It simply was not to be. Cloudy skies and a dead motor. We were left with nothing to do but put on our eclipse glasses and watch it on TV while we ordered bigger motors.


Tune in next week for the exciting conclusion of OktoberTekfest KegBot: IoT Integration on Tap!  And better yet, come to IE’s 5th annual OktoberTekfest at the Charlotte Convention Center on October the 5th to see the KegBot in person! Find all the details and register here!



About the Author:

Marty Jefferson has worked in IT for over 30 years, with extensive experience in project engineering, management, collaboration technologies, voice solutions and computer networking. He began his career in the military, and after being honorably discharged as an FTG2 Second Class Petty Officer, moved into the private sector where he now works as a Director of Collaboration and Voice Solutions for Internetwork Engineering.

Topics: Intelligent Networks

Internetwork Engineering (IE) is a private technology consulting company that improves business outcomes with the expert selection, implementation and operation of information technology. Since 1996, our expert combination of people, partners and process have allowed us to become a strategic service provider for clients throughout the Southeast. With our Ideas to Execution (I2E) methodology, we deliver customized technology solutions that align with business goals to create a distinct competitive advantage.

To learn more about IE, visit