Solving IoT Problems with Node.js for Hardware

Tod Kurt knows a thing or two about IoT devices. As the creator of blink(1), he’s shipped over 30,000 units that are now out in the wild and in use for custom signaling on everything from compile status to those emotionally important social media indicators. His talk at the 2016 Hackaday SuperConference covers the last mile that bridges your Internet of Things devices with its intended use. This is where IoT actually happens, and of course where it usually goes astray.

Continue reading “Solving IoT Problems with Node.js for Hardware”

Amazon Dash Reboots Your Pi

We all know feature creep can be a problem in almost any project. A simple idea can often become unusable if a project’s scope isn’t clearly defined in the beginning. However, the opposite problem sometimes presents itself: forgetting to include a key feature. [Zach] had this problem when he built a Raspberry Pi magic mirror and forgot to build a physical reset/shutoff switch. Luckily he had a spare Amazon Dash button and re-purposed it for use with his Pi.

The Raspberry Pi doesn’t include its own on/off switch. Without installing one yourself, the only way to turn off the device (without access to the terminal) is to unplug it, which can easily corrupt data on the SD card. Since [Zach]’s mirror was already complete, he didn’t want to take the entire thing apart just to install a button. There’s already a whole host of applications for the Dash button, so with a little Node.js work on the Raspberry Pi he was able to configure a remote-reset button for his mirror.

This is a similar problem for most Raspberry Pi owners, so if you want to follow [Zach]’s work he has done a great job detailing his process on his project site. If you’re looking for other uses for these convenient network-enabled buttons, he also links to a Github site with lots of other projects. This pizza button is probably our favorite, though.

Boombox Doorjam Plays Your Theme Song When You Step in the Ring

Although many of us may have had childhood aspirations to be a famous wrestler in the WWE, not very many of us will ever realize those dreams. You can get close, though, if you have your own epic intro music theme that plays anytime you walk into a room. Although it’s not quite the same as entering a wrestling ring, [Matt]’s latest project will have you feeling just as good whenever you enter a room to your own theme song.

The core of the build consists of a boom box with an auxiliary input. The boom box is fed sound via a Raspberry Pi which also serves as the control center for the rest of the project. It runs Node.js and receives commands via websockets from a publicly accessible control server. The Pi is also running Spotify which allows a user to select a theme song, and whenever that user’s iBeacon is within range, the Pi will play that theme song over the stereo.

The project looks like it would be easy to adapt to any other stereo if you’re looking to build your own. Most of the instructions and code you’ll need are available on the project’s website, too. And, if you’re a fan of music playing whenever you open a door of some sort, this unique project is clearly the gold standard. It might even make Stone Cold Steve Austin jealous.

Bacon Beacon

The device featured here is quite simple, but it’s well executed and involves bacon, so what’s not to like!

They take their bacon sandwiches seriously in Dundee. And let us tell you, in Scotland they make good bacon! At the co-working space where [Grant Richmond] works, people were missing out on the chance to order when someone went to the bacon sandwich emporium for a refill.

His solution was the Bacon Beacon, a nicely lasercut box with a series of buttons on top connected to a Particle Photon microcontroller. Press a button, and a node.js web app is called on a server, which in turn sends notifications to the “Fleeple”, the inhabitants of the Fleet Collective co-working space. They can then reply with the details of their order, such as their desired sauce.

The work of sending the notifications is done through Pushbullet, but the code for [Grant]’s side of things can all be found on his GitHub repository. The whole thing was put together in Dundee MakerSpace.

We have something of an affinity for bacon and cured meat products here at Hackaday, we’ve featured more than one bacon-related exploit. The Rabbit Hole hackerspace’s “Push button, receive bacon” cooking system using a laser printer fusing roller for example, an alarm clock that cooks your tasty treat, or a full cooked breakfast using workshop tools.

Please keep them coming, and resolve to make space for a bacon-related hack this year. We promise, it won’t be one of your rasher decisions.

