An article using the HC-SR04 ultrasonic sensor to detect multiple objects at various distances shows a modification to the board of attaching a lead from a pin on one of the ICs on the board calling the data "Raw Echo".
The article is https://create.arduino.cc/projecthub/mircemk/ultrasonic-radar-can-detect-multiple-objects-at-each-ping-7a0f26 which the author says comes from this article https://arduinoplus.ru/arduino-radar/ which my browser can translate into English. The Russian article has the same board modification.
This modification is the same for HC-SR04 and HY-SRF05 ultrasonic sensors and allows multiple echo signals to be detected. If you have an HC-SR04, the integral circuit to which you solder the wire is designated U2.
The image of the board modification is:
A similar modification is done in this lab for multiple object detection using the HC-SR04 https://www.instructables.com/Enhanced-Ultrasonic-Range-Finder/
I would like to understand what this specific IC is and what this pin, which seems to be an output pin from the IC, is doing.
My hunch is that the pin is used on the board to see echoes and some kind of comparator circuit is used so that once the first echo is seen, the board considers job done and the output of the board Echo lead is dropped indicating echo found. Any other echoes that are indicated by the IC pin are ignored. When a Trigger is done on the Trigger pin of the board, the comparator circuit is reset for a new echo detection.
So using the IC Raw Echo pin allows the detection of multiple echoes from a single ultrasonic pulse.
I have found a couple of articles that describe the electronics of the HC-SR04 to some extent including a schematic however I can't understand the schematic versus the physical board.
- https://uglyduck.vajn.icu/ep/archive/2014/01/Making_a_better_HC_SR04_Echo_Locator.html
- https://www.electroschematics.com/an-ultrasonic-shortcut-getting-the-hc-sr04-transducer-up-and-running-fast/
- https://www.davidpilling.com/wiki/index.php/HCSR04
- http://www.pcserviceselectronics.co.uk/arduino/Ultrasonic/electronics.php
Several questions about this general topic have been asked:
- Sonar HC-SR04 analog output. Multipoint Sonar Radar
- Functional block digram of a HC-SR04?
- Can anyone identify the microcontroller on an HC-SR04
And this question, which was closed due to lack of clarity, seems to be similar to my question: Analog Signal HC SR04
digitalRead()
in the Arduino source code being used. However I'm not sure which is why I used the phrase "seems to be". \$\endgroup\$