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.

TCAL6416: Translating I2C Bus Sticky Reset Functionality

Part Number: TCAL6416


Tool/software:

Data sheet specifies that sticky registers is possible upon reset here:

"The system controller can re-initialize I2C/SMBus state machine in the event of a timeout or other improper operation by asserting a low on the RESET input pin without resetting the sticky registers to default values."

Everywhere else the datasheet proceeds to say that upon any reset the default values will be used upon power cycling back up. Is this device intended to have sticky register capability or is this a typo? If it does have sticky capability how do you enable it? 

  • Hi Eric,

    Please allow me to respond by noon CST tomorrow. 

    Regards,

    Tyler

  • Hi Eric,

    Everywhere else the datasheet proceeds to say that upon any reset the default values will be used upon power cycling back up. Is this device intended to have sticky register capability or is this a typo? If it does have sticky capability how do you enable it? 

    I would be curious to know what exact places in the datasheet say otherwise. 

    The sticky registers are enabled on default. THere is no internal register configuration to enable this feature. 

    The two ways to reset the internal registers to their default values are the power-on-reset (power cycle the device) or by issuing a software reset (section 7.3.6 of datashet). 

    Asserting the /RESET pin LOW only resets the I2C state machine. 

    Regards,

    Tyler

  • Hi ,

    I just wanted to close this conversation out and make sure whoever reads this is on the same page. The original question was:

    1) Does the TCAL6416 have sticky registers?

    If go to TI's website and search that part number, then you can find this datasheet:

    2) https://www.ti.com/product/TCAL6416?utm_source=google&utm_medium=cpc&utm_campaign=asc-null-null-GPN_EN-cpc-pf-google-ww_en_cons&utm_content=TCAL6416&ds_k=TCAL6416&DCM=yes&gad_source=1&gclid=Cj0KCQiA8fW9BhC8ARIsACwHqYp0GFL1Sd0Efy95kq7arzYFu5UI7gdZwRA1SYIoZtkNYUKbrtU0ZxkaAlxHEALw_wcB&gclsrc=aw.ds

    The datasheet seems to have conflicting statements as shown below:

    (Page 9): The system controller can re-initialize I2C/SMBus state machine in the event of a timeout or other improper operation by asserting a low on the RESET input pin without resetting the sticky registers to default values.

    (Page 20): A. On power up or reset, all registers return to default values

    (Page 22):  The TCAL6416 registers and I 2C/SMBus state machine are changed to their default state once RESET is low (0)

    Here is a different response that I got from TI:

    "TCAL6416PWR is functionally the same as TCAL6416R minus the sticky register feature."

    So just to make sure that anyone who reads this forum can have a clear understanding, can you check with your team and either confirm your response to Eric or provide an updated one?

    Thanks,

    Michael

  • Hi Michael,

    I figured out the confusion. 

    (Page 9): The system controller can re-initialize I2C/SMBus state machine in the event of a timeout or other improper operation by asserting a low on the RESET input pin without resetting the sticky registers to default values.

    I found this statement on page 19. I have taken a note that this is an incorrect reference to sticky registers. This should not be in this datasheet. 

    The TCAL6416 - non "R" datasheet does not have sticky registers. 

    (Page 20): A. On power up or reset, all registers return to default values

    (Page 22):  The TCAL6416 registers and I 2C/SMBus state machine are changed to their default state once RESET is low (0)

    This means that these statements are true. A power up or reset condition will change all registers to their default values. 

    I have taking this as an action to correct the TCAL6416 datasheet to remove stick register references. 

    Sticky registers are only a feature in the TCAL6416R datasheet. The "R" datasheet only has one package option which is the 24-pin X2QFN (DTO). 

    Regards,

    Tyler

  • Thanks Tyler! I appreciate you clarifying everything for me and others!

  • Hi Michael,

    You're welcome! I will be sure to get that fixed. 

    Thank you for pointing that out. 

    Regards,

    Tyler