Duda con I2C y varios arduinos

Un saludo para todos, me encuentro practicando con un proyecto para controlar 2 arduino por I2C, en cada uno tengo este código:

Arduino 1:
void setup()
{
  Wire.begin(1);
  Wire.onReceive(rep1);
}
Void loop(){
If(x==1) {
hace algo
}
Delay(2000);
Wire.beginTransmission(2);
Wire.write(1);
Wire.endTransmission();
}
Void rep1(){
Int x = Wire.read();
}

Arduino 2
void setup()
{
  Wire.begin(2);
  Wire.onReceive(rep1);
}
Void loop(){
  If(x==1) {
   hace algo
}
Delay(2000);
Wire.beginTransmission(1);
Wire.write(1);
Wire.endTransmission();
}
Void rep1(){
Int x = Wire.read();
}

La cosa es que funciona bien de esta forma, pero, cuando le conecto un LCD vía I2C a cualquiera de los dos arduino solo funciona la comunicación desde el que tiene el lcd hacia el que no lo tiene.

Asegurate de que no hay colisiones.
esto no discrimina de donde viene la información

Void rep1(){
Int x = Wire.read();
}

Hace un tiempo hubo un debate sobre una comunicación I2C donde había que controlar las colisiones. No recuerdo ahora el tema, pero en cuanto lo haga posteo el link para tu lectura.

No me acordé pero lo busqué de otro modo y apareció Duda sobre conexion de una pantalla LCD a dos Arduinos distintos.
No es tu mismo caso pero presta atención al tratamiento de las colisiones

ok, gracias