Current Hardware Version: v0.1
Current Firmware Version: v0.3
About
The GfxHax drink shield is an Arduino shield that converts an arduino into an Open Source Breathalyzer. It come complete with a light bar to show the intoxiciation levels. There is a series of 11 lights down one side of the shield that go from green to yellow and ultimately to red. There are also player ready lights. Why are there player ready lights? Well, this is because the shield is not just a standard Breathalyzer but can be used as a party game. With the GfxHax drinkShield you also get a GPL game that lets you play with your friends and keep highscores! This software is licensed under the GPL so you can add features and will have unlimited free updates to new versions.
The drinkShield itself is licensed under the Creative Commons license and is free to modifications. The libraries and Source code are licensed under the GPL or public domain. It comes as a kit and is a really fun starter project to those just learning how to solder. This kit is specifically designed for Hackerspaces around the world. A hackerspace can host a class and afterwards celebrate by throwing a party! We offer bulk discounts on the web for classes wanting to buy kits.
A lot of breathalyzers on the market have problems where the sensor fails after a few uses. This is typically because of a hardware potentiometer to calibrate the sensor. The drink shield eliminates this by taking air samples. This can be controlled easily through the library. Example:
DrinkShield ds(0,1); // Drink Shield board version 0.1 defined in object ds ds.autocalibrate(20); // Take 20 air samples to determine a baseline
Once the device has been autocalibrated (Can be called over the serial connection as well) you can simply use ds.getReading() to return a result if one exceeds the determined threshold. This makes dealing with some of quirky readings with the MQ-3 sensor a snap. There are also very easy functions for handling the light bar and keeping track of the Highest measurement per blow. Having the additional player ready lights and sample game code will get you started in developing your own unique uses for this Open Source breathalyzer. Also see the Coding Details page.
Version 0.1 of the Drink Shield teaches the use of shift registers to control all the lights in the project.
DrinkShield by Craig Smith is licensed under a Creative Commons Attribution 3.0 Unported License.
Purchase
You can buy a drinkShield from our online store: here or catch at one of several hackers conferences we attend.
Assembly Instructions
See the detailed tutorial for a list of how to assemble the Drink Shield if you are having any problems.
You can also download a PDF version of the tutorial here.
Gallery
Photogallery of the shield. We would love to see more action shots of the shield in use! Send images or links to youtube videos to [email protected].
Example pic to submit:
I will eventually setup a flickr feed here to slide show the pictures…
Subscribe to our YouTube channel: GfxHax Channel
Software
Arduino Firmware
You can get the standard firmware to work with the DrinkShield and the supported games here.
Current Stable firmware and Arduino Library: Download from google code
Firmware can also be downloaded via subversion:
svn checkout http://drinkshield.googlecode.com/svn/trunk/ drinkshield-read-only
Then copy the contents of arduino/libraries into your sketchbook/libraries folder. Start the Arduino binary (or restart it if it’s already up). A standalone example is available via: File->Examples->DrinkShield->StandAlone
Check out the Coding Details page for a list of methods and the communications protocol.
Game Software
DrinkDuino
The DrinkDuino software is a gaming interface for the drinkShield, written by GfxHax. It has been written with portability in mind. The current versions are designed and tested first on Linux. Once stable they will be ported to other platforms. DrinkDuino uses the SDL library for graphics and SQLite3 for its database information. DrinkDuino will work with any devices that can talk the DrinkShield protocol.
Features:
- Multi-Platform
- Written in C++
- Supports Multiple Drink Shields
- SQLite3 database for easy integration into other apps
- Designed to work at parties
For more information on DrinkDuino check out the page here. DrinkDuino Main Page