PN7462 I2C line hangs

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

PN7462 I2C line hangs

1,324 Views
pratikyadav
Contributor II

Hello,

 

We are using PN7462, It’s I2C line is connected to MAX77818 chip.

 

While MAX77818 chip low SDA line for a few milliseconds at that time if we try to read I2C line it fails(Due to interrupt). When we again try to read on I2Cline still it is not able to read I2Cline

 

If we deinit and init I2C line, it works fine for several times( approx 4-5 time) and after that facing the same issue.

 

API return with arbitration error (0x82).

Due to this error, we are not able to read on I2C line again. We have to restart the controller(PN7462).

Even if we add delay before I2C read still we are facing the same issue.

0 Kudos
7 Replies

1,263 Views
pratikyadav
Contributor II

Hello @Kan_Li ,

Any update regarding it?

0 Kudos

1,259 Views
Kan_Li
NXP TechSupport
NXP TechSupport

Hi @pratikyadav ,

 

Actually we provide I2CM demo code in PN7462AU_ex_phExHif, in which it uses phhalI2CM_Reset() for the Arbitration error of transmit or reception. Please kindly refer "/PN7462AU_ex_phExHif/src/phExHif_Hw.c" for more details.

 

Hope that helps,

 

Have a great day,
Kan


-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!
- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------

0 Kudos

1,237 Views
pratikyadav
Contributor II

Hello @Kan_Li ,

I have tried phhalI2CM_Reset() in case of I2C failure, but still, we are not able to recover communication with the I2C line.

We are getting 138 (0x8A) errors continuously in the case of failure scenario.

 

Also, the observer that if we are deinit and init I2C, SDA line becomes low due to that I2C communication is not recovered.

0 Kudos

1,222 Views
Kan_Li
NXP TechSupport
NXP TechSupport

Hi @pratikyadav ,

 

It might be too early to conclude it is a PN7462 issue, would the SDA line be pulled low by MAX77818 device? Maybe you can try to configure the interface of I2C master as GPIO input in that case, and check if the SDA line is still low. Please kindly refer to the following for more details.

PN7462 I2CM PCR.png

Have a great day,
Kan


-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!
- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------

0 Kudos

1,227 Views
pratikyadav
Contributor II

hello @Kan_Li ,

 

Any update regarding it?

0 Kudos

1,298 Views
Kan_Li
NXP TechSupport
NXP TechSupport

Hi @pratikyadav ,

 

Is it possible to share your code for a review?

 

Have a great day,
Kan


-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!
- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------

0 Kudos

1,284 Views
pratikyadav
Contributor II

hello @Kan_Li ,

Sorry, we can't share our code.

I am sharing the pseudo-code in which I have mentioned all details of the I2c init and failure scenario.

Let me know if you need further detail.

0 Kudos