Posts with «arduino» label

Unique Musical Instrument Defies Description

Since the first of our ancestors discovered that banging a stick on a hollow log makes a jolly sound, we hominids have been finding new and unusual ways to make music. We haven’t come close to tapping out the potential for novel instruments, but then again it’s not every day that we come across a unique instrument and a new sound, as is the case with this string-plucking robot harp.

Named “Greg’s Harp” after builder [Frank Piesik]’s friend [Gregor], this three-stringed instrument almost defies classification. It’s sort of like a harp, but different, and sort of like an electric guitar, but not quite. Each steel string has three different ways to be played: what [Frank] calls “KickUps”, which are solenoids that strike the strings; an “eBow” coil stimulator; and a small motor with plastic plectra that pluck the strings. Each creates a unique sound at the fundamental frequency of the string, while servo-controlled hoops around each string serve as a robotic fretboard to change the notes. Sound is picked up by piezo transducers, and everything is controlled by a pair of Nanos and a Teensy, which takes care of MIDI duties.

Check out the video below and see if you find the sound both familiar and completely new. We’ve been featuring unique instruments builds forever, from not-quite-violins to self-playing kalimbas to the Theremincello, but we still find this one enchanting.

Hack a Day 11 Apr 21:00
arduino  fret  guitar  harp  midi  musical hacks  nano  plectrum  pluck  servo  solenoid  string  teensy  

Seven-Segment Single-Steps Through the Time

Have you ever looked at the time, and then had to look again because it just didn’t register? This phenomenon seems more prevalent with phone timepieces, but it’s been known to happen with standard wall clocks, too. This latest offering in a stream of unusual clocks fashioned by [mircemk] solves that problem by forcing the viewer to pay attention as the time flashes by in a series of single digits, separated by a hyphen.

Inside the boxy blue base is an Arduino Nano, a DS3231 real-time clock module, and a perfboard full of transistors for switching the LED strips inside the segments. There’s an LED on the front that blinks the seconds, and honestly, we’re kind of on the fence about this part. It would be nice if it faded in and out, or was otherwise a little less distracting, but it did grow on us as we watched the demo.

We love the way this clock celebrates the seven-segment display, and only wish it were much bigger. The STLs and code are available if you want to make one, though they only cover the 7-segment part — the base is made of foam board. Check out the demo and build video after the break.

Would you rather hear the time go by in gentle chimes? Here’s chime clock that uses old hard drive actuators.

Ultrasonic Sensor Helps You Enforce Social Distancing

If you’re going outside (only for essential grocery runs, we hope) and you’re having trouble measuring the whole six feet apart from other people deal by eye, then [Guido Bonelli] has a solution for you. With a standard old HC-SR04 ultrasonic sensor, an audio module and a servo to drive a custom gauge needle he’s made a device which can warn people around you if they’re too close for comfort.

As simple as this project may sound like for anyone who has a bunch of these little Arduino-compatible modules lying around and has probably made something similar to this in their spare time, there’s one key component that gives it an extra bit of polish. [Guido] found out how intermittent the reliability of the ultrasonic sensor was and came up with a clever way to smooth out its output in order to get more accurate readings from it, using a bubble sort algorithm with a twist. Thirteen data points are collected from the sensor, then they are sorted in order to find a temporal middle point, and the three data points at the center of that sort get averaged into the final output. Maybe not necessarily something with scientific accuracy, but exactly the kind of workaround we expect around these parts!

Projects like these to help us enforce measures to slow the spread of the virus are probably a good bet to keep ourselves busy tinkering in our labs, like these sunglasses which help you remember not to touch your face. Make sure to check out this one in action after the break!

Simon Says, But With Servos

How much easier would life be if you could just grab hold of whatever mechanism you wanted to manipulate, move it like you want, and then have it imitate your movements exactly? What if you could give a servo MIDI-like commands that tell it to move to a certain location for a specific duration? Wonder no more, because [peterbiglab] has big-brained the idea into fruition.

