0
\$\begingroup\$

In low temperatures the functionality of the I2C is being affected, but the slave is working properly and the temperature is also within limit of slave. For that reason I suspect the drive strength.

Does temperature affect the drive strength of a GPIO pin?

\$\endgroup\$
  • 8
    \$\begingroup\$ You need to show a schematic of the circuit - your question is too vague. We don't know which controller, what slave device, what the I2C voltage level is, what the pull-up resistor values are, and because of this we cannot provide any substantive answers to you question. \$\endgroup\$ – Adam Lawrence Aug 22 '19 at 14:02
  • 4
    \$\begingroup\$ Usually, circuits get stronger/faster at cold temperatures. I'm not sure why that would be breaking your I2C bus though unless it was already on the edge of failing from bad signal integrity. Are you sure you don't have a bad solder joint or something? Can you plot the signals with a scope? \$\endgroup\$ – Justin Aug 22 '19 at 14:05
  • 2
    \$\begingroup\$ yes----temperature affects the conductivity of MOSFETS. At cold temperatures, the conductivity should increase. \$\endgroup\$ – analogsystemsrf Aug 22 '19 at 14:06
  • 2
    \$\begingroup\$ If this is being an issue you are either at extreme temperature outside design limits, or far more likely you have a faulty design of your I2C bus. You should not be that close to failing. I've heard of people reading temperature sensors with firmware that broke on negative values... \$\endgroup\$ – Chris Stratton Aug 22 '19 at 16:43
  • 3
    \$\begingroup\$ Suggestion: capacitance of ceramic caps varies a lot with temperature, this can affect regulator stability. \$\endgroup\$ – peufeu Aug 22 '19 at 21:07
0
\$\begingroup\$

Temperature will affect drive strength some, but it will also affect threshold voltage. How is the signal looking? Is your pull-up strong enough? These are basic things to check.

Also, is the slave ACK working correctly? This is a trouble spot sometimes as there is a handoff period after SCL low before the slave drives ACK. Check 100khz vs 400khz if possible.

\$\endgroup\$
  • \$\begingroup\$ actually the setup works perfect at higher temperatures (80 degree celcius ), but there are random failures while operating it under -25 deg celcius \$\endgroup\$ – Vignesh C Aug 23 '19 at 7:55

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.