This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TCA8418



This is very timely.  We have a customer with a problem using this key scanner on a board.  When the board and cables are out on the bench there is no problem, even if the SBC is heated.  When the SBC, LCD, Keypad, and cables are packed into the enclosure there is an incorrect reporting of one of the keys.  This starts to happen once the inside of the unit warms up.  Customer suspects some interference from the LCD or backlight inverter.  Today the customer told me that if they use a scope to probe the ROWS/COLUMNS the problem occurs.   

Looking at the datasheet it looks like the default sample after detecting a ROW input low is 50uS, can you confirm?  The customer is setting up a 5 Row x 4 Column scan.

Initialization:

Load 0x40 into Register 0x01

Load 0x1F into 0x1D

Load 0x0F into 0x1E

Read register 0x04 for key values.

Have any other customers experienced a similar issue?

Thanks,

Dan

  • You should make sure that DEBOUNCE is enabled.
    But if the environment is very noisy the debounce may not have any effect.
    If there is sufficient noise being coupled to the pad area traces then it may show up anyway.

    I would investigate the system mechanics and figure out what is putting noise into the area.
    You may need some shielding or different grounding schemes.

    The EVM page 13 shows diodes across all the switches, are these present?

    Here are some debounce details from the data sheet.
    Page 7 shows 60ms max keypad debounce.

    Page 19.
    Debounce disable will have the same effect for GPI mode or for rows in keypad scanning mode.
    The reset line always has a 50-us debounce time.

    The debounce time for inputs is the time required for the input to be stable to be noticed. This time is 50us.

    The debounce time for the keypad is for the columns only. The minimum time is 25 ms.
    All columns are scanned once every 25 ms to detect any key presses.
    Two full scans are required to see if any keys were pressed.

    If the first scan is done just after a key press, it will take 25 ms to detect the key press.
    If the first scan is down much later than the key press, it will take 40 ms to detect a key press.