With just one wire, an Arduino, and some really neat code, [peter] can get this servo to do whatever he wants. First he tells the Arduino the desired duration in frames per second. Then he grabs the horn and moves it around however he wants — it can even handle different speeds. The servo records and then mimics the movements just as they were made.

The whole operation is way simpler than you might think. As [peterbiglab] demonstrates in the video after the break, the servo knows its position thanks to an internal potentiometer on the motor’s rotor. If you locate the pot output pin on the control board and run a wire from there into an Arduino, you can use that information to calibrate and control the servo’s position pretty easily. There are a ton of possibilities for this kind of control. What would you do with it? Let us know in the comments.

If you want to try this with a bunch of servos at once, might as well build yourself a little testing console.

Via r/duino

Offline Dinosaur-Jumping Becomes a Real Workout

It’s great to see people are out there trying to find fun ways to exercise amid the current crisis. Although jumping up and down isn’t great for the knees, it does give decent cardio. But if you don’t have a rope or a puddle, we admit that jumping can lose its bounce pretty fast.

Quarantine has been a game-filled time for [fridaay]. Somewhere between a handful of FPS games, he decided to try to play Google’s offline dinosaur-based side scroller game by making the dinosaur spring over the saguaros whenever he physically jumps in the air. (Video, embedded below.)

Here’s how it works: [fridaay] holds a transmit circuit that consists of an Arduino UNO, an accelerometer module, and an nRF24L01 transceiver, all running on a 9 V battery. Whenever [fridaay] jumps, the accelerometer reads the change in Z and sends it to the receiving circuit, which is just another UNO and nRF. The receiving UNO is connected to a laptop and configured to press the space bar so the dinosaur canters over the cacti.

We’ve never been able to stay alive long enough in the game to see this happen, but apparently you need to crouch at some point in the game. [fridaay] has yet to implement a control for that, but we’re sure he’ll think of something. Jump past the break to see the video, and hit him up if you need the code.

If you have a lot of parts at your disposal, why not make a physical version?

Via r/duino

Making an Arduino Ventilator? Read This First

Thanks to the virus crisis, lots of people are designing makeshift ventilator designs in the hopes of saving people’s lives. Many of these are based around some sort of Arduino-powered CPU. [Armstrong Subero] things that’s a great idea, but cautions that making an electronic pair of dice is a different proposition than creating a machine to breathe for someone. But he isn’t just complaining. He talks about considerations when building a real-time and safety-critical system.

[Armstrong] has a lot of good points, although we aren’t sure you need the complexity of a real-time operating system just to squeeze a bag. If anything, that seems like it might make it more susceptible to unexpected operation. However, we agree with his comments that you should have closed-loop control to make sure the device is working, alarming when the device isn’t working, and watchdog timers to guard against lockup.

One excellent point from the post:

For example a high availability system real time system may be specified as having an up time of around 99% in a 24 hour period. Which 1% of the day is it acceptable to have the ventilator not operational? Since we have 1440 minutes in a day, which 14.4 minutes of the day should the patient not be allowed to breathe?

However, he does have some solid suggestions such as using an IDE with debugging and adhering to a coding standard such as MISRA. Of course, he also points out you might choose a different CPU that has safety-critical certifications and corresponding libraries. One suggestion is to have multiple CPUs, and this is a common enough solution in many safety-critical systems. For example, imagine 3 CPUs driving a switching circuit that requires a low logic level to turn on.

You could make the outputs go to inputs if the CPU wants to not drive the switch, or pull the output to ground if it does. Then a pull-up resistor holds the state high if no CPU pulls it to ground. All CPUs could sense the state of the line and if they don’t think it looks right they sound their own alarm. Some systems vote so that two of three CPUs must agree (at least) or, in some cases, three out of five.

We’ve been talking about ventilators quite a bit lately. The kind of mechanical design [Armstrong] is probably thinking of is like the MIT design we talked about last week.

NeoPixel Matrix Simulation Lets You Virtually Groove to the Lights

You are stuck at home quarantined and you want to do some Arduino projects. The problem is you don’t have all the cool devices you want to use. Sure, you can order them, but the stores are slow shipping things that aren’t essential these days. If you want to get a headstart while you are waiting for the postman, check out Wokwi’s Playground. For example, you can write code to drive a virtual NeoPixel 16×16 matrix. There’s even example code to get you started.

