Connect multiple HC-SR04 ultrasonic range sensors to an Arduino with I2C bus and one pinDesigned by Red Hunter in United States of America
Now in FeatherWing form factor, this can still be used as a wired-in module for any AVR based Arduino. NOTICE 3/25/2021: Apparently not compatible with SAMD21 based Arduinos - output is flaky on thes…Read More…
Now in FeatherWing form factor, this can still be used as a wired-in module for any AVR based Arduino.
This module - and the associated library - allow you to connect eight HC-SR04 ultrasonic range sensors to an Arduino using the I2C bus and one hardware interrupt pin. I used to sell a 16 sensor version - the OctoSonarX2.
I wanted more sensors on my robot to help it navigate. I'm too cheap to buy a mega board with enough pins or smarter sensors that need less pins.
The library handles all the timing, and the hardware interrupts provide surprisingly high accuracy. Each unit is individually tested using an Arduino test-bed and ships with separate pin headers.
If you are using a Feather board, solder on your preferred FeatherWing headers (not included) and plug the OctoSonar into your Feather board as you would any other Wing.
Note the following:
The OctoSonar is an I2C bus device and you will connect it to the I2C bus on your controller. Please refer to your controller documentation for which pin is which on your controller. In addition you will need to connect one hardware interrupt pin and possibly an additional power connection.
Each sensor connects with 4 wires marked V, T, E and G for Voltage, Trigger, Echo and Ground. Sensors can be connected individually using 4-pin cables connected to the vertical columns of 4 pins numbered 0 thru 7 at the right of the board.
If you are mounting the sensors on my Trimount brackets, each Trimount can support 3 sensors with only two cables by sharing the V and G connections. To do this solder two 4 pin headers horizontally in the locations marked out in white. Wire two 4-pin cables to the matching locations on the Trimount bracket. This leaves one sensor location free in in the header block - you can connect another sensor there as before.
Note that the code library that I support is only for the Arduino environment. While electronically compatible with Raspberry Pi, this product is not supported in software yet. Feel free to help at https://github.com/arielnh56/SonarI2C-RPi. The code at this location is primarily a customer contribution - I am unable to provide support.
Use the OctoSonar library, not the SonarI2C library
I am stocking some of the sensors and cables too, so you can get them at the same time. These are batch tested to verify that they are not the type with the echo-lock problem. See this thread on the Arduino forum
Base package includes the module and 40 header pins
Robot pack includes:
Note that the picture pre-dates the creation of the trimount brackets. They look a lot better than the bent aluminum and sticky pads shown.
The video below describes the operation of the board. It shows the earlier 2.1 version board which has all the same components just arranged differently, and does not have the FeatherWing reset pin.
No country selected, please select your country to see shipping options.
No rates are available for shipping to .
Enter your email address if you'd like to be notified when Octosonar - connect 8 x HC-SR04 to Arduino can be shipped to you:
Thanks! We'll let you know when the seller adds shipping rates for your country.
International shipments include customs form, filled out correctly as merchandise with true sale value. Buyer may be charged customs duty and other fees by their postal service prior to delivery. These fees will vary by country and are the buyer's responsibility to research prior to purchase.
Jonas | April 14, 2021
Robert | Nov. 2, 2018
John | Sept. 5, 2018
Julien | March 26, 2018
Jim | Jan. 25, 2018
Michał | Nov. 24, 2017
Roger | Oct. 16, 2017
We recognize our top users by making them a Tindarian. Tindarians have access to secret & unreleased features.
We look for the most active & best members of the Tindie community, and invite them to join. There isn't a selection process or form to fill out. The only way to become a Tindarian is by being a nice & active member of the Tindie community!