This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

How to isolate a broken I2C chip and keep the system running?

Hi, 

I'm using nrf52832 (SDK 15.3). And I have 24 chips on the same I2C bus. They all work fine right row. But if one of the chip is broken, the whole system will crash. Is there a good way to detect which chip is dead and isolate it, so that the system can still running with other chips. Should I use I2C scanner to do it?  

Thanks!

Parents
  • A method suggested by Kenneth will help in a most lucky case when some chip just stopped to respond. But if a broken chip locks the bus, you have no way to isolate it. 

    In one of my projects (there was an i2c bus with hot-plug components), in case of any bus error I'm sending 16 CLK pulses then STOP condition, then scanning for topology changes. Though it doesn't help when attaching a broken device.

Reply
  • A method suggested by Kenneth will help in a most lucky case when some chip just stopped to respond. But if a broken chip locks the bus, you have no way to isolate it. 

    In one of my projects (there was an i2c bus with hot-plug components), in case of any bus error I'm sending 16 CLK pulses then STOP condition, then scanning for topology changes. Though it doesn't help when attaching a broken device.

Children
No Data
Related