HC-SR04 Isn’t the Same as Parallax PING))) But It Can Pretend to Be!

“It’s only software!” A sentence that strikes terror in the heart of an embedded systems software developer. That sentence is often uttered when the software person finds a bug in the hardware and others assume it’s going to be easier for fix in software rather than spin a new hardware revision. No wonder software is always late.

[Clint Stevenson] is his own hardware and software guy, as are most of us. He wanted to use the less expensive HC-SR04 ultrasonic rangefinder in a prototype. Longer term he wanted to have the choice of either a Parallax PING or MaxBotix ultrasonic sensor for their better performance outdoors. His hardware hack of the SR04 made this a software problem which he also managed to solve!

[Clint] was working with the Arduino library, based on the Parallax PING, which uses a single pin for trigger and echo. The HC-SR04 uses separate pins. Originally he modified the Arduino library to accept the two pin approach. But with his long term goal in mind, he also modified the HC-SR04 sensor by removing the on-board pull-up resistor and adding a new one on the connector side to combine the signals. That gave him an SR04 that worked with the single-pin based library.

We’ve seen Parallax PING projects for sensing water depth and to generate music. These could be hacked to use the HC-SR04 using [Clint’s] techniques.

[Arduino and HC-SR04 photo from Blax Lab]

Hackaday Prize Semifinalist: Superhero Powers

The inspiration for [K.C. Lee]’s project for The Hackaday Prize didn’t come from seeing a grave injustice or inhuman suffering. He was watching Daredevil on Netflix. A show about a blind guy who fights crime in his spare time. People don’t have superhuman senses, and radioactive material falling off a truck in New York City leads to Ninja Turtles, not superheros. Still, a crude form of echolocation is well within the reach of the a capable hacker and would be very useful for those who are legally blind.

[K.C.]’s idea for human echolocation is a small wearable with ultrasonic sensors, 6DOF IMUs, and audio and haptic feedback. With a bit of math and a lot of practice, it’s possible to walk down a hallway, avoid obstacles, and find your way around without sight.

Human echolocation is a real thing, and it’s great to see a device that makes this minor human superpower a little more accessible. [K.C.] says there are 40 million people world wide that could use a device like this, and for an idea that was inspired by a superhero on TV, it’s one of the more interesting inspirations for an entry to The Hackaday Prize.


The 2015 Hackaday Prize is sponsored by:

Tiny Robot Shakes Head At You In Disapproval

If you don’t have enough things staring at you and shaking their head in frustration, [Sheerforce] has a neat project for you. It’s a small Arduino-powered robot that uses an ultrasonic distance finder to keep pointing towards the closest thing it can find. Generally, that would be you.

When it finds something, it tries to track it by constantly rotating the distance finder slightly and retesting the distance, giving the impression of constantly shaking its head at you in disappointment. This ensures that you will either unplug it or smash it with a hammer after a very short time, but you should read [Sheerforce]’s code first: it’s a great example of documenting this for experimenters who want to build something that offers more affirmations of your life choices.

Continue reading “Tiny Robot Shakes Head At You In Disapproval”

Vibrating Distance Torch Illuminates the Dark without Light

If you’ve ever had to move around in a dark room before, you know how frustrating it can be. This is especially true if you are in an unfamiliar place. [Brian] has attempted to help solve this problem by building a vibrating distance sensor that is intuitive to use.

The main circuit is rather simple. An Arduino is hooked up to both an ultrasonic distance sensor and a vibrating motor. The distance sensor uses sound to determine the distance of an object by calculating how long it takes for an emitted sound to return to the sensor. The sensor uses sounds that are above the range of human hearing, so no one in the vicinity will hear it. The Arduino then vibrates a motor quickly if the object is very close, or slowly if it is far away. The whole circuit is powered by a 9V battery.

The real trick to this project is that the entire thing is housed inside of an old flashlight. [Brian] used OpenSCAD to design a custom plastic mount. This mount replaces the flashlight lens and allows the ultrasonic sensor to be secured to the front of the flashlight. The flashlight housing makes the device very intuitive to use. You simply point the flashlight in front of you and press the button. Instead of shining a bright light, the flashlight vibrates to let you know if the way ahead is clear. This way the user can more easily navigate around in the dark without the risk of being seen or waking up people in the area.

This reminds us of project Tacit, which used two of these ultrasonic sensors mounted on a fingerless glove.

Pandaphone is a DIY Baby Toy

[Tyler] was looking for a gift for his friend’s one year old son. Searching through the shelves in the toy store, [Tyler] realized that most toys for children this age are just boxes of plastic that flash lights and make sound. Something that he should be able to make himself with relative ease. After spending a bit of time in the shop, [Tyler] came up with the Pandaphone.

The enclosure is made from a piece of 2×4 lumber. He cut that piece into three thinner pieces of wood. The top piece has two holes cut out to allow for an ultrasonic sensor to poke out. The middle piece has a cavity carved out using a band saw. This would leave room to store the electronics. The bottom piece acts as a cover to hide the insides.

The circuit uses an ATtiny85. The program watches the ultrasonic PING sensor for a change in distance. It then plays an audio tone out of a small speaker, which changes pitch based on the distance detected. The result is a pitch that is lower when your hand is close to the sensor, but higher when your hand is farther away. The case was painted with the image of a panda on the front, hence the name, “Pandaphone”. Based on the video below, it looks like the recipient is enjoying it! Continue reading “Pandaphone is a DIY Baby Toy”

An External Autofocus for DSLRs

Most modern DSLR cameras support shooting full HD video, which makes them a great cheap option for video production. However, if you’ve ever used a DSLR for video, you’ve probably ran into some limitations, including sluggish autofocus.

Sensopoda tackles this issue by adding an external autofocus to your DSLR. With the camera in manual focus mode, the device drives the focus ring on the lens. This allows for custom focus control code to be implemented on an external controller.

To focus on an object, the distance needs to be known. Sensopoda uses the HRLV-MaxSonar-EZ ultrasonic sensor for this task. An Arduino runs a control loop that implements a Kalman filter to smooth out the input. This is then used to control a stepper motor which is attached to the focus ring.

The design is interesting because it is rather universal; it can be adapted to run on pretty much any DSLR. The full writeup (PDF) gives all the details on the build.

Controlling a Quadcopter with Gestures

[grassjelly] has been hard at work building a wearable device that uses gestures to control quadcopter motion. The goal of the project is to design a controller that allows the user to intuitively control the motion of a quadcopter. Based on the demonstration video below, we’d say they hit the nail on the head. The controller runs off an Arduino Pro Mini-5v powered by two small coin cell batteries. It contains an accelerometer and an ultrasonic distance sensor.

The controller allows the quadcopter to mimic the orientation of the user’s hand. The user holds their hand out in front of them, parallel to the floor. When the hand is tilted in any direction, the quadcopter copies the motion and will tilt the same way. The amount of pitch and roll is limited by software, likely preventing the user from over-correcting and crashing the machine. The user can also raise or lower their hand to control the altitude of the copter.

[grassjelly] has made all of the code and schematics available via github.