Touch Piano Hits All the Right Notes

We love a good musical build, and this one is no exception. For their ECE4760 final project, [Wendian Jiang], [Hanchen Jin], and [Lin Wang] of Cornell built the nicest-looking touch piano we’ve seen in a while. It has five 4051 multiplexers that take input from 37 capacitive touch keys fashioned from aluminium foil and copper tape. Thanks to good debounce code, the sounds are clean even though the keyboard is capable of four-note polyphony.

A PIC32 and a Charge Time Measurement Unit (CTMU) module generate a small, steady current that charges up the keys. The PIC scans the pins continuously waiting for touch input. When human capacitance is detected, the value is compared with the base capacitance using the ADC and the sound is generated with the Karplus-Strong algorithm.

The group’s original plans for the project included a TFT screen to show the notes on a staff as they are played. While that would have been awesome, there was just too much going on already to be able to accurately capture the notes as well as their duration. Check it out after the break.

Continue reading “Touch Piano Hits All the Right Notes”

Reading Smart Cards from a PLC (with a Little Arduino Help)

If you’ve spent any time on a factory or plant floor, it is a good bet you’ve run into PLCs (Programmable Logic Controllers). These are rugged computers that do simple control and monitoring functions, usually using ladder logic to set their programs. [plc4u] wanted to connect a smart card reader to an Allen Bradley PLC, so he turned to an Arduino to act as a go-between.

The Arduino talks to a USB card reader using a USB host shield. Then it communicates with the PLC using an RS232 link and the DF1 protocol that most Allen Bradley PLCs understand. You may not need a smart card, but once you know how to communicate between an Arduino and the PLC, you could do many different projects that leverage other I/O devices and code available on the Arduino and connects to existing PLC installations. Just remember that you’ll probably need to ruggedize the Arduino a bit to survive and be safe to the same level as a PLC (which might include a NEMA enclosure or even an explosion-proof box).

Continue reading “Reading Smart Cards from a PLC (with a Little Arduino Help)”

Immersive Theatre via iBeacons with Dustin Freeman

Combining backgrounds in math and theater, [Dustin Freeman] works on immersive, interactive theatrical experiences. During the day [Dustin] is a Spatial Interaction Engineer at Occipital, who makes the Structure Sensor. In his spare time [Dustin] works on digital theatre projects that bring the theatre goer far past the traditional row of seats.

The concept of immersive theatre is similar to ‘escape the room’ challenges and choose your own adventure experiences, in that the participants control the outcome of the experience by making decisions from the information supplied to them. [Dustin] explains in his talk that the feeling of trying to beat the clock that exists in escape the room challenges is not helpful in Floodlight’s The Painting. Floodlight is a theatre production company and The Painting is the immersive theatre experience put together by [Joshua Marx], professor of acting at San Jose State and [Dustin Freeman] who presented this 2015 Hackaday SuperConference talk.

Continue reading “Immersive Theatre via iBeacons with Dustin Freeman”

MIT Robots Fight with Lightsabers

Students of the MIT Robotics Lab decided to have some fun this holiday season with the big release of Star Wars. They built a lightsaber wielding delta-bot, and some very interesting hip-mounted lightsaber robot arms, akin to General Grievous.

First up in the video though is their Jedi Training robot, which is a variation of the delta-bot robot we’re all familiar with thanks to 3D printers. With a lightsaber mounted on top, it’s not too fast, but has a large range of motion to allow you to practice your lightsaber form. They call it the Triple Scissor Extender — and as you can imagine, it was built for something completely different. You can check out the designer’s personal blog here, though he doesn’t have any info on this particular project — yet.

Second is a robot they designed for a project called Supernumerary Robotic Limbs (SRL), which is literally designed to give you extra robotic arms — it was the next logical step to give them lightsabers…

Continue reading “MIT Robots Fight with Lightsabers”

Hacklet 89 – Star Wars Projects

Star Wars is an inspirational force to be reckoned with. Few movie franchises have quite so many fans creating everything from elaborate cosplay outfits to fully functional robots. At the 2015 Hackaday SuperCon, former R2D2 driver Grant Imahara mentioned that LucasArts used to maintain a fleet of robots to be deployed at events. Once the execs realized hacker, maker, and hobbyist robots are now more advanced than the machines they built for the actual films, they mothballed the fleet. If you see R2 at a Star Wars event this season, it’s probably an enthusiast behind the controls. This week’s Hacklet is dedicated to the best Star Wars projects on Hackaday.io!

targetshootWe start with [Nathan Gray] and Star Wars Nerf Targets. [Nathan] needed a Star Wars themed game for an event for the kids, and he needed it fast. [Nathan] built a Nerf shooting gallery game with a Star Wars twist. The idea is to shoot the bad guys with Nerf darts. Targets have two sides, so you never can be sure if you’ll see a storm trooper or a friendly Wookie. Hits are detected by piezoelectric disks on each target. A control panel starts the game, keeps score, and plays some great sound effects. An Arduino compatible Teensy 2.0 keeps everything running smoothly. [Nathan] reports that the game was a hit with the kids, and everyone else at the party. Even Grandma had to give the Star Wars Nerf Targets game a try!

 

vaporatorNext up is Hackaday’s own [Brian Benchoff] with The Hackaday Prize Moisture Vaporator. The 2015 Hackaday Prize promo video called for something space related. Since Southern California has plenty of desert around, a moisture vaporator straight out of Tatooine was just what the doctor ordered. [Brian], [Matt], [Rich] and [Alek] handled most of the construction at the Hackaday Hackerspace in Pasadena. Final assembly was a team effort out in the field. The basic frame of the vaporator consisted of 1 x 3 lumber joined with pocket screws. An iron pipe served as the spine. [Brian] added plenty of greebles to give the vaporator just the right look. The result makes us long for a trip to Toshi Station to pick up some power converters.

life-signs[Davedarko] is up next with Towani Lifesign Wristdevice – Star Wars Ewoks. This was one of [Dave’s] earliest projects on Hackday.io, way down at project #616. He originally built it for the Sci-Fi contest we held in 2014. The Towani family was in the Ewoks movies, which were lesser known spinoffs of the original Star Wars films. The wristbands showing the family’s vitals were featured a few times in the movies. [Dave’s] version is more than a movie prop, it actually works. He’s using an open hardware pulse sensor along with an Arduino Mini to display status on a trio of LEDs.

bb8Finally, we have [Enrico] with Our own BB-8 droid. BB-8 made a splash when he rolled out on stage during Star Wars Celebration. Everyone wondered how the original was done. We’ve since found out that the BB-8 uses Sphero’s technology to get around. However, many of the movie scenes were done with good old-fashioned puppeteer work. [Enrico] is building his own version of BB-8 using holonomic wheels inside the sphere, with a magnetically attached head. He’s planning to 3D print the major parts of his droid. So far, [Enrico] has started testing with magnets. A few printed plastic parts from his R2D2 build have been standing in for the BB-8 shell.

If you want to see more Star Wars projects, check out our new Star Wars project list! If I missed your project due to a great disturbance in the force, don’t be a nerf herder! Just drop me a message on Hackaday.io. That’s it for this week’s Hacklet. As always, see you next week. Same hack time, same hack channel, bringing you the best of Hackaday.io! May the force be with you.

Code Craft – Embedding C++: Templates

The language C++ is big. There is no doubting that. One reason C++ is big is to allow flexibility in the technique used to solve a problem. If you have a really small system you can stick to procedural code encapsulated by classes. A project with a number of similar but slightly different entities might be best addressed through inheritance and polymorphism.

A third technique is using generics, which are implemented in C++ using templates. Templates have some similarities with #define macros but they are a great deal safer. The compiler does not see the code inserted by a macro until after it has been inserted into the source. If the code is bad the error messages can be very confusing since all the developer sees is the macro name. A template is checked for basic syntax errors by the compiler when it is first seen, and again later when the code is instantiated. That first step eliminates a lot of confusion since error messages appear at the location of the problem.

Continue reading “Code Craft – Embedding C++: Templates”

Bouncing Radio Off of Airplanes

Amateur radio operators are always trying some new stunt or other. It’s like they’ve got something to prove. Take Aircraft scatter for instance: the idea is to extend your radio’s range by bouncing it directionally off of overhead airplanes.

Radio signals travel in straight lines, which is a bummer because the Earth (despite what you’ve heard) is round. Inevitably, if you want to talk to someone far enough away, they’re over a hill. We’ve covered various oddball propagation methods recently, so if you don’t know about moonbounce, you’ve got some background reading to do. But airplane scatter was new to us.

Actually pulling it off requires knowing where the airplanes are, of course. To do so, you could simply look up the aircraft in your target area on the web, using something like FlightRadar24, but where’s the fun in that? There’s also the possibility of tracking local aircraft yourself using RTL-SDR if you’re feeling hard core.

The rest is just details. Hams [Rex Moncur (VK7MO)] and [David Smith (VK3HZ)], for instance, got 10 GHz signals to skip off airplanes over 842 km (PDF). If you’re an old-school ham operator, you’re double-checking the “gigahertz”, but it’s not a mistake. It’s tremendously impressive that these guys got a link over such a long distance using only 10 watts — but note that they’re doing it with highly directive dishes, and telescopes to aim them.

Not to discourage you from trying this at home, but there are all sorts of difficulties that you’ll encounter when you do. Airplanes moving perpendicular to the path between sender and receiver will Doppler-shift the signal, and there’s still quite a chunk of atmosphere to get the signal through. Finally, although airplanes look pretty big when they’re on the ground, they’re actually tiny when they’re up in the sky at 35,000 ft and 500 miles away; you’re bouncing your signal off of a small target.

The good news? People like [W3SZ] are sharing their well-documented results, and at least it’s 20dB easier than bouncing signals off the moon!

Thanks [Martin] for the tip!