There are quite a few other choices in the playground including Charlieplexed LEDs, a keypad, and an LCD. There are also challenges. For example, in the traffic light challenge, you are given code that uses a task scheduler library to implement a traffic light. You have to add a turn signal to the code.

In addition to LEDs in various configurations, the site has some serial bus components, an LCD, a keypad, and a NeoPixel strip. There are also a few tools including an EasyEDA to KiCad converter and a way to share sourcecode similar to Pastebin.

Of course, simulations only get you so far, but the site is a fun way to play with some different I/O devices. It would be very nice if you could compose for the different components together, but you could work your code in sections, if necessary. You can do similar things with TinkerCad circuits. If you want to install software, there’s a simulator for you, too.

Hack a Day 04 Apr 21:00

Minimalist Magnetic Minute Minder Mesmerizes

Timepieces are cool no matter how simplistic or granular they are. Sometimes its nice not to know exactly what time it is down to the second, and most of the really beautiful clocks are simple as can be. If you didn’t know this was a clock, it would still be fascinating to watch the bearings race around the face.

This clock takes design cues from the Story clock, a visual revolution in counting down time which uses magnetic levitation to move a single bearing around the face exactly once over a duration of any length as set by the user. As a clock, it’s not very useful, so there’s a digital readout that still doesn’t justify the $800 price tag.

[tomatoskins] designed a DIY version that’s far more elegant. It has two ball bearings that move around the surface against hidden magnets — an hour ball and a minute ball. Inside there’s a pair of 3D-printed ring gears that are each driven by a stepper motor and controlled with an Arduino Nano and a real-time clock module. The body is made of plywood reclaimed from a bed frame, and [tomatoskins] added a walnut veneer for timeless class.

In addition to the code, STLs, and CAD files that birthed the STLs, [tomatoskins] has a juicy 3D-printing tip to offer. The gears had to be printed in interlocked pieces, but these seams can be sealed with a solution of acetone and plastic from supports and failed prints.

If you dig minimalism but think this clock is a bit too vague to read, here’s a huge digital clock made from small analog clocks.

The Wash-A-Lot-Bot is a DIY handwashing timer

With the current coronavirus situation, we’ve been encouraged to wash our hands regularly for 20 seconds – or approximately how long it takes you to hum “Happy Birthday” from beginning to end twice. That sounds easy enough, but do you really do this every time? What you need is some sort of automatic timer, perhaps with a dial gauge for easy visual reference. 

As it just so happens, Gautam Bose and Lucas Ochoa built such a device with an Arduino Uno. The aptly named Wash-A-Lot-Bot detects a person’s hands in front of it via an ultrasonic sensor, then ticks a dial timer from 0 to 20 (or rather 20 to DONE!) using a micro servo. 

This simple setup can be made with little more than scissors and tape, making it a great way to learn about Arduino and programming while you’re stuck indoors.

Arduino Blog 29 Mar 18:07
arduino  featured  uno  

Self-Playing Whistle While You Work From Home

In ridiculous times, it can help to play ridiculous instruments such as the slide whistle to keep your bristles in check. But since spittle is more than a little bit dangerous these days, it pays to come up with alternative ways to play away the days during lockdown life.

Thanks to some clever Arduino-driven automation, [Gurpreet] can maintain a safe distance from his slide whistle while interacting with it. Slide whistles need two things — air coming in from the top, and actuation at the business end. The blowing force now comes from a focused fan like the ones that cool your printed plastic as soon as the hot end extrudes it. A stepper motor moves the slide up and down using a printed rack and pinion.

Here’s a smooth touch — [Gurpreet] added a micro servo to block and unblock the sound hole with a cardboard flap to make the notes more distinct. Check out the build video after the break, which includes a music video for “My Heart Will Go On”, aka the theme from Titanic. It’s almost like the ship herself is playing it on the steam whistles from the great beyond.

Speaking of, did you hear about the effort to raise and restore the remains of her radio room?