Warning: include(../../../project/pastebin/chilight.php) [function.include]: failed to open stream: No such file or directory in /usr/local/www/pub/projects/cokemachine/index.php on line 2

Warning: include() [function.include]: Failed opening '../../../project/pastebin/chilight.php' for inclusion (include_path='.:/usr/local/share/pear') in /usr/local/www/pub/projects/cokemachine/index.php on line 2
DAS COKEMACHINE!!!

DAS CokeMachine!

I've always loved magstripe systems. A while back, I stumbled upon the Stripesnoop project and thought that it looked like an awesome project. After a while I found a minor subproject on the hardware page. It was a cokemachine.
I went through their design, and thought that it was rather bulky to use an x86 computer for such a simple task, and decided to build my own, better machine. At first, all I wanted was a fridge that could eject a can when the correct card was swiped through a reader. But that soon changed, as I started to add more and more ideas to the project.
The current version of my perfect cokemachine is as follows: Refrigerated compartment with 4 or 8 slots for misc. beverages. (I've estimated that I can fit up to 48 33cl cans in each slot, ie a maximum of 128 litres of pop... Mmm that's got to be healthy!). Color coded and otherwise unmarked keypad, keys change color according to their function. For example green for beverage available in slot, yellow for low quantity in slot and red for empty. Alphanumeric status LCD for maintenance, temperature and so forth. Unregistered purchase with coin-counting assembly. Registered purchase with magstripe membercard containing a unique ID number. The ID number on the card will get looked up on a SQL server via Ethernet, to validate the ID and check the available credits on that account. The master card (or rather any card linked to a super user account) will get access to the maintenance menu controlled from the earlier mentioned keypad. In maintenance mode one will be able to change the price of each slot (granted that the account has the right accesslevel).
Was that all? ..I think that's all... For now. =)
Oh yeah, everything will be controlled by an Atmel AVR microcontroller.

What's been coded so far:

  [ ] keypad
  [x] LCD
  [ ] magstripe reader
  [ ] can-ejector
  [ ] ethernet controller
  [ ] SQL access

What's been built so far:

  [ ] keypad
  [x] LCD
  [x] magstripe reader
  [ ] can-ejector
  [ ] ethernet controller
  [ ] can storage

Project files:

archive              512 B, 2012-01-12
enc28j60     pdf    1.4 MB, 2012-01-12
hd44780      c      2.2 kB, 2012-01-12  view
hd44780      h      1.5 kB, 2012-01-12  view
magstripe    c      3.2 kB, 2012-01-12  view
magstripe    h        1 kB, 2012-01-12  view

2008-01-09
I found the keypad I want to use for this project! Well, it's not as much of a keypad as it is a bunch of keypad components... But it's what I want and "need". It's this little thing, sold by Sparkfun electronics and I think that it will be perfect for the task
The buttonpad can be used together with this breakout board and theese RGB LED's to make a complete keypad.

2008-01-07
The code for the hd44780 LCD module is done and works like a charm! I only wish the magstripe code would be just as nice to me =(

..In the beforetime, in the long long ago..
I thought I should mention all the components and parts I've found so far. ie before starting this project-page.
The microcontroller in the project, is the Atmel AVR, ATmega8515 (I had some over from a previous project..) but that will change someday.
The ethernet controller, is this seemingly magical little chip by Microchip called the ENC28J60. It's a T-base10 ethernet device that's controlled by SPI (Cool!)
The magstripe reader, is a generic TTL reader with inverted Clock Data and Card Present line. The one I'm currently playing with is made by Hitachi-Omron, called 3S4YR-HNR4. This one is a bit special though, since it has been modded by the security-company that provided the equiment to the place I got the reader. (No, I didn't steal it, they changed to an RFID system and threw it in the dumpster). The small modchip, controlled by three wires (activated by a high potential) contains a small high-pitch buzzer and two LED's (red and green).
The LCD's are your generic-find-everywhere hd44780 module, 16x2 characters. I will change to a 20x4 module when I get my hands on one.
The keypad is a standard telephone-style 4x4 matrix keyboard (no LED's...)
I have sortof been promised a coin-slot-machine-thingy by a friend of mine. There's no data on the device whatsoever, and we don't even know if it's operational... But we'll find out soon enough.