this is the code please resolve the error waiting for the reply
#include <Servo.h>
#include <AFMotor.h>
#define Echo A0
#define Trig A1
#define Speed 170
#define spoint 103
char value;
int distance;
int Left;
int Right;
int L = 0;
int R = 0;
int L1 = 0;
int R1 = 0;
Servo servo;
AF_DCMotor M1(1);
AF_DCMotor M2(2);
AF_DCMotor M3(3);
AF_DCMotor M4(4);
void setup() {
Serial.begin(9600);
pinMode(Trig, OUTPUT);
pinMode(Echo, INPUT);
servo.attach(1);
M1.setSpeed(120);
M2.setSpeed(120);
M3.setSpeed(120);
M4.setSpeed(120);
}
void loop() {
Obstacle();
//Bluetoothcontrol();
//voicecontrol();
}
void Obstacle() {
distance = ultrasonic();
if (distance <= 12) {
Stop();
backward();
delay(100);
Stop();
L = leftsee();
servo.write(spoint);
delay(800);
R = rightsee();
servo.write(spoint);
if (L < R) {
right();
delay(500);
Stop();
delay(200);
} else if (L > R) {
left();
delay(500);
Stop();
delay(200);
}
} else {
forward();
}
}
void voicecontrol() {
if (Serial.available() > 0) {
value = Serial.read();
Serial.println(value);
if (value == '^') {
forward();
} else if (value == '-') {
backward();
} else if (value == '<') {
L = leftsee();
servo.write(spoint);
if (L >= 10) {
left();
delay(500);
Stop();
} else if (L < 10) {
Stop();
}
} else if (value == '>') {
R = rightsee();
servo.write(spoint);
if (R >= 10) {
right();
delay(500);
Stop();
} else if (R < 10) {
Stop();
}
}
}
}
int ultrasonic() {
digitalWrite(Trig, LOW);
delayMicroseconds(4);
digitalWrite(Trig, HIGH);
delayMicroseconds(10);
digitalWrite(Trig, LOW);
long t = pulseIn(Echo, HIGH);
long cm = t / 29 / 2; //time convert distance
return cm;
}
void forward() {
M1.run(FORWARD);
M2.run(FORWARD);
M3.run(FORWARD);
M4.run(FORWARD);
}
void backward() {
M1.run(BACKWARD);
M2.run(BACKWARD);
M3.run(BACKWARD);
M4.run(BACKWARD);
}
void right() {
M1.run(BACKWARD);
M2.run(BACKWARD);
M3.run(FORWARD);
M4.run(FORWARD);
}
void left() {
M1.run(FORWARD);
M2.run(FORWARD);
M3.run(BACKWARD);
M4.run(BACKWARD);
}
void Stop() {
M1.run(RELEASE);
M2.run(RELEASE);
M3.run(RELEASE);
M4.run(RELEASE);
}
int rightsee() {
servo.write(20);
delay(800);
Left = ultrasonic();
return Left;
}
int leftsee() {
servo.write(180);
delay(800);
Right = ultrasonic();
return Right;
}
this is the error showing when uploading the code to arduino board R3
C:\Users\Admin\AppData\Local\Temp\ccTLdHcn.ltrans0.ltrans.o: In function `Stop()':
C:\Users\Admin\AppData\Local\Temp\.arduinoIDE-unsaved2025120-9304-13m20kl.f9k5\sketch_feb20b/sketch_feb20b.ino:140: undefined reference to `AF_DCMotor::run(unsigned char)'
C:\Users\Admin\AppData\Local\Temp\.arduinoIDE-unsaved2025120-9304-13m20kl.f9k5\sketch_feb20b/sketch_feb20b.ino:141: undefined reference to `AF_DCMotor::run(unsigned char)'
C:\Users\Admin\AppData\Local\Temp\.arduinoIDE-unsaved2025120-9304-13m20kl.f9k5\sketch_feb20b/sketch_feb20b.ino:142: undefined reference to `AF_DCMotor::run(unsigned char)'
C:\Users\Admin\AppData\Local\Temp\.arduinoIDE-unsaved2025120-9304-13m20kl.f9k5\sketch_feb20b/sketch_feb20b.ino:143: undefined reference to `AF_DCMotor::run(unsigned char)'
C:\Users\Admin\AppData\Local\Temp\ccTLdHcn.ltrans0.ltrans.o: In function `global constructors keyed to 65535_0_sketch_feb20b.ino.cpp.o.1863':
<artificial>:(.text.startup+0xb8): undefined reference to `AF_DCMotor::AF_DCMotor(unsigned char, unsigned char)'
<artificial>:(.text.startup+0xc4): undefined reference to `AF_DCMotor::AF_DCMotor(unsigned char, unsigned char)'
<artificial>:(.text.startup+0xd0): undefined reference to `AF_DCMotor::AF_DCMotor(unsigned char, unsigned char)'
<artificial>:(.text.startup+0xdc): undefined reference to `AF_DCMotor::AF_DCMotor(unsigned char, unsigned char)'
C:\Users\Admin\AppData\Local\Temp\ccTLdHcn.ltrans0.ltrans.o: In function `setup':
C:\Users\Admin\AppData\Local\Temp\.arduinoIDE-unsaved2025120-9304-13m20kl.f9k5\sketch_feb20b/sketch_feb20b.ino:31: undefined reference to `AF_DCMotor::setSpeed(unsigned char)'
C:\Users\Admin\AppData\Local\Temp\.arduinoIDE-unsaved2025120-9304-13m20kl.f9k5\sketch_feb20b/sketch_feb20b.ino:32: undefined reference to `AF_DCMotor::setSpeed(unsigned char)'
C:\Users\Admin\AppData\Local\Temp\.arduinoIDE-unsaved2025120-9304-13m20kl.f9k5\sketch_feb20b/sketch_feb20b.ino:33: undefined reference to `AF_DCMotor::setSpeed(unsigned char)'
C:\Users\Admin\AppData\Local\Temp\.arduinoIDE-unsaved2025120-9304-13m20kl.f9k5\sketch_feb20b/sketch_feb20b.ino:34: undefined reference to `AF_DCMotor::setSpeed(unsigned char)'
C:\Users\Admin\AppData\Local\Temp\ccTLdHcn.ltrans0.ltrans.o: In function `backward':
C:\Users\Admin\AppData\Local\Temp\.arduinoIDE-unsaved2025120-9304-13m20kl.f9k5\sketch_feb20b/sketch_feb20b.ino:122: undefined reference to `AF_DCMotor::run(unsigned char)'
C:\Users\Admin\AppData\Local\Temp\.arduinoIDE-unsaved2025120-9304-13m20kl.f9k5\sketch_feb20b/sketch_feb20b.ino:123: undefined reference to `AF_DCMotor::run(unsigned char)'
C:\Users\Admin\AppData\Local\Temp\.arduinoIDE-unsaved2025120-9304-13m20kl.f9k5\sketch_feb20b/sketch_feb20b.ino:124: undefined reference to `AF_DCMotor::run(unsigned char)'
C:\Users\Admin\AppData\Local\Temp\.arduinoIDE-unsaved2025120-9304-13m20kl.f9k5\sketch_feb20b/sketch_feb20b.ino:125: undefined reference to `AF_DCMotor::run(unsigned char)'
C:\Users\Admin\AppData\Local\Temp\ccTLdHcn.ltrans0.ltrans.o: In function `right':
C:\Users\Admin\AppData\Local\Temp\.arduinoIDE-unsaved2025120-9304-13m20kl.f9k5\sketch_feb20b/sketch_feb20b.ino:128: undefined reference to `AF_DCMotor::run(unsigned char)'
C:\Users\Admin\AppData\Local\Temp\ccTLdHcn.ltrans0.ltrans.o:C:\Users\Admin\AppData\Local\Temp\.arduinoIDE-unsaved2025120-9304-13m20kl.f9k5\sketch_feb20b/sketch_feb20b.ino:129: more undefined references to `AF_DCMotor::run(unsigned char)' follow
collect2.exe: error: ld returned 1 exit status
Multiple libraries were found for "Servo.h"
Used: C:\Users\Admin\Documents\Arduino\libraries\Servo
Not used: C:\Users\Admin\AppData\Local\Arduino15\libraries\Servo
exit status 1
Compilation error: exit status 1
As @sterretje has already pointed out, the symptoms are typical of only downloading the AFMotor.h header file. Notice how there is no mention of compiling AFMotor.cpp anywhere in the verbose output. Or of using a cached library.