HC-05 connects but motors do not run with L293D motor shield

I am making a phone-controlled RC car for my school science fair using:

  • Arduino Uno
  • L293D Motor Driver Shield (AFMotor.h library)
  • HC-05 Bluetooth Module
  • 4 BO Motors with 4 Wheels
  • 7.4V (2 x 3.7V) Li-ion Battery Pack
  • On/Off Switch
  • Cardboard Base

HC-05 connections:

  • VCC to + on the motor shield
  • GND to - on the motor shield
  • TXD to D0 (RX)
  • RXD to D1 (TX)

Software:

  • Arduino IDE
  • Adafruit Motor Shield Library (AFMotor.h)
  • Serial.begin(9600)

Problem:

  • Bluetooth connects successfully to my phone.
  • The motors work when connected directly to the battery.
  • Arduino Uno and motor shield LEDs turn on.
  • The motors do not run with the motor test code.
  • Sometimes, when I remove and reinsert the yellow PWR jumper, two motors briefly run at full speed.
  • After switching the battery off and on, sometimes one motor briefly runs, then nothing happens.

What I already checked:

  • All motor wires are secure.
  • Each motor works individually with the battery.
  • Battery is charged.
  • Motor shield is firmly attached to the Arduino.
  • Yellow PWR jumper is installed.
  • I tried both Bluetooth code and simple motor test code.

My question:
What is the most likely cause of this problem? Is the issue with the L293D chip, the yellow PWR jumper, the battery connection, or the motor shield itself?

I have attached clear photos of:

  • The complete wiring
  • The motor shield
  • The battery and switch connections

Can someone please help me find the problem?









Since the motors do not run even with the simple motor test code, I would probably first focus on the motor supply side rather than on the Bluetooth part.

One thing I would check first is the voltage directly at the motor terminals while the motors are supposed to run.

The fact that the motors sometimes briefly react when reinserting the yellow PWR jumper could possibly point towards a power supply or contact issue, but measuring the voltage at the motors during operation would give a much clearer picture first.

This is not the way to do a project. Perform one step at a time:

Please, post your sketch that you ave written ena uploaded in your UNO.

Thank you. I do not currently have a multimeter to measure the voltage at the motor terminals.

Since the motors work when connected directly to the battery, and they only briefly spin when I reinsert the yellow PWR jumper, does that suggest the issue is most likely with the motor power supply path, the yellow PWR jumper, the L293D chip, or the motor shield itself?

Thank you. Below is the simple motor test sketch I uploaded to my Arduino Uno. Even with this code, the motors do not run.

#include <AFMotor.h>

AF_DCMotor motor1(1);
AF_DCMotor motor2(2);
AF_DCMotor motor3(3);
AF_DCMotor motor4(4);

void setup() {
  motor1.setSpeed(255);
  motor2.setSpeed(255);
  motor3.setSpeed(255);
  motor4.setSpeed(255);

  motor1.run(FORWARD);
  motor2.run(FORWARD);
  motor3.run(FORWARD);
  motor4.run(FORWARD);
}

void loop() {
}

The jumper must be on or the Uno won't have power.
Lift up your car so that the wheels can run freely.
Try the test code.

Thank you. I will keep the yellow PWR jumper installed, lift the car so the wheels can spin freely, and test again with the motor test code.

The jumper is already in place (Fig-1):


Figure-1:

  • Remove the wires from three of the motors.
  • If the one motor works (suspended in the air), connect another motor wire.
  • if the one motor does not work, try this on the three remaining motors.
  • If two motors work, connect a third motor wire.
  • if one motor works, but two motors do not work, discover if any two motors work (12, 13, 14, 23, 24, 34).
  • Do the same with three and four motors.

Thank you. I will test each motor individually, then in combinations of two, three, and four motors, and report which combinations work and which do not.

What thing do you all think has the most faulty?
Please help me faster as my science fest is next Saturday!

Humans are responsible for 100% of faults. Devices do their job when used correctly.

Proceed logically, as you have written in Post #11.

Use the shortest jumper wires that do not cause stress on the wires.

It is possible that using four motors is too much for the power supply, and fewer motors must be used.

Show your voltage measurements at the battery and at each motor.

Your schedule is your business, but inconsequential here, and not part of the solution.

I'm trying to help but you have not done what I asked.