A Line Follower + Obstacle Avoiding Robot Car Controlled by IR Remote & Mobile App
Welcome to the Arduino All-in-One Robot project!
This multipurpose robot combines line following, obstacle avoidance, and remote/mobile control into a single platform. It can be operated using:
- 🎛️ IR Remote (MP3 remote with custom button mapping)
- 📱 Android App (built with MIT App Inventor, includes Bluetooth & voice control)
This project is perfect for students, hobbyists, and robotics enthusiasts who want to explore autonomous navigation and interactive control systems.
- ✅ Line Follower Mode – Follows black/white paths using IR sensors
- ✅ Obstacle Avoidance Mode – Detects and avoids obstacles with ultrasonic sensor
- ✅ Manual Control – Operated via IR remote or Android app
- ✅ Voice Commands – Control robot with speech recognition
- ✅ Speed Control – Adjustable via mobile app slider
- ✅ DIY Friendly – Easy to assemble with common Arduino components
Component | Quantity |
---|---|
5mm Acrylic Sheet (20cm x 12cm) | 1 |
DC Gear Motor | 4 |
Arduino UNO | 1 |
IR Sensor | 2 |
L298 Motor Driver | 1 |
HC-05 Bluetooth Module | 1 |
IR Receiver Module | 1 |
MP3 Player IR Remote | 1 |
SG90 Servo Motor | 1 |
Ultrasonic Sensor HC-SR04 + Holder | 1 |
Robot Car Wheels | 4 |
Jumper Wires (M-F) | As needed |
On/Off Switch | 1 |
18650 Battery Holder (2-cell) | 1 |
18650 Li-ion Battery (3.7V) | 2 |
- Power Supply: 2 × 18650 batteries in series (7.4V)
- Microcontroller: Arduino UNO
- Motor Driver: L298N for left & right motors
- Sensors:
- IR sensors → Line following & obstacle detection
- Ultrasonic sensor → Distance measurement
- Control Modules:
- HC-05 Bluetooth → Mobile app control
- IR Receiver → Remote control
- Servo Motor: Rotates ultrasonic sensor for scanning
▲
→ Move Forward▼
→ Move Backward▶
→ Turn Right◀
→ Turn Left1
→ Obstacle Avoidance Mode2
→ Line Follower Mode3
→ Manual Mode
- Buttons: Forward, Backward, Left, Right, Stop
- Voice Commands: “Go Forward”, “Stop”, “Go Back”, “Turn Right”, “Turn Left”
- Modes: Line Following, Obstacle Avoidance, Manual
- Slider: Adjust robot speed
App Control (MIT Block) | Data Sent (1‑Byte Number) | Arduino Code Interprets As | Robot Action |
---|---|---|---|
Forward (TouchDown) | 1 |
bt_ir_data == 1 |
Move Forward |
Backward (TouchDown) | 2 |
bt_ir_data == 2 |
Move Backward |
Left (TouchDown) | 3 |
bt_ir_data == 3 |
Turn Left |
Right (TouchDown) | 4 |
bt_ir_data == 4 |
Turn Right |
Stop / Button Release (TouchUp) | 0 |
bt_ir_data == 0 → Stop |
Stop Motors |
Stop Button (optional) | 5 |
bt_ir_data == 5 |
Stop Motors |
Voice Left | 6 |
bt_ir_data == 6 |
Short Left Turn (momentary) |
Voice Right | 7 |
bt_ir_data == 7 |
Short Right Turn (momentary) |
Manual Mode | 8 |
mode = 0 |
Switch to Manual Control |
Line Follower Mode | 9 |
mode = 1 |
Enable Line Following |
Obstacle Avoid Mode | 10 |
mode = 2 |
Enable Obstacle Avoidance |
Slider (Speed Control) | 21–255 |
Speed = data |
Adjust Motor Speed (PWM) |
- Install the provided APK on your Android device
- Or import the AIA file into MIT App Inventor to customize
- Connect via Bluetooth (HC-05) → Default pairing code usually
1234
or0000
- Install Arduino IDE
- Install required library: IRremote
- Select Arduino UNO board & correct COM port
- Upload the provided
.ino
code - Power the robot and test each mode
- Calibrate IR sensors for black/white surface detection
- Test IR remote buttons for movement & mode switching
- Verify Bluetooth connection with mobile app
- Test voice commands and speed control
- Understanding of autonomous navigation
- Integration of sensors, actuators, and wireless modules
- Hands-on experience with Arduino programming
- Exposure to MIT App Inventor mobile app development
The ALL_IN_ONE_ARDUINO_ROBOT is a complete robotics project that blends hardware, software, and mobile interaction. Whether you’re a beginner or an advanced maker, this project offers a fun, educational, and practical way to explore robotics.
This project is licensed under the Apache License 2.0 – see the LICENSE file for details.