I2C Error Compendium: Difference between revisions

From STorM32-BGC Wiki V1
Jump to navigation Jump to search
No edit summary
No edit summary
Line 1: Line 1:
I2C errors are probably the most annoying sideffects of the technology presently used in our brushless gimbals. Many discussions and advices how to avoid them are found on the net, and also quite some myths.
I2C errors are probably the most annoying sideffects of the technology we use in our brushless gimbals. Many discussions, and advices on how to avoid them, are found on the net, and also some myths.


I2C errors occur then the signals on I2C clock and/or data lines are disturbed beyond ceratin limits, and they are due to two main reason:
I2C errors occur then the signals on the I2C clock and data lines are disturbed beyond certain limits, and this happens due to two main reason:
* capacitive load on the I2C clock and/or data lines
* capacitive load on the I2C clock and/or data lines
* induced signal disturbances due to capacitive coupling to outside fields
* induced signal disturbances due to capacitive coupling to outside fields


Importantly, all error sources add up. One hence can't give decicive threshold values, such as that the length of the I2C wires should be shorter than 40 cm. Whithout any further error sources one might well be able to use much longer wires, while if motor wires are nearby only much shorter wires would be acceptable. It's like a glass of wine: When it's full it will overflow. It doesn't matter if you fill in Bordeau, Chianti, a mixture of that, or even just plain water.
Importantly, all error sources add up. One hence can't give decicive threshold values, such as that the length of the I2C wires should be shorter than 40 cm. Whithout any further error sources one might well be able to use much longer wires, while if e.g. motor wires are nearby only much shorter wires might be acceptable. It's like a glass of wine: When it's full it will overflow. It doesn't matter if you fill in Bordeau, Chianti, a mixture of them, or even just plain water. When it's full it's full. It doesn' matter what you've poured in.

Revision as of 19:15, 10 January 2015

I2C errors are probably the most annoying sideffects of the technology we use in our brushless gimbals. Many discussions, and advices on how to avoid them, are found on the net, and also some myths.

I2C errors occur then the signals on the I2C clock and data lines are disturbed beyond certain limits, and this happens due to two main reason:

  • capacitive load on the I2C clock and/or data lines
  • induced signal disturbances due to capacitive coupling to outside fields

Importantly, all error sources add up. One hence can't give decicive threshold values, such as that the length of the I2C wires should be shorter than 40 cm. Whithout any further error sources one might well be able to use much longer wires, while if e.g. motor wires are nearby only much shorter wires might be acceptable. It's like a glass of wine: When it's full it will overflow. It doesn't matter if you fill in Bordeau, Chianti, a mixture of them, or even just plain water. When it's full it's full. It doesn' matter what you've poured in.