Longueur de cable?

Bus I2C........limitée en fonction de la capacité parasite de la ligne

Plus précisément la limitation est provoquée par l'effet filtre passe-bas de la capacité conjuguée avec la résistance de charge de la ligne.
Exemple si la résistance de charge Rc des lignes SDA et SCL est de 10kohms, du point de vue analogique le schéma équivalent sera un générateur de 0/5V associé à une résistance série Rs = Rc = 10 kohms.
C'est ce couple (Rs,C) qui forme un filtre passe bas qui écroule les fronts de montée et de descente. La limite de fonctionnement est atteinte quand le front est écroulé à un point tel que la reconnaissance des "0" et des "1" n'est plus possible.

Si la ligne est trop capacitive la première chose à faire est de diminuer la valeur des résistances de rappel au +5V.
Comme les modules esclaves sont alternativement "écouteur" et "causeur" le mieux, quand la liaison est longue, est de répartir les résistances de rappel de chaque coté de la ligne afin d'équilibrer les deux sens de transmission.

Si cela ne suffit pas, où qu'on arrive a des courants trop importants dans les transistors de sortie, il est possible de diminuer la fréquence horloge du bus en dessous des 100kHz habituels (autant éviter de base l'horloge à 400kHz).

Et si cela ne suffit toujours pas effectivement il y a les ampli de bus comme indiqué par Icare.