In gesture control of car, RF module not work without serial cable of arduino

the car motors is working properly while the serial cable is connected to the computer but when I pulled out the cable and tried it with the battery, the motors did not work properly and turned constantly. Whats is wrong?

I use transmitter, gyro, 433 Mhz receiver, Af motors, two arduino uno, two batteries

my receiver codes here:

//ALICI
#include <VirtualWire.h> // RF modül için gerekli Arduino kütüphanesi
#include <AFMotor.h>

AF_DCMotor motor1(1,MOTOR12_64KHZ);
AF_DCMotor motor2(2,MOTOR12_64KHZ);
AF_DCMotor motor3(3,MOTOR12_64KHZ);
AF_DCMotor motor4(4,MOTOR12_64KHZ);
char*mesaj;  // Alınan mesajın yazıldığı değişken
int ledPin = 2; //Ledin bağlı olduğu arduino pini

void setup() {
  motor1.setSpeed(255);
  motor2.setSpeed(255);
  motor3.setSpeed(255);
  motor4.setSpeed(255);
  Serial.begin(9600);
  vw_set_ptt_inverted(true);
  vw_set_rx_pin(6);  //RF alıcı modü data çıkışı bağlı olduğu arduino pini
  vw_setup(4000);
  vw_rx_start();
}

void loop() {
  uint8_t buf[VW_MAX_MESSAGE_LEN];
  uint8_t buflen = VW_MAX_MESSAGE_LEN;
  Serial.println((char)buf[0]);
  if (vw_get_message(buf, &buflen)) //
  {
    //STOP
    if ((char)buf[0] == '0')
    {
      motor1.run(RELEASE);
      motor2.run(RELEASE);
      motor1.setSpeed(0);
      motor2.setSpeed(0);
      // motor3.run(RELEASE);
      //  motor4.run(RELEASE);
    }
    //FORWARD
    else if ((char)buf[0] == '1')
    {
      motor1.run(FORWARD);
      motor2.run(FORWARD);
      motor1.setSpeed(255);
      motor2.setSpeed(255);
      //   motor3.run(FORWARD);
      //   motor4.run(FORWARD);
    }
    //BACKWARD
    else if ((char)buf[0] == '2')
    {
      motor1.run(BACKWARD);
      motor2.run(BACKWARD);
      motor1.setSpeed(255);
      motor2.setSpeed(255);
      //   motor3.run(BACKWARD);
      //   motor4.run(BACKWARD);
    }
    //FORWARD LEFT
    else if ((char)buf[0] == '3')
    {
      motor1.run(FORWARD);
      motor2.run(RELEASE);
      motor1.setSpeed(255);
      motor2.setSpeed(0);
      //   motor3.run(RELEASE);
      //   motor4.run(FORWARD);
    }
    //FORWARD RIGHT
    else if ((char)buf[0] == '4')
    {
      motor1.setSpeed(0);
      motor2.setSpeed(255);
      motor1.run(RELEASE);
      motor2.run(FORWARD);
      //   motor3.run(FORWARD);
      //   motor4.run(RELEASE);
    }

  }

}

when I pulled out the cable and tried it with the battery,

What type of battery ? (is it a 9V PP3 by any chance)
How is it connected ?
How are the motors connected to the Arduino ?

I used 9V alikalin battery for L293 shiled external power and i used usb seria l cable connected to pc. It worked but after pluging out, i supported another 9V alkalin for arduino Vin input. not working properly. The receiver is not trigging new info. it is trigging first info

M1 M2 M3 and M4 were used for 4 motors.

I used 9V alikalin battery

Almost certainly the problem.

This sounds like a PP3 and it simply cannot supply enough current at the required voltage. Try using 6 AAs in series

Link here:

UKHeliBob:
Almost certainly the problem.

This sounds like a PP3 and it simply cannot supply enough current at the required voltage. Try using 6 AAs in series

The batteries seem enough for the motors, but there is no information like serial port. I dont want serial Communication, I want RF Communication. How can i solve it?

The batteries seem enough for the motors,

Not if the battery is a 9V PP3, which we have not established. Please post a link to the battery or a similar style one.

UKHeliBob:
Not if the battery is a 9V PP3, which we have not established. Please post a link to the battery or a similar style one.

I tried this

and

The first (6 AAs) one can supply enough current but the second one (a PP3) cannot

UKHeliBob:
The first (6 AAs) one can supply enough current but the second one (a PP3) cannot

is it l293 motor shield or Arduino Vin?

Motor shields usually have provision for the motors to be powered from a separate source than the Arduino but with a common GND connection to allow signal levels to be monitored

not working