Small Logo ×

Connect a Raspberry Pi Zero with an USB Ultrasonic Sensor

MaxBotix USB ultrasonic sensors make your Raspberry Pi Projects even easier.

This tutorial teaches you how to connect a Raspberry Pi Zero, as well as the other members of R Pi family, with an ultrasonic sensor to read data off the USB port. You may want to check out our tutorial on Raspberry Pi TTL Tutorial to connect your Raspberry Pi Zero over the serial port and how to use an ultrasonic sensor with a Raspberry Pi.

The Raspberry Pi family of products opens the world of coding up to all ages with their easy interface and budget friendly pricing. The Raspberry Pi is a single-board computer small enough to fit in your wallet, and the Raspberry Pi Zero is even smaller. These computers can do most anything a standard PC can from writing up documents to sending emails or playing games. For more information to learn more about the Raspberry Pi Zero, visit the following links: Getting Started with Raspberry Pi Zero and Raspberry Pi Zero: What you need to know.


Raspberry Pi Zero: Review & Setup


Ultrasonic sensors can easily be connected to the Raspberry Pi via the serial port or by USB. An ultrasonic sensor will give you valuable range data in your application that can be used for object detection, navigation, level detection, and a host of other possibilities. As ultrasonic sensors use sound, they can be used in a number of applications where the temperature or visual characteristics of an object hinder or may hinder IR or laser based ultrasonic sensors. For more information on Raspberry Pi and Raspberry Pi projects, check out MaxBotix’s Raspberry Pi Projects section where you’ll find exclusive information for the Raspberry Pi.

Raspberry Pi USB Ultrasonic Sensor Integration Key Takeaways

  • USB ultrasonic sensors easily integrate with the R Pi needing only a terminal program.
  • The setup of a USB Rangefinder requires no soldering, only a USB cable.
  • The Raspberry Pi is a convenient and affordable way to read USB ultrasonic sensor range data.


Raspberry Pi Zero USB Sensor

MaxBotix sells a number of USB ultrasonic sensors which can directly connect to the Raspberry Pi. This tutorial will teach you how to interface a Raspberry Pi with an USB ultrasonic sensor.For the safety of the electronics, please use an ESD strap when working around components. Static discharge could damage components of the Raspberry Pi as well as the USB Ultrasonic Sensor Raspberry.

USB Ultrasonic Sensor Raspberry Pi Equipment List

  • Raspberry Pi with Operating System.
  • USB Ultrasonic Sensor.
  • A micro USB to USB cable.
  • ESD strap.
  • USB OTG Host Cable – MicroB OTG male to A female (for Raspberry Pi Zero).
  • Powered USB hub (optional).

Directly Compatible USB Ultrasonic Sensors

Getting Started

raspberry pi zero usb ultrasonic sensorYou will need to install an operating system if this is the first time using your Raspberry Pi. This article was tested on the R Pi 2 and 3 using the Raspbian Jessie operating system (downloaded on 10/6/2016). An additional cable is needed for the Raspberry Pi Zero to connect to the USB OTG port.

Step One: Connect the USB Ultrasonic Sensor

To connect a MaxBotix USB ultrasonic sensor to the Raspberry Pi, you will need to connect the micro USB end of the cable into the USB ultrasonic sensor and the standard USB end into the Raspberry PI. The Raspberry Pi Zero does not have a standard USB A port to connect an ultrasonic sensor. To connect your USB ultrasonic sensor to the Raspberry Pi Zero, you will need a USB OTG Host Cable – MicroB OTG male to A female style cable. If connecting multiple ultrasonic sensors via USB, it is recommended to use a powered USB hub to ease the current draw from the Raspberry Pi.

Raspberry Pi Zero USB Hub

Optional Step: Download a Python Script

This is optional, but you may wish to write or download a Python Script to log and store the data you collect with your ultrasonic sensor.

Here is a sample python script.

Installing Terminal Software to Read the Sensor

Regardless of whether you’re using the Raspberry Pi Zero or the Raspberry Pi 3, the recommended software for accessing the range data output is Minicom. Please use the following steps to install Minicom.

Open LXTerminal
Download Minicom with the following command

sudo apt‑get install minicom

This will install the Minicom software that is used for reading the serial port.

Accessing USB Ultrasonic Sensor Range Data Output

Minicom is the recommended terminal software for Raspbian Jessie operating system. When only one ultrasonic sensor is connected it should be found on ttyUSB0. The USB serial port on the Raspberry Pi will enumerate in the following way: /dev/ttyUSB0, /dev/ttyUSB1, /dev/ttyUSB2, and so on. This will depend on how many devices you connect.

When connecting multiple ultrasonic sensors, they will enumerate in the order they were connected. They will maintain their address until the Raspberry Pi is shut down. Upon repowering, they will enumerate in a default order format. This new enumeration should not change even with restarting the Raspberry Pi unless you physically disconnect or reorder the ultrasonic sensors.

Please use the steps below to access Minicom and read the range data.

Open LXTerminal Open Minicom with the following command (use the correct ttyUSB address for the ultrasonic sensor you wish to read)

minicom -b 57600 -o -D /dev/ttyUSB0

This clears the LXTerminal window and you will see a window that looks similar to the image below.

Minicom for Raspberry Pi Zero

The number following the ASCII character is the range reading that is output by the ultrasonic sensor. If the readout says R0764, like the image above, the range to the target is 764mm. As the target gets further away from the ultrasonic sensor, the reported range will increase. If no target is detectable, the target will report maximum range.

Adding a Webcam

If you want to actually see what you are sensing, you can additionally install a USB webcam to your Raspberry Pi too. Before purchasing a webcam to use with your Raspberry Pi, verify that the webcam is supported by Ubuntu.

For applications where you only need to take still pictures, fswebcam is an excellent light application with a number of settings to help you get the most out of your camera. Do note that fswebcam does not have a graphic interface, so you have to run it through LXTerminal. You can install fswebcam by doing the following.

Open LXTerminal
Download fswebcam with the following command.

sudo apt-get install fswebcam

Applications where a true video stream is required or applications that prefer a true graphic interface may prefer to use cheese. Cheese is a popular application for taking both still pictures and video through a GUI interface. You can install cheese by doing the following.

Open LXTerminal
Download cheese with the following command.

sudo apt-get install cheese

Please visit the Raspberry Pi and/or Ubuntu forums for additional webcam support.

Final Notes & Outcome

Using an ultrasonic sensor with a Raspberry Pi allows for inexpensive height measurement, navigation, and countless other applications that require distance measurement. If you have any applications or code that can be added to this article, or if you would like to share pictures of your setup with us so we can share with others please email [email protected].


Products Related to the Article

HRUSB-MaxSonar-EZ Products

HRUSB-MaxSonar-EZ Products

The USB‑ProxSonar‑EZ1 has a detection zone of ~5 feet and will allow for 8+ simultaneous sensors…

Buy Now

MB1424 USB-ProxSonar-EZ2

The USB-ProxSonar-EZ2 has a detection zone of ~3 feet and will allow for 10+ simultaneous sensors….

Buy Now

MB1434 USB-ProxSonar-EZ3

MB1434 USB-ProxSonar-EZ3

The USB‑ProxSonar‑EZ3 has a detection zone of ~2 feet and will allow for 13+ simultaneous sensors….

Buy Now