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 learn how to use detect ultrasonic sensor to measure obstacle distance and display the result to an I2C 1602 LCD.

We will make a framework and install LCD and ultrasonic sensor on it. The LCD will displace the distance between sensor and front obstacle object.

The I2C 1602 LCD    can display two lines x 16 (total 32) characters. The characters are sent through a I2C bus port which included in Arduino and many other devices.

  1. OSOYOO UNO Board (Fully compatible with Arduino UNO rev.3) x 1
  2. OSOYOO Magic I/O Shield for Arduino x1
  3. Ultrasonic Sensor HC-SR04 x 1
  4. I2C LCD1602 x 1
  5. OSOYOO 4-Pin PNP Cable x 2
  6. USB Cable x 1
  7. PC x 1

Firstly, please plug Osoyoo Magic I/O shield into UNO board as following:

Then connect the modules to the ports of the Magic I/O shield (please move the switch on the board to 5V) with two 4-pin PNP cables as below:

I2C LCD 1602 Display – I2C

Ultrasonic Sensor – D7D8

Block building:

Step 1) If you haven’t install mBlock software in your PC, please read Lesson 1, download and install the software.
Step 2) Run the mBlock PC software by double click the lovely Panda icon.   Drag and Drop osoyoo_uno_mext file(downloaded in Step 1) to mBlock software as following:

Now you will see a new device firmware in mBlock, see following picture:

Now mBlock software and OSOYOO_UNO device firmware have been successfully installed in our PC!

Now we will show you how to use blocks to turn above idea into reality.
Step 1: Click Control, then Drag and drop Forever block to programming area as following:

Step 2: Click Events,   add when Arduino Uno starts up block to the top:

Step 3: Click Show ,   make  add a LCD prints block inside forever block, change text from “Hello World!” to “Distance:“:

Step 4: Add another  LDC print blocks  text field below Distance LCD block, then change line number from 1 to 2 :

Step 5: Click Sensor category, add a  read ultrasonic sensor  block below in LCD  block text field,
Change trig pin from 1 to 7, Change echo pin from 1 to 8,

Step 6: Click Control, then Drag and drop Wait block to programming area as following, change wait time to 0.5 second:

Step 7: Click Show ,   make  add a LCD Setting Clear screen block  below wait block:

Now we have completed the block programming.  The final blocks look like following:

 Upload the program to Arduino

1)you need click the Connect button in the bottom of the mBlock software, you will see a USB window pop up,
2) select Show  all connectable device check box , then a device drop-down menu will show up,
3) select your Arduino port from device drop-down menu
4) click Connect button to  connect your PC to Arduino

5)After you PC is connected to Arduino UNO board,  please click Upload button in the bottom of your software, then the code will be uploaded to Arduino UNO board:

Test the program:
When you turn on the power of the Arduino, LCD will show some random distance:


When you put your hand in front of the ultrasonic sensor, the LCD will display the distance of your hand to the sensor.

If you can not see any display, you might need to use a screw driver to adjust the brightness screw in the back of the LCD, see following picture: