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.

LP5810: LP5810 random crash

Part Number: LP5810

Tool/software:

Hi, I'm using 12 LP5810 on a board to drive 12 leds, each led is driven by a single LP5810 with all output tied together.

The setup works fine, but I have random crash of the LP5810.

Some units will never fail, but some fail more often.  The LEDs are blinking at a rate of about 1Hz 50mA.

The strange thing, is that I cannot find a register that will tell me the issues. When a drive is bugging, here are the registers values:

lp5810: ChipEn = 0x01
lp5810: DevConfig0 = 0x00
lp5810: LED_EN1 = 0x00
lp5810: ManualDC0 = 0xFF
lp5810: ManualDC1 = 0xFF
lp5810: ManualDC2 = 0x00
lp5810: ManualDC3 = 0x00
lp5810: ManualPWM0 = 0xFF
lp5810: ManualPWM1 = 0x48
lp5810: ManualPWM2 = 0x00
lp5810: ManualPWM3 = 0x00
lp5810: TSD_ConfigStatus = 0x00
lp5810: LOD_Status0 = 0x00
lp5810: LSD_Status0 = 0x00

So I don't have an TSB, LSO or LOD error.

The LED is off but the registers says otherwise !

The ONLY way I found to bring it back is a software reset.

Event sending the clear fault command doesn't change a thing.  Rewriting the enable ON/OFF doesn't change the result.

Seems to happen more when the I2C bus is having more traffic for other devices on the bus.

Configured:

LP5810_DevConfig12 at 0x00

LP5810_DevConfig1 at 12KHz

On the I2C bus that the LP5810 crash more often, there is an RTC and the TCA6408ARSVR

  • Hi Francois,

    Can you please provide your schematic to me? I am wondering that how can you control these 12pcs LP5810 separately.

    If it's not very convenient, please free to contact me via email(jared-zhou@ti.com).

    BR, Jared


  • Here is a part of it.  3 Banks of 4 each on its own I2C BUS.  You see that I use a diode bridge for the LED Off issue

  • Hi Francois,

    Our expert is currently out of office and will reply to you next Monday. Thanks for your understanding.

    Best Regards,

    Steven

  • Hi Francols,

    Thanks for sharing!

    My concern is that LP5810 only has 4 slave address, but you can control 12pcs device at the same time. That's why I ask how you control 12pcs LP5810 separately.

    For your schematic, I think there is no problem. But for the register data, I think LED_EN1 should be 0x0F based on your schematic.

    So, your problem is that the register data in LED_EN1 will be changed by mistake?

    BR, Jared

  • I'm using 3 different I2C bus on the board of course.  Also, the code is validated for hours and hours of runtime.  This glitch happens more on some units than others.  You cannot reproduce this with an eval board, as the resistance between the output is very high compared to shorting them like I did.  Looks like if a protection inside the chip triggered but is not reported or that the chip entered an unknown state in its state machine.  As I said, I can just enable a flag with my debugger and read back the registers to validate the led is supposed to be enable but it's not, then in the same code, I simply execute a software reset code for the LP5810 and re-enable the chip and all is good for x many hours...  I do this by stepping into the code and the led start working right away.  Now, we have spend 2 weeks probing the I2C bus and checking the code, the I2C data is valid and work flawlessly for hours and days, it's random and happen only on about 20% fo all the units we tested.  I did ask in this forum if it's valid to tied all 4 outputs together, it was said that it should be fine.  Well, it's not, it creates an unknown condition.  I do miss the time we were able to talk to support as you would understand I'm not a junior and that is a serious issue.  I was about to start production with 300k units per years, now I'm stuck to either continue on a forum thread and wait for a long time before someone take this issue seriously or change all the architecture.  I'm sorry to be a little rude, it's hard to get answers at 3am and be able to work on a complex situation.

  • Hi Francois,

    I want to clarify one thing is that connect all outputs together will be fine. There is no problem on my side.

    For your problem, can you please send one board to me for debug? Only based on your description, to be honest, I can't tell the reason. I need to do some test and capture some waveform on it.

    Btw, do you mind transfer to the mail box since you said your volume is about 300K per year. I think we need to bring in more resources to solve this problem quickly, rather than just staying in the E2E forum.

    BR, Jared

  • Sure I'll email you.

  • Hi Francois,

    Thanks for understanding! Since I will be OoO tomorrow. I have looped in my manager to follow up. Let's follow up on email in case I can't reply you on time. My manager will be backup.

    BR, Jared