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.

LP5860: scanning a keypad

Part Number: LP5860

I'm wanting the LP586x to drive RGB leds as well as scan a keypad. The open and short circuit detect features seem ideal for this purpose.

Using the LP5860TEVM board, I have disabled the led matrix from CS14..17 by removing the jumpers and connected the CS14..17 pins via series resistors to the keypad rows and SW0..2 via 1N4148 diodes (K to keypad) to the keypad columns.

The keypad is a simple 3x4 matrix of silicone buttons with carbon pills to complete the circuit. The on resistance seems to be around 10 Ohms.

Using 0 Ohm series resistors, I wrote some test code to randomly change colors on the leds and to read the relevant DOT_LODx and DOT_LSDx registers. 

This works as I expect with the SC bits being set when the corresponding button is pressed and the OC bits being set when the corresponding buttons are not pressed.

Just to complete the background info - the Chip-en register is set to '1', Dev_initial register is set to 0x58 (mode 1). The rest of the configuration is the default values, MC = 3 (15mA), CCx = 64, DCx=128

The pwm_brix registers are set to 255 for the relevant buttons.

The question. When I measure the voltage across the series resistors when a button is pressed (in order to determine the current) I get values like this:

0.8V over 68R is 14mA

0.06V over 1.5R is  40mA

Where the expectation would be less than the 3.75mA set by Imax.

Is it wise to 'abuse' the short circuit detection in this manner?

Would it be advisable to use higher value series resistors and just use the open circuit detection mechanism to ensure excessive current is not passed through the keypad?
Comments as to whether using the LP586x device to scan a keypad is not reliable and/or recommended?

  • Hi Bull,

    For your application on LP586x, I probably know the thing you are doing. But For your question, I don't really know how to answer it. Could you please draw a draft to describe your connection of the keypad in detail? Then, I can understand it completely and answer your question. Thanks very much!

    BR, Jared

  • backlight&keys.pdf

    This should illustrate the arrangement.

    Regards, Russell

  • Hi Russell,

    Thanks for your information!

    1. For question 1, where the expectation would be less than the 3.75mA set by Imax.

    [Jared]: I didn't find 68R or 1.5R on your schematic and I still don't understand how you connect it in your circuit. Could you please tell me where you connect it into your circuit?

    2. For question 2, is it wise to 'abuse' the short circuit detection in this manner?

    [Jared]: Although it's the first time for me to see use LSD detection for the keypad application, I think there is no risk for it and it's a good idea as long as it can meet the customer requirements.

    3. For question 3, Would it be advisable to use higher value series resistors and just use the open circuit detection mechanism to ensure excessive current is not passed through the keypad?

    [Jared]: I think it's ok to use higher or lower value series resistors as long as the resistor value can satisfy the LSD detection mechanism. It means the resistor can't be too high, or when you press the button, LP5860 can't detect the LSD fault.

    4. For question 4, Comments as to whether using the LP586x device to scan a keypad is not reliable and/or recommended?

    [Jared]: Please find the comments in answer 2.

    Thanks and best regards,

    Jared

  • Jared, In order to measure the current, I substituted 68R then 1R5 resistors for R12,13,14. Using an oscilloscope, I measured the voltage difference across the resistors.

    This is how I derived the current. The issue is the measured current is in excess of what was expected- ie: 3.75mA. For the 1R5 resistor the current worked out at around 40mA. My concern is that if a number of buttons are pressed, excessive current may be drawn.

    As well, how does the chip handle the current? Is it expected that the shorted row is disabled to limit any potential temperature rise?

    Could you forward my questions to the product specialists as I require a firm answer?

    Regards,

    Russell

  • Hi Russell,

    Got it, I will pass it on to the expert and reply to you later.

    BR, Jared

  • After conversations with TI support, it turns out I'm testing with a LP5860 'T' part which is higher current. I also used a Tektronix current probe for more accurate measurements and this has resolved the difference in the expected current.

    The default current setting for the 'T' part is 35mA vs 15mA for the non T part.

    For the benefit of others that may want to use these devices for LEDs and keypad scanning, be aware that multiple simultaneous key presses that connect a number of the CSx pins will cause the currents to add. To avoid this, use series resistors on the CSx pins to the keypad and only use the open circuit detection feature.

    Being able to use this chip for both leds and keypad is a convenient low component count solution.

  • Hi Russell,

    Glad to help you and thanks for your information!

    BR, Jared