PCA9955B: Short-circuit detection occurs repeatedly during the gradation operation

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

PCA9955B: Short-circuit detection occurs repeatedly during the gradation operation

1,396 Views
yannick_aeby
Contributor I

Hello,

I have problems with the short circuit detection of the PCA9955B led drive.

Short-circuit detection occurs automatically on all channels as soon as gradation continuous operation is started. They are false errors. The voltage V_O never exceeds the threshold voltage of 2.85V. The maximum measured voltage was 1.2V during gradation.

If I reset the errors, the short circuit error comes right back.

If I do not perform a gradation operation, the error register behaves correctly.

Any suggestion?


Thank you.

Tags (2)
0 Kudos
11 Replies

1,194 Views
yannick_aeby
Contributor I

Hi

Our schematic:

LED_PCA.JPG

Operation after Reset:

# Ramp Rate
i2ctransfer -y $I2C_BUS w2@0x65 0x28 0xc0   #Ramp-up enable, Ramp-down enable, Ramp rate value = 1
i2ctransfer -y $I2C_BUS w2@0x65 0x2c 0xc0
i2ctransfer -y $I2C_BUS w2@0x65 0x30 0xc0
i2ctransfer -y $I2C_BUS w2@0x65 0x34 0xc0

# Step Time
i2ctransfer -y $I2C_BUS w2@0x65 0x29 0x42   #Cycle time is set to 8 ms
i2ctransfer -y $I2C_BUS w2@0x65 0x2d 0x44
i2ctransfer -y $I2C_BUS w2@0x65 0x31 0x46
i2ctransfer -y $I2C_BUS w2@0x65 0x35 0x48

# Hold CNTL
i2ctransfer -y $I2C_BUS w2@0x65 0x2a 0xed   #Hold ON enable, Hold OFF enable, Hold ON time = 2s, Hold OFF time = 2s
i2ctransfer -y $I2C_BUS w2@0x65 0x2e 0xed
i2ctransfer -y $I2C_BUS w2@0x65 0x32 0xed
i2ctransfer -y $I2C_BUS w2@0x65 0x36 0xed

# I_Ref
i2ctransfer -y $I2C_BUS w2@0x65 0x2b 0x48    #6mA --> 72 Steps
i2ctransfer -y $I2C_BUS w2@0x65 0x2f 0x48
i2ctransfer -y $I2C_BUS w2@0x65 0x33 0x48
i2ctransfer -y $I2C_BUS w2@0x65 0x37 0x48

# Grad Mode
i2ctransfer -y $I2C_BUS w2@0x65 0x38 0x77     # Channel 3 and 7 are not used
i2ctransfer -y $I2C_BUS w2@0x65 0x39 0x77     # Channel 11 and 15 are not used

# Grad Group
i2ctransfer -y $I2C_BUS w2@0x65 0x3a 0x00
i2ctransfer -y $I2C_BUS w2@0x65 0x3b 0x55
i2ctransfer -y $I2C_BUS w2@0x65 0x3c 0xaa
i2ctransfer -y $I2C_BUS w2@0x65 0x3d 0xff

# I_RefX
i2ctransfer -y $I2C_BUS w2@0x65 0x18 0x01
i2ctransfer -y $I2C_BUS w2@0x65 0x19 0x01
i2ctransfer -y $I2C_BUS w2@0x65 0x1a 0x01
#i2ctransfer -y $I2C_BUS w2@0x65 0x1b 0x01
i2ctransfer -y $I2C_BUS w2@0x65 0x1c 0x01
i2ctransfer -y $I2C_BUS w2@0x65 0x1d 0x01
i2ctransfer -y $I2C_BUS w2@0x65 0x1e 0x01
#i2ctransfer -y $I2C_BUS w2@0x65 0x1f 0x01
i2ctransfer -y $I2C_BUS w2@0x65 0x20 0x01
i2ctransfer -y $I2C_BUS w2@0x65 0x21 0x01
i2ctransfer -y $I2C_BUS w2@0x65 0x22 0x01
#i2ctransfer -y $I2C_BUS w2@0x65 0x23 0x01
i2ctransfer -y $I2C_BUS w2@0x65 0x24 0x01
i2ctransfer -y $I2C_BUS w2@0x65 0x25 0x01
i2ctransfer -y $I2C_BUS w2@0x65 0x26 0x01
#i2ctransfer -y $I2C_BUS w2@0x65 0x27 0x01

# LEDOUTx
i2ctransfer -y $I2C_BUS w2@0x65 0x02 0x15
i2ctransfer -y $I2C_BUS w2@0x65 0x03 0x15
i2ctransfer -y $I2C_BUS w2@0x65 0x04 0x15
i2ctransfer -y $I2C_BUS w2@0x65 0x05 0x15

# Start
i2ctransfer -y $I2C_BUS w2@0x65 0x3e 0xff

After the start, the short-circuit error always occurs again as soon as the hold-off phase is reached (for the group). This happens again and again, even if I reset the errors in between. I tried with 5V supply for the LED-channels too.

LED-Typ: LTW-C191TLA

If I can ask one more question: These unused channels, can they be left floating?

0 Kudos

1,194 Views
guoweisun
NXP TechSupport
NXP TechSupport

For all unused LED outputs, user must program their LED outputs to the ‘OFF’ state (LDRx = 00) and IREFx value to 00h, and all unused LED output pins must be pulled up to VDD with a recommended 100 k shared resistor.

The states of the unused LED channels have no effect upon the FAULTTEST and

always return 0s in EFLAG0/EFLAG1 registers.

You can update your schematic to try again!

0 Kudos

1,194 Views
yannick_aeby
Contributor I

So I pulled all unused LED output pins up to VDD with 100k. But it's still the same thing ...

I also tried to switch off the holdoff phase completely and set the step time to 0.5ms. But also without success.

The error always occurs when the LEDs are in the holdoff phase, or when they reach the lowest point in the gradation process.

pastedImage_1.png

Any other suggestions?

0 Kudos

1,194 Views
yannick_aeby
Contributor I

To make sure: I'm talking about the PCA9955B (https://www.nxp.com/docs/en/data-sheet/PCA9955B.pdf ) and not the PCA9955.

The PCA9955B hasn't any FAULTTEST String in his Datasheet an there's only: "Both LDRx value in LEDOUTx registers and IREFx value must be set to ‘00’ for those unused LED output channels. " Nothing about Pull-Up to VDD.

0 Kudos

1,194 Views
guoweisun
NXP TechSupport
NXP TechSupport

Do you mind the catch waveform of Vo using oscilloscope when happened short point?

0 Kudos

1,194 Views
yannick_aeby
Contributor I

So, with VDD = 3.3V and VLED = 4V. Blue is Vo:

pastedImage_1.jpg

The red lines marks the zones where the short circuit detection occurs.

0 Kudos

1,194 Views
yannick_aeby
Contributor I

Have they already found a possible cause?
For me, this bug is not very bad, we'll just ignore it.

0 Kudos

1,194 Views
guoweisun
NXP TechSupport
NXP TechSupport

No obviously application fault to be found to cause this fault.

For LED loop circuit ,please control it as short as possible to avoid bring noise then affect on the fault condition mechanism.

0 Kudos

1,194 Views
guoweisun
NXP TechSupport
NXP TechSupport

Because of this IC we don't have EVB so I can't test it by myself.

0 Kudos

1,194 Views
yannick_aeby
Contributor I

I can do this in two days. Thank you for your patience.

0 Kudos

1,194 Views
guoweisun
NXP TechSupport
NXP TechSupport

Hi

Please post your schematic,and detail operation condition when short protection happened.

0 Kudos