Project Announcement: Buzz

While I'm at home for a month, I figured I was going to be pretty bored unless I find something to do.   So I decided to start a new project that I hope to get done before I get back from break.  So I would like to announce:

Buzz; a networked coffee machine

I am going to take a coffee machine, modify it, and then link it up with the Internet so I can order coffee remotely.  Whether or not I actually end up using this in the future is a question left to time, but for now I think it will be pretty something fun to do.  Below is my work area.

Currently there are three main components of this project that I'm looking at:

  1. Augmenting the coffee machineAdding a servo motor to control the flow of coffee
    • Adding water level sensors
    • Hacking in extra controls to the existing electronics
    • Some method to detect there is a cup underneath the coffee nozzle
  2. Developing “barista software,” to manage all of the above, as well as process orders
  3. Drafting the “Buzz Protocol,” an XML interface for ordering coffee

For modifying the machine, the most difficult parts will be figuring out how to control the built in circuitry and figuring out if there is an empty cup below the dispenser.  I'm thinking that I might be able to do that with via acoustic distance sensing.  I bought one of those ultrasonic ping sensors/transmitters over the summer, but never did anything with it.  I've also never worked with servos before, so that might be another spot of difficulty.

The barista software shouldn't bee too much of a challenge.  I plan on making a Django application that will be the web interface for the system.  I was originally going to write this software targeting an Arduino with an Ethernet shield, but using a BeagleBoard is much cheaper and gives me some extra power/functionality that an Atmel chip wouldn't.

The last thing might be a bit more of a postmortem component, and I'm not entirely sure if the barista software will implement the protocol.  In case though I ever want to network another machine, having a common interface for controlling machines would be useful, and I could move the barista software over to the client.  The original idea of this project was to draft the protocol, create a client program to send XML payloads, and have the barista software interpret those messages.  Though thinking it over a bit I'm not sure if that is best for the small project that this is.  I still want to have the protocol ready on the side if I ever get any other machines up and running.

 

 

Cheers!I hope this project goes well, and I'll be sure to document it as I go along.  I am going to post everything related in the github repo.

© 16BPP.net – Made using & love.
Back to Top of Page
This site uses cookies.