Offiziell ist die Länge des I2C Bus bestimmt nicht in einer Meterangabe bestimmt. Laut Spezifikationen darf das SCL und das SDA System maximal eine Kapazität von 400pF haben. Zu dieser Kapazität zählen die Kapazitäten der Anschlusspins, sowie die Leitungskapazität. D.h. die zulässige Länge ist abhängig von der Anzahl der Busteilnehmer, von deren Pinkapazität (also auch vom Package) und vom verwendeten Kabel/Leitungsführung auf der Platine. Das das ganze mit 3 Meter Länge noch funktioniert ist durchaus möglich. Darunter leidet dann aber evtl die 'Datensicherheit'. Es kommt auch immer darauf an, in was für einer Umgebung man das Gerät betrieben möchte. In Industriehallen mit großen Maschinen fängt man sich über ein langes Kabel viel mehr Störungen ein, als über ein kurzes. Tatsache ist, dass es dafür gedacht war, um mehrere Chips in einem System zu verbinden (z.B. Videorecorder, ...). Es sollte nicht dazu dienen, Daten über größere Entferungen zu übertragen. Dafür gibt es andere Bussysteme vie RS485, CAN, LIN, ...

Ach ja: noch ein Vorteil von I2C: Im Gegensatz zu SPI kann man mit I2C einen Multimaster Bus realisieren.

Viele Grüße
Flite