Hi! I'm Nathan Hoad


Multimedia Studio 4

Spirit Guide Multimedia Studio 4 was a subject I took in the second semester of 2006. The theme for the course was 'Aware Homes' and the major project had students designing something 'aware' for the 'home' user.

I formed a team of three with Tyson Dudley and Sarah Whelband and we began brainstorming for ideas for an aware device. We came up with several ideas but our favourite involved an automated shopping system that suggested recipes based on the food a user had in stock. A few other groups seemed to have similar project proposals (an automatic grocery tracking system seemed to be most groups first idea of an 'aware home' device. We decided to change our idea slightly and instead of tracking food we decided to build a system that would track alcohol; a smart home bar. Our bar would work out what kinds of alcohol a user would have and then suggest drinks that could be made from what was available. We gave our smart bar system the name 'Spirit Guide' because it guided the user in mixing various spirits and because the name sounded catchy . We wrote up a project proposal and were given the green light to start building. The bar itself would consist of a dispenser housing where the user would store their bottles of alcohol along with shot dispensers for each, a main bar area for mixing drinks, and a computer screen and control panel for navigating a GUI of drink recipes.

We needed another group member and were lucky enough to get Rob Ninnes to join our project. Rob and I had the most programming experience in the group so we assumed the roles of GUI programmer and back-end programmer. Rob had more experience in Flash so he chose to write the interface. I had more experience in Java and databases so I opted to write the back-end. I started by writing a simple server and a test client and testing read-outs from the database. I gave the server a few simple commands that could be sent to it from a client to manage the drinks database. The server needed to be multi-threaded to handle connections from not only the GUI but also the micro-controller that was watching the physical drink supplies.

After I had finished writing most of the server Rob tested it with his Flash GUI. The GUI connected to the server... it sent a message to the server... but failed to listen for a response. Many frustrating and failed tests later, we finally found the problem: a missing '\0' meant Flash didn't know the reply was finished . We fixed the problem and all was good.

During the time that Rob and I were coding the software that would power the bar, Tyson was busy building the bar itself. He had constructed the dispenser housing

With our server and GUI talking happily amongst themselves we decided to move onto coding and wiring the micro-controller. We had chosen the use an Arduino, an open source micro-controller that could be programmed easily. We wrote the sketch that would tell the Arduino how to monitor drink stocks and uploaded it to the board (and after a few hiccups, it finally uploaded). In our test environment, we got the shot dispensers to correctly update the database through the Arduino but, unfortunately, we could never seem to attain the same success when the dispensers and Arduino were connected to the actual bar. I keep thinking that we must have damaged our wiring when we moved it into the real bar. The GUI and the server/database worked but their utility was lost without a dispenser monitor to track drink stocks.

MMDS Exhibition

Even though our Spirit Guide never fully worked as it was intended, I enjoyed working on the project. I certainly learned a lot. At the end of the semester, as with most Studio subjects, we had to create a simple folio site to reflect on the project. Click here to view my folio for Multimedia Studio 4.

If I just made your day a little better then thank me with a coffee or maybe a a pizza