RF 433Mhz problema con modulos

////TRANSMISOR

#include <VirtualWire.h>

void setup()
{
   Serial.begin(9600);  // abre el puerto de serie
   Serial.println("Transmisor listo"); // Imprime "listo" en el monitor serial
   pinMode(13, OUTPUT); //configura el pin 13 como salida, se usara el led integrado.
  
   vw_set_tx_pin(12);          // Configura el pin 12 como TX
   vw_set_ptt_inverted(true);  // Requerido para DR3100
   vw_setup(4000);        // Bits por segundo
}

void loop()
{
   digitalWrite(13, HIGH);      // Parpadeo para mostrar actividad
   char msg[] = "Hello World";   // Mensaje a enviar
   vw_send((uint8_t *)msg, strlen(msg)); //Enviando...
   vw_wait_tx(); // espera hasta que el mensaje se haya enviado
   Serial.println("Transmitiendo..."); // Imprime transmitiendo en el monitor serial
   delay(125);                 // Pausa antes repetir el ciclo
   digitalWrite(13, LOW);      // Parpadeo para mostrar actividad
   delay(125);                 // Pausa antes repetir el ciclo
        
}

Y el código del receptor es:

#include <VirtualWire.h>

int count;

void setup()
{
   Serial.begin(9600); // abre el puerto de serie
   Serial.println("Receptor listo"); //Imprime "listo" en el monitor serial
   pinMode(13, OUTPUT); //configura el pin 13 como salida, se usara el led integrado.
   
   vw_set_rx_pin(12);       //Configura el pin 12 como RX
   vw_set_ptt_inverted(true); //Requerido para DR3100
   vw_setup(4000);     //  Bits por segundo
   vw_rx_start();       // Inciar el receptor
}

void loop()
{
   digitalWrite(13, HIGH);      // Parpadeo para mostrar actividad
   uint8_t buf[VW_MAX_MESSAGE_LEN]; //Almacenar en buffer los datos recibidos
   uint8_t buflen = VW_MAX_MESSAGE_LEN; //Determina el numero de caracteres recibidos
   if (vw_get_message(buf, &buflen)) // Si hay un mensaje recibido ejecuta...
   {
int i; 
      Serial.print("Rx: "); //imprime Rx en el monitor serial

for (i = 0; i < buflen; i++)  //rutina para impresion del mensaje recibido
{
           char c = (buf[i]); // guarda el caracter recibido para despues imprimirlo
           Serial.print(c); //imprime el caracter recibido en el monitor serial
   Serial.print(" "); //deja un espacio en el monitor serial
}
       count++;  //incrementa contador
       Serial.print(count);  //imprime el contador en el monitor serial
Serial.println("");   // salto de linea monitor serial
   }
   
delay(125);                 // Pausa antes repetir el ciclo
digitalWrite(13, LOW);      // Parpadeo para mostrar actividad
delay(125);                 // Pausa antes repetir el ciclo
}