AnsweredAssumed Answered

SMBUS Clock Stretching Not Obeyed

Question asked by shields.patrick on Jul 2, 2012
Latest reply on Jul 22, 2014 by chang.khai_yuan
I am using an STM32F103 chip using I2C1 configured as an SMBUS Host (also tried normal I2C) to talk to a smart battery charger and smart battery.  The charger comms are fine both in software and look perfect on the logic analyzer.  The problem I'm having is communicating with the battery since it seems to be utilizing the SMBUS support for clock stretching.   

Here is what the comms between the charger and the battery look like with proper handling of clock stretching.
Good_Stretched_SMBUS_Short.png

Here is what happens when i try to talk to the battery with the STM32...

STM32_Stretched_SMBUS.png


It seems to me that the STM32F103 chip is NOT following the clock stretching requirements of the SMBUS standard.  Is there anything I could be missing here?  I can't think of anyway to make this work that doesn't involve writing my own bit banged version of SMBUS.  Has anyone else out there seen this or have any thoughts or ideas?


Thanks....










Outcomes