Note: ALL OSOYOO Products for Arduino are Third Party Board which is fully compatitable with Arduino

Authorized Online Retailers

Buy from US Buy from UK Buy from DE Buy from IT Buy from FR Buy from ES Buy from JP



In this lesson, we will add a servo motor, an ultrasonic module and a buzzer onto Lesson 1 framework. With these new devices, the car can “see” obstacle through ultrasonic sensor and measure the distance. If the distance is less than predefined threshold value, the buzzer will beep and the car will turn around from the obstacle automatically.

You must complete lesson 1 (assembling the car) before you continue on with this lesson.

Parts and Devices

Hardware Installation

Step 1: Install the smart car basic frame work as per Smart Car Lesson 1 .If you have already completed installation in Lesson 1 , Everything keep it as is except move ENA from D9 to D3(we need D9 for Servo control).

Step 2: Remove screws on copper pillars and install servo motor at the front of upper car chassis with 2pcs M2.2*8 Self Tapping Screws

Step 3:Install bracket (from servo motor package) on mount holder for Ultrasonic Module with 2pcs M1.5*4 Self Tapping Screws. (If you get mount holder which looks like cat’s head shape, please skip this step)

Step 4: Install Ultrasonic Module to mount holder with 4pcs M1.4*8 screw and M1.4 nuts

Step 5: Install mount holder for Ultrasonic Module on servo motor with M2*4 Self Tapping screw (Please note: please upload code to adjust servo motor direction before fixing this screw)

Step 6: Install Buzzer module at the back of upper chassis with 1pc M2.5 plastic screw, M2.5 plastic pillar and M2.5 plastic nut

Step 7: Connect SG90 servo motor, OSOYOO MODEL X motor driver module and OSOYOO basic board as following graph

Step 8: Connect ultrasonic module with OSOYOO basic board as below connection diagram

Step 9: Connect Buzzer module with OSOYOO basic board as below connection diagram

Step 10: Fix the screws on copper pillars to connect upper chassis to lower chassis.

Software Installation:

Open-source Arduin
Download Arduin IDE here:
7 zip is a free zip
utility that un-zips zip files
Download 7zip here for free

Step 1: Install latest Arduin IDE (If you have Arduin IDE version after 1.1.16, please skip this step). Download Arduin IDE from , then install the software.

Step 2:Download sample code from , unzip the download zip file, you will see a folder called v2smartcar-lesson5 .

Step 3: Connect OSOYOO Basic board to PC with USB cable, Open Arduin IDE -> click file -> click Open -> choose code “v2smartcar-lesson5.ino” in smartcar-lesson5 folder, load the code into arduin. (Notice: Shut off your battery or Unplug your power adapter when upload sketch code to Arduin.)

Step 4: Choose corresponding board/port for your project,upload the sketch to the board.

Step 5:Ultrasonic sensor servo initial direction alignment(See above video from 7:02 to 7:35)

After turning on the battery, you will hear a long beep sound, then the servo will make some movement and finally stops at a direction for 5 seconds.

During this first 5 seconds, you must make sure the Ultrasonic sensor(two eyes) is facing straight forward.

If it is not straight forward, you should turn off battery immediately and remove the sensor from servo, reinstall it and make it facing straight forward direction as following picture. Otherwise the obstacle avoidance program will not work properly.

After adjusting sensor direction, turn on battery again. After hearing the long beep, the sensor should face front same as following picture. If its direction is not straight forward, turn off battery and do direction alignment again.

Final Testing :

After Turning on the battery switch on the battery box, if the ultrasonic module turn to front view position, that means you no need adjust sensor position anymore. Just wait 5 seconds. If no obstacle is detected, the car will go forward. If any obstacles is detected, the car will stop, the ultrasonic module will turn from right to left to detect surrounding obstacle. The robot car will decide to make left turn, right turn or backward according to obstacle sensor data and our obstacle avoidance algorithm.

Sometimes your car might have collision and make your Ultrasonic sensor position change, you must remember to do sensor direction alignment again as per link Ultrasonic sensor servo initial direction alignment

Trouble Shooting

Is there an easy way to align my Ultrasonic sensor to make it facing front?
Step 1) Download

Step 2) Unzip above file and run the servo.ino file in your car.
Your servo will move from left to right and finally stop to center position. If your ultrason sensor is not facing to front direction. Please release your ultrasonic sensor from servo head, re-position its direction to front , then fasten the sensor screw to fix its direction.  See video from 7:05 to 7:30

Step 3) After you have changed the sensor direction, please run v2smartcar-lesson5.ino sketch again. Your car will begin to do obstacle avoidance driving.