User Tools

Site Tools


info:verifone_tranz_330_hacking

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
info:verifone_tranz_330_hacking [2008/08/16 23:30] – created tomgeeinfo:verifone_tranz_330_hacking [2008/08/18 11:33] (current) tomgee
Line 30: Line 30:
  
 That leaves 5 pins unaccounted for.  That leaves 5 pins unaccounted for. 
 +
  
 ==== Header Block Pinout ==== ==== Header Block Pinout ====
Line 42: Line 43:
   Pin  7 - Column 2 of the keypad   Pin  7 - Column 2 of the keypad
   Pin  8 - Column 1 of the keypad   Pin  8 - Column 1 of the keypad
 +  Pin 12 - pulses when card swiped as seen by TG
   Pin 13 - /POR on the OKI display chip.  Set this low for    Pin 13 - /POR on the OKI display chip.  Set this low for 
            200ns to reset the chip.            200ns to reset the chip.
Line 50: Line 52:
   Pin 20 - GND for the board.   Pin 20 - GND for the board.
  
 +==== Display ====
 +
 +Thing thing has an awesome 16 character 16-segment VFD display with a OKI C1937-01 display driver. 
 +
 +It's a pretty standard shift register thing to get data into it, except that it reads DATA when SCLK goes _LOW_ instead of HIGH. Also, there's no LATCH. You have to be very careful about clocking it data, I guess?
 +
 +To write to the display, you clock in "00" followed by 6 bits of value. 0x00 is "@". Actually, you can use ASCII values, sent through a "if (val > 63) val -= 64;" filter.
 +
 +Power Consumption: OKI + VFD == 55-60mA
 +==== API ====
 +
 +
 +Okay, so I have a pretty simple API in place now..
 +
 +    * resetOki - Resets the controller IC
 +    * setPosition - Sets the cursor to a certain position.
 +    * writeChar - Takes an ASCII character, displays it on the screen.
 +    * setBrightness - Sets the duty cycle (brightness).
 +    * printString - A generic print that prints a series of letters on the screen.
 +    * cyclon - Make a character go back and forth across the screen. 
 +
 +Still needed:
 +
 +    * Fade special effect (just calls setBrightness at a specified rate).
 +    * Scroll special effect. Scroll a message across the screen at a specified rate and direction. 
 +
 +==== Keypad ====
 +
 +This looks like a standard matrix keypad. To read, you just activate the columns one by one, and see which (if any) of the row pins light up. Pins 1-8 of the header are the keypad.
 +
 +Tie this to a timer interrupt, and you'll always have an uint16_t with the active buttons listed in it. (Er.. Overly complex. Just poll it when you need it.)
 +==== Speaker ====
 +A Piezo Buzzer, connected to pin 18.
 +
 +==== Mag stripe reader ====
 +
 +Man, NO idea. This is utter magic to me.
 +
 +Is it a high and low value? Does it need an op-amp? There are a bunch of op-amps on the board. Maybe one of them?
  
 +How is data encoded? 
info/verifone_tranz_330_hacking.1218943816.txt.gz · Last modified: 2008/08/16 23:30 by tomgee