The Most Immersive Pinball Machine: Project Supernova

Over at [Truthlabs], a 30 year old pinball machine was diagnosed with a major flaw in its game design: It could only entertain one person at a time. [Dan] and his colleagues set out to change this, transforming the ol’ pinball legend “Firepower” into a spectacular, immersive gaming experience worthy of the 21st century.

A major limitation they wanted to overcome was screen size. A projector mounted to the ceiling should turn the entire wall behind the machine into a massive 15-foot playfield for anyone in the room to enjoy.


With so much space to fill, the team assembled a visual concept tailored to blend seamlessly with the original storyline of the arcade classic, studying the machine’s artwork and digging deep into the sci-fi archives. They then translated their ideas into 3D graphics utilizing Cinema4D and WebGL along with the usual designer’s toolbox. Lasers and explosions were added, ready to be triggered by game interactions on the machine.


To hook the augmentation into the pinball machine’s own game progress, they elaborated an elegant solution, incorporating OpenCV and OCR, to read all five of the machine’s 7 segment displays from a single webcam. An Arduino inside the machine taps into the numerous mechanical switches and indicator lamps, keeping a Node.js server updated about pressed buttons, hits, the “Lange Change” and plunged balls.

The result is the impressive demonstration of both passion and skill you can see in the video below. We really like the custom shader effects. How could we ever play pinball without them?

Continue reading “The Most Immersive Pinball Machine: Project Supernova”

See Who’s Calling with Caller Pi-D

One of the hardest things in life is watching your parents grow old. As their senses fail, the simplest things become difficult or even impossible for them to do.

[kjepper]’s mom is slowly losing her sight. As a result, it’s hard for her to see things like the readout on the caller ID. Sure, there are plenty of units and phones she could get that have text-to-speech capabilities, but the audio on those things is usually pretty garbled. And yes, a smartphone can natively display a picture of the person calling, but [kjepper]’s mom isn’t technologically savvy and doesn’t need everything else that comes with a smartphone. What she needs is a really simple interface which makes it clear who’s calling.

Initially, [kjepper] tried to capture the caller ID data using only a USB modem. But for whatever reason, it didn’t work until he added an FSKDTMF converter between the modem and the Pi. He wrote some Node.js in order to communicate with the Pi and send the information to the screen, which can display up to four calls at once.  To make a mom-friendly interface, he stripped an old optical mouse down to the scroll wheel and encased it in wood. Mom can spin the wheel to wake the system up from standby, and click it to mark the calls as read. Now whenever Aunt Judy calls the landline, it’s immediately obvious that it’s her and not some telemarketer.

[via r/DIY]

Combining Musical Hatred with Target Practice

Not everyone can agree on what good music is, but in some cases you’ll find that just about everyone can agree on what is awful. That’s what the people over at Neo-Pangea discovered when they were listening to Internet radio. When one of those terrible songs hits their collective eardrums, the group’s rage increases and they just need to skip the track.

This is how Engineers act if the song is super-awful
This is how Engineers act if the song is super-awful

Rather than use a web app or simple push button to do the trick, they turned the “skip” button into a NERF target. They call their creation the Boom Box Blaster and made a fantastic demo film video about it which is found after the break.

Inspired by a painting in the office, the target takes the form of a small hot air balloon. The target obviously needed some kind of sensor that can detect when it is hit by a NERF dart. The group tried several different sensor types, but eventually settled on a medium vibration sensor. This sensor is connected to an Arduino, which then communicates with a Raspberry Pi over a Serial connection. The Pi uses a Python script to monitor the Arduino’s vibration sensor. The system also includes some orange LEDs to simulate flames and a servo attached to the string which suspends the balloon from the ceiling. Whenever a hit is registered, the flames light up and the balloon raises into the air to indicate that the shot was on target.

Continue reading “Combining Musical Hatred with Target Practice”