Payphone keypad circuit

Discussion in 'The Projects Forum' started by chuco61, Jan 21, 2015.

  1. chuco61

    Thread Starter New Member

    Jan 21, 2015
    11
    0
    Hi,

    I have a CEECO payphone that I am coupling with an Adafruit sound effects board. https://learn.adafruit.com/adafruit-audio-fx-sound-board

    I am having difficulty isolating each number on the keypad, as an independent button, to couple it with my effect board.

    When I hook a gator clip to the right most terminal (bottom) of the keypad, then a second gator clip to any other terminal, multiple buttons will become active.

    Depending on the combination of gator clip location, different buttons will activate, columns, rows will activate.

    Can someone explain to me how I can isolate each numeric button to function as a simple push button, that way I can trigger a different sound on each number?

    I am considering making my own PCB with tactile buttons to place under the keypad, if tapping into the existing board proves to be too cumbersome

    Thank you!!

    [​IMG]

    [​IMG]
     
  2. #12

    Expert

    Nov 30, 2010
    16,321
    6,818
    One basic method is to map out which connections have continuity when each button is pushed. Then make a set of, "and" gates such that when a certain button is pushed, only one "and" gate responds with an output.

    This has been done many times before without my knowledge or contribution, so I am merely suggesting one method. Obviously, other people think a microprocessor chip is the way to do this.
     
  3. MaxHeadRoom

    Expert

    Jul 18, 2013
    10,554
    2,375
  4. #12

    Expert

    Nov 30, 2010
    16,321
    6,818
    Those links seem to indicate that sensing rows and columns would require a minimal number of AND gates. Whaddaya think, Max?
     
  5. WBahn

    Moderator

    Mar 31, 2012
    17,757
    4,800
    Since you have access to the traces on the bottom of the board, you could isolate the switches by cutting the tracks and then soldering leads to the switch traces. You could tie the other trace for each switch to a common ground.

    If you are confident that only one button will be pressed at a time, then there are some games you can play with the existing interface.

    I notice that each button appears to short three tracks together instead of the usual two in a matrix keypad arrangement. It appears that the middle track is a global track connected to the fourth pad from the left. I'm guessing that's to easily detect that any button is pushed. But that makes it a lot easier to work with as you can tie that line HI and use pulldowns on the other seven (or tie it LO and use pullups on the other seven) and then decode the pairs along the lines of what #12 suggested.
     
  6. #12

    Expert

    Nov 30, 2010
    16,321
    6,818
    Cut the traces...
     
  7. marcf

    Member

    Dec 29, 2014
    138
    19
    Hello:

    Keypad matrix is as follows:

    Look up 'DTMF' on wiki. I called pin 1 the lower left point on the connector.

    1633 would be on the pad to the left of 770 if you had a 4x4 keypad.

    dtmf key pad.png
     
  8. WBahn

    Moderator

    Mar 31, 2012
    17,757
    4,800
    I've verified that this pinout does match the PCB in the OP.
     
  9. chuco61

    Thread Starter New Member

    Jan 21, 2015
    11
    0
    Thank you all for the reply. I guess where I am getting lost (and please forgive me, as i am very new to matrices) is where do I physically solder my wires to the leads at the bottom in order to interact with this Adafruit board? Each button press to trigger one sound clip.

    https://www.adafruit.com/product/2133

    I've gotten this to work on a bread board, there is a common ground for all buttons, then another lead to each number. This allows each button press to trigger an audio clip.
     
  10. marcf

    Member

    Dec 29, 2014
    138
    19
    Hell0:

    You would connect pin 1 to Vcc (3.3 or 5.0), and 'pull down' resistors (4.7K) on each row and column line (7 ea)

    For example to get a digit 'one' you would look for 2 highs, one on the '697' line and another on the '1209' line. Digit 0 would have a high on the 941 and the 1336 line, etc.

    Decoding would be to check which pair of the 7 output pins go "hi'. (2 of 7 )

    The idea would be have 10 2 input and gates. There will be only one valid pair per digit. Only one of the 10 2 input nand gates would go low.

    Of course it is much easier to do the logic with a uP, 7 bits for 10 digits, 8 bits for 16.

    The other detail is that you would disconnect the tone encoder chip and just use the matrix.

    If you want to just use the DTMF produced by the chip and amplify it, you could power up.

    Powering a dtmf phone pad involves more than just slapping power to it, but I could send you a schematic of the idea if you want.

    In the 'real' world' the phones' were powered (seems strange to use the word 'were' (as in no longer)) by power generated in the Central Office (CO) via a 'battery feed coil' (sad to say, but I can remember before DTMF technology)

    I was going to give you a Google 'link' for a telephone battery feed coil, but I can't find one.

    I will send you a schematic later if you want.
     
Loading...