Gesture Controlled Doom

DOOM will forever be remembered as one of the founding games of the entire FPS genre. It also stands as a game which has long been a fertile ground for hackers and modders. [Nick Bild] decided to bring gesture control to iD’s classic shooter, courtesy of machine learning.

The setup consists of a Jetson Nano fitted with a camera, which films the player and uses a convolutional neural network to recognise the player’s various gestures. Once recognised, an API request is sent to a laptop playing Doom which simulates the relevant keystrokes. The laptop is hooked up to a projector, creating a large screen which allows the wildly gesturing player to more easily follow the action.

The neural network was trained on 3300 images – 300 per gesture. [Nick] found that using a larger data set actually performed less well, as he became less diligent in reliably performing the gestures. This demonstrates that quality matters in training networks, as well as quantity.

Reports are that the network is fairly reliable, and it appears to work quite well. Unfortunately, playability is limited as it’s not possible to gesture for more than one key at once. Overall though, it serves as a tidy example of how to do gesture recognition with CNNs.

If you’re not convinced by this demonstration, you might be interested to learn that neural networks can also be used to name tomatoes. If you don’t want to roll your own pose detection, check out this selfie drone that uses CMU’s OpenPose library. Video after the break.

Continue reading “Gesture Controlled Doom”

A Baseball Cap That Films The Past

The vast majority of cameras will start recording at the press of a button. This is perfectly acceptable behaviour if you wish to film something that hasn’t happened yet. If you want to film something that’s already over, you’re out of luck. [Johan Link] has built a camera designed to do just that, however, and put it on a cap.

The project consists of a Raspberry Pi 3B, combined with a 1080p USB webcam and a 5000 mAh power bank. These are attached to a baseball cap in order to shoot footage from the point of view of the wearer. The camera records continuously, saving the last 7 seconds of recorded video when the button is pressed — perfect for capturing things just after they’ve happened.

It’s a rolling record feature similar to that included with many dashcams and action cameras. Software is available on Github for those interested. While [Johan] has chosen a New York Yankees hat as the basis for the build, we’re confident it should work similarly well with your Seattle Seahawks cap. Raiders fans should contact the garment manufacturer.

DIY Industrial Oven Brings The Heat

When [Turbo Conquering Mega Eagle] tried lost wax casting, he ended up with a fireball and a galvanizing sense of disappointment. There wasn’t enough heat to get all the wax out, and the paraffin ignited. Though a bit burned by the experience, it didn’t extinguish his desire to do lost wax casting. In a textbook case of project-spawns-project, this eagle decided to wing it and made his own high-temperature oven.

This is true, seat-of-your-pants DIY. For this project, [TCME] treated himself to a virgin sheet of mild steel, a metallic delicacy for a guy who seems used to using whatever is available. The oven consists of a welded-together box inside a larger box, with insulation between the two. The door is a shallower box filled with insulation, with hinges on the right and a sturdy-looking gravity catch on the left. [TCME] welded together a nice little box for the 12-volt, 1000 °C temp controller module, and tacked some tabs to the outside to help wrangle the wires. Lower your visor and click past the break to watch this hot box come together.

We hope [TCME] answers the burning questions of how well the thing loses wax, and how fast it bakes a pizza. Meantime, here’s a clay oven that’s built to pizza.

Continue reading “DIY Industrial Oven Brings The Heat”

Farting Baseball; From The Makers Of Self-Solving Rubik’s Cube

Some hackers have a style all their own that is immediately recognizable from one project to the next. For instance, you can tell a [Takashi Kaburagi] by its insides. The behavior of his Farting Baseball project (machine translation) is amusing, but the joke is only skin deep. Look inside and you’ll gain a huge appreciation for what has been done here. It’s not as mind-boggling as his work on the self-solving Rubiks cube robot, but the creativity and design constraints are similarly impressive.

Clever detail is the square of soft material used to cushion impact

This whimsical project is a curve ball no matter who throws it. While in flight, a jet of compressed gas can alter the trajectory at the press of a button. Inside is a small pressure vessel that is filled with HFC134A refrigerant commonly used on gas blowback pistols. It’s a non-combustible that lies in wait until a solenoid is activated to release the pressure in a powerful jet. The ball carries a CR2032 to power the wireless link for activation, but that solenoid needs more juice so capacitors are charged for this purpose.

It’s worth digging through the details on this one, including the article on measuring discharge time (machine translation). There are numerous nice touches, like the yellow Whoopee Cushion neck that directs the jet, the capacitor discharge materials so there is not an accidental activation when not in use, and clever and clean construction that make everything fit.

Another hacker with an equally iconic style is [Mohit Bhoite]’s work; make his flywire sculptures your next stop.

Continue reading “Farting Baseball; From The Makers Of Self-Solving Rubik’s Cube”

A Fruity Approach To CNC Design

[Frank Howarth] found himself in need of a lamp for his dining room. Being of the maker persuasion, store-bought simply wouldn’t do. With a serious wood shop at his disposal, [Frank] took a trip down to the supermarket for inspiration.

Having picked out a particularly well-formed starfruit for his project, [Frank] didn’t want to spend an inordinately long time attempting to recreate the organic lumps and bumps in modelling software, Instead, Meshroom was used to create a model through photogrammetry. After several failed attempts, success was achieved by using a textured rotating table as a background, with the starfruit painted in matte grey and a final dusting of black speckle. This gave the software enough visual cues to accurately model the fruit’s geometry.

With a 3D model to hand, Fusion Slicer was then used to generate a model that could be constructed out of flat lasercut pieces. The cutting outlines were then generated and passed to Rhino for final tweaking. With everything ready, parts were cut out of plywood and a small mockup of a potential lamp design was created. [Frank] is currently workshopping the design with the inhabitants of the dining room, prior to the final build.

Photogrammetry and modern CAD tools make working with natural forms quick and easy. We’ve also seen the technology used for other purposes too, with [Eric Strebel] providing a great example on how to use it for reverse engineering.

The starfruit tag on Hackaday is pretty sparse, so if you’ve got a project, let us know. Video after the break.

Continue reading “A Fruity Approach To CNC Design”

Pushing Pixels To A Display With VGA Without A PC

[Ben Eater] is back with the second part of his video series on building a simple video card that can output 200×600 pixels to a display with nothing but a VGA connection, a handful of 74-logic chips and a 10 MHz crystal. In this installment we see how he uses nothing but an EEPROM and a handful of resistors to get an image onto the screen.

The interesting part is in how the image data is encoded into the EEPROM, since it has to be addressable by the same timing circuit as what is being used for the horizontal and vertical timing. By selecting the relevant inputs that’d make a valid address, and by doubling the size of each pixel a few times, a 100 x 75 pixel image can be encoded into the EEPROM and directly addressed using this timing circuit.

The output from the EEPROM itself not fed directly into the monitor, as the VGA interface expects a 0 V to 0.7 V signal on each RGB pin, indicating the brightness. To get more than three colors out of this setup, [Ben] builds up a simple 2-bit DAC that allows for two bits per channel, meaning four brightness levels per color channel or 64 colors effectively.

See the video after the link for the full details. While pretty close to perfect, a small issue remains at the end in the forms of black vertical lines. These are caused by a timing issue in the circuit, with comments on the YouTube video suggesting various other potential fixes. Have you breadboarded your own version yet to debug this issue before [Ben]’s next video comes out?
Continue reading “Pushing Pixels To A Display With VGA Without A PC”

The Trials And Tribulations Of Building An IOT Garage Door Opener

Garage doors can be frustrating things, being a chore to open manually and all. Many people opt to install a motorized opener, but for some, even this isn’t enough. Hooking up a garage door to the Internet of Things has long been a popular project, and [Simon Ludborzs] decided to give it a shot. Naturally, there were some obstacles to be overcome along the way.

[Simon]’s build is relatively straight down the lines, using an ESP-12 as the brains of the operation, which connects to the internet over WiFi. However, robustness was a major goal of the project, and being reliant on shaky cloud-based services wouldn’t do. This opener is set up to work independently of an internet connection, too. There’s a nifty control panel with glowing buttons to operate the opener, in addition to the webpage served up on the network.

During the development, [Simon] ran into several roadblocks. A set of roller door motors were inadvertently killed, and there were issues in getting the web interface working as expected. None of these were showstoppers, though, and with a little work and some new parts, everything came together in the end. The project was then given a proper commercial-grade case, sourced from AliBaba. This is a great step to take for a project expected to hold up to daily use for years on end. He also took the time to document his tips for easier ESP8266 development, which may prove useful to those just getting started with the platform.

Garage door openers remain a common theme around here, but every project has its own story to tell. If you’ve developed a particularly unique solution to your garage access problems, you know who to call.