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.

pinnball-ocr-comp

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”

Tweet-Powered Bat Removes Effort Required To Obtain Pinata Contents

A child filled game-launch event was happening in London and [Roo] was asked to use his serious making skills to construct a machine that would hit a pinata with a baseball bat. This is a great idea, well, because giving bats to a bunch of kids at a populated event probably wouldn’t end well. One of the characters from the game Skylanders is named ‘Painyatta‘ and that is whom the pinata is modeled after. Tweeting #HitPainyatta initiates a bat swing. The swing tweeter gets to keep any treats that happen to fall out.

The physical machine is pretty simple. Most of it is made of MDF and wood. A large base supports a tall, skinny box. Mounted on top is a large stepper motor with a long wooden arm holding an aluminum bat. Once a tweet came in, a moderator would check for offensive content (hey, there are kids around) using a custom Twitter API app, and if acceptable, the tweet would be displayed on an LED matrix while an Arduino controlled a stepper driver to spin the motor and swing the bat.

…no children were harmed in the making of this project…

Continue reading “Tweet-Powered Bat Removes Effort Required To Obtain Pinata Contents”

Hacking Oklahoma State University’s Student ID Cards

[Sam] took an information security class at Oklahoma State University back in 2013. For his final project, he and a team of other students had to find a security vulnerability and then devise a theoretical plan to exploit it. [Sam’s] team decided to focus on the school’s ID cards. OSU’s ID cards are very similar to credit cards. They are the same size and shape, they have data encoded on a magnetic strip, and they have a 16 digit identification number. These cards were used for several different purposes. Examples include photo ID, physical access to some areas on campus, charges to an online account, and more.

[Sam] and his team analyzed over 100 different cards in order to get a good sample. They found that all cards started with same eight digits. This is similar to the issuer identification number found in the first six digits of a credit card number. Th analysis also showed that there were only three combinations used for the next two digits. Those were either 05, 06, or 11. With that in mind, the total possible number of combinations for card numbers was mathematically calculated to be three million.

OSU also had a URL printed on the back of each card. This website had a simple form with a single field. The user can enter in a 16 digit card number and the system would tell the user if that card was valid. The page would also tell you if the card holder was an employee, a student, or if there were any other special flags on the card. We’re not sure why every student would need access to this website, but the fact is that the URL was printed right on the back of the card. The website also had no limit to how many times a query could be made. The only hint that the university was aware of possible security implications was the disclaimer on the site. The disclaimer mentioned that usage of the tool was “logged and tracked”.

The next step was to purchase a magnetic card reader and writer. The team decoded all of the cards and analyzed the data. They found that each card held an expiration date, but the expiration date was identical for every single card.  The team used the reader/writer to copy the data from [Sam’s] card and modify the name. They then wrote the data back onto a new, blank magnetic card. This card had no printing or markings on it. [Sam] took the card and was able to use it to purchase items from a store on campus. He noticed that the register reached back to a server somewhere to verify his real name. It didn’t do any checks against the name written onto the magstripe. Even still, the cashier still accepted a card with no official markings.

The final step was to write a node.js script to scrape the number verification website. With just 15 lines of code, the script will run through all possible combinations of numbers in a random sequence and log the result. The website can handle between three and five requests per second, which means that brute forcing all possible combinations can be completed in roughly two days. These harvested numbers can then be written onto blank cards and potentially used to purchase goods on another student’s account.

[Sam’s] team offers several recommendations to improve the security of this system. One idea is to include a second form of authorization, such as a PIN. The PIN wouldn’t be stored on the card, and therefore can’t be copied in this manner. The primary recommendation was to take down the verification website. So far OSU has responded by taking the website offline, but no other changes have been made.

TweetHeart Shows You Some Love

[Stacey] wanted a more interesting way to monitor events related to her Twitter account. What she ended up with is a beautiful animated heart light.

TweetboxShe started out by designing the enclosure. Having access to a laser cutter, she opted to make it out of thin plywood. [Stacey] used an online tool called BoxMaker to design the actual box. The tool is very simple to use. You simply plug in the dimensions of the box and it will provide you with a two dimensional template you can use with your laser cutter. The resulting plywood pieces fit together like a puzzle. The heart piece is made from frosted acrylic and was also cut by the laser.

To light up the heart, [Stacey] opted to use NeoPixels. These are like many of the RGB LED strips we’ve seen in the past, though the pixel density is higher than most. She cut up the LED strip into the appropriate sizes and glued them to a piece of plywood in a rough heart shape. She tested the lights during each step so she would know exactly when any errors were made.

[Stacey] opted to use a SparkCore to control the LEDs. This had the advantage of including WiFi connectivity out of the box.  [Stacey] started with NeoPixel example programs, but quickly realized they all relied on the Delay function. This was a problem for her, because she needed to constantly watch for new Twitter events. She ended up having to write her own functions that relied on interrupts instead.

[Stacey] then wrote a Node.js script to monitor twitter and control the Spark. The script watches for specific events, such as one of [Stacey’s] tweets being re-tweeted, or a user unfollowing [Stacey]. The script then sends a message to the Spark to tell it which event just occurred. The Spark will then repeat the event until a new one occurs. Check out the demonstration video below. Continue reading “TweetHeart Shows You Some Love”