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.

PCA9536: Random values on internal registry at restart

Part Number: PCA9536
Other Parts Discussed in Thread: TCA9536

Hi team,

my customer is find the following issue with PCA9536:

I am writing to you for clarification on the integrated PCA9536, referring in particular to the errata reference made in paragraph 10 of the datasheet (Power Supply recommendations).

 

To complete a reset cycle, the VCC of the IC shall fall below 0.2V as per paragraph 8.4.1.

We have actually measured that by completing a cycle from 3.3V (our VCC) to 0.5V and then again at 3.3V, the PCA restarts with random values of its internal registers.

In certain situations, the power node of the PCA remains at 0.5V when the board is turned off, so we are looking for a solution that will allow us not to redesign the board.

 

As a software work-around, we assumed to rewrite its registers via i2c every time it was started, thus returning it to a “known” state.

For completeness, we use the PCA’s gpios as inputs to recognize which board it is mounted on (1 pull configuration for each board). The strategy is to rewrite the configuration and reverse polarity registry at every boot, then read the input levels to the device correctly.

 

In the errata I referred to, there is mention of a “lock up” condition if the POR cycle is not respected. Is it guaranteed that rewriting the registers will always return the device to a known state or is there a risk of i2c bus blocking or other causes that make the PCA unreachable? What do you also think of the strategy of rewriting those two registers? Are there any alternatives?

Could you please help support?

Best regads, Riccardo

  • Hi Riccardo,

    This is a known issue of the PoR circuitry of PCA IO expander family. Not powering down to a level near GND before powering up again can cause the internal registers to default to random values.

    The software workaround is one way to combat this. Customer can re-write to the internal registers to reset them to their appropriate state after power up. 

    In order to guarantee that the registers power to default state, voltage on the supply must go below this 0.2V before powering up again. Since the customer does not want to redesign the board, customer can opt for the TCA9536 which is the p2p compatible upgrade to the PCA9536. 

    TCA9536 works up to fast mode (400kHz), offers wider supply voltage range, and fixes the PoR circuitry to power on with random register values if not powered down to a near GND state. A successful power-on reset from a non-GND state on the TCA9536 will power on with default register values as listed in the datasheet. 

    In the errata I referred to, there is mention of a “lock up” condition if the POR cycle is not respected. Is it guaranteed that rewriting the registers will always return the device to a known state or is there a risk of i2c bus blocking or other causes that make the PCA unreachable? What do you also think of the strategy of rewriting those two registers? Are there any alternatives?

    The lock up condition is only when the Power-On Reset conditions are not met in section 10.1. This is not an issue with potential for lock-up when re-writing the internal registers. The lock up can occur only on a PoR outside the datasheet recommendations.

    Regards,

    Tyler