A Compiler In Plain Text Also Plays Music

As a layperson reading about some branches of mathematics, it often seems like mathematicians are just people who really like to create and solve puzzles. And, knowing that computer science shares a lot of its fundamentals with mathematics, we can assume that most computer scientists are also puzzle-solvers as well. This latest project from [tom7] shows off his puzzle creating and solving skills with a readable file which is also a paper, which is also a compiler for C programs, which can also play music.

[tom7] started off with the instruction set for the Intel 8086 processor. Of the instructions available, he wanted to use only instructions which are also readable in a text file. This limits him dramatically in what this file will be able to execute, but also sets up the puzzle. He walks through each of the hurdles he found by only using instructions that also code to text, including limited memory space, no obvious way of exiting the program once it was complete, not being able to jump backward in the program (i.e. looping), and a flurry of other issues that come up once the instruction set is limited in this way.

The result is a sort of C compiler which might not be the most efficient way of executing programs, but it sure is the most effective way of showing off [tom7]’s PhD in computer science. As a bonus, the file can also play an antiquated type of sound file due to one of the available instructions being a call for the processor to interact with I/O. If you want to learn a little bit more about compilers, you can check out a primer we have for investigating some of their features.

Thanks to [Greg] for the tip!

Continue reading “A Compiler In Plain Text Also Plays Music”

Dr. Hallards Dream transmission box

An Enigma Wrapped In A Riddle Wrapped In A Vintage Radio

Puzzle boxes are great opportunities for hacking. You can start with a box which was originally used for something else. You get to design circuitry and controls which offer a complex puzzle for the players. And you can come up with a spectacular reward for those who solve it. [thomas.meston’s] Dr. Hallard’s Dream Transmission Box, which he created for an original party game, has all those elements.

The box was a broken 1948 National NC-33 Ham Radio purchased on eBay after a number of failed bids. Most of it was removed except for the speaker. The electronics is Arduino based, so most of the smarts are in the form of code. Potentiometers and a switch provide the mechanism for players to enter codes. And when the correct code is entered, a relay triggers an external smoke machine and turns on a laser which illuminates a party ball, rewarding the victors. And of course, there are also sound effects as well as a recorded message.

We weren’t kidding when we said puzzle boxes make great hacks. Here’s one which ignites fireworks, one made only from discrete components, and a valentine based one which makes your significant other work for their gift.

Solving A Rubik’s Cube With Just Two Motors

We’ve all seen videos of Rubik’s cube champions who can solve the puzzle in less than 5 seconds. And there are cube-twisting robots that can solve the cube even faster, often in under a second. This Rubik’s cube solver is not one of those robots, but it’s still pretty cool.

The reason we like Dexter Industries’ “BricKuber” is not for its lightning speed — it takes a minute or two to solve the puzzle. What we like is the simplicity of the approach to manipulating the cube. Built from LEGO parts, including Mindstorms motors and a BrickPi controller, the BricKuber uses only two motors to work the cube. One motor powers a square turntable upon which the cube sits, while the other powers an arm that does double duty — it either clamps the cube so the turntable can rotate a layer, or it rakes the cube to flip it 90° on the turntable. With a Pi Cam overhead, the rig images all six faces, calculates a solution to the cube, and then flips and twists the cube to solve it. It’s simultaneously mind-boggling and strangely relaxing to watch.

All the code is open source, and we strongly suspect a similar and possibly faster robot could be built without the LEGO parts. You might even be able to build one with popsicle sticks and an Arduino.

Continue reading “Solving A Rubik’s Cube With Just Two Motors”

Making The Best Plywood For Laser Cut Puzzles

Plywood laser-cuts fairly well but has drawbacks when used in serious production runs, as [Marie] explains in a blog post about a quest for the ultimate laser-cutting plywood. One of the things [Nervous System] makes and sells is generative jigsaw puzzles, and they shared their experience with the challenges in producing them. The biggest issue was the wood itself. They ended up getting a custom plywood made to fit their exact needs, a process that turned out neither as complex nor as unusual as it may sound.

An example of how a dense knot hidden in one of the plywood layers caused the laser to not cut all the way through.

Plywood is great because it’s readily available, but there are some drawbacks that cause problems when trying to do serious production of laser-cut plywood pieces. Laser cutting works best when the material being cut is consistent, but there can be areas of inconsistent density in plywood. If the laser encounters an unexpected knot somewhere in the wood, there is no way to slow down or to increase power to compensate. The result is a small area where the laser perhaps doesn’t quite make it through. A picture of an example from my workshop shows what this looks like.

When doing basic project work or prototyping, this kind of issue is inconvenient but usually some trimming and sanding will sort things out. When doing a production run for puzzles like [Nervous System] was doing, the issue is more serious:

  1. A jigsaw puzzle with a large number of cuts in a relatively small area has a higher chance of running into any problem spots in the material. If they exist, the laser will probably encounter them.
  2. Trouble spots in plywood can be on the inside layers, meaning they can’t be detected visually and are only discovered after they cause an incomplete cut.
  3. Increasing laser power for the whole job is an incomplete solution, as excessive laser power tends to make the cuts uglier due to increased scorching and charring.
  4. An inspection process becomes needed to check each puzzle piece for problems, which adds time and effort.
  5. A puzzle that had even one piece that did not cut properly will probably be scrapped because rework is not practical. That material (and any time and money that went into getting the nice artwork onto it) becomes waste.

Plywood is great stuff and can look gorgeous, but [Marie] says they struggled with its issues for a long time and eventually realized they had gone as far as they could with off-the-shelf plywoods, even specialty ones. They knew exactly what they needed, and it was time for something custom-made to serve those specific needs.

Having your own plywood custom-made may sound a little extreme, but [Marie] assures us it’s not particularly difficult or unreasonable. They contacted a small manufacturer who specialized in custom aircraft plywoods and was able to provide their laser-cut plywood holy grail: a 3-ply sheet, with high quality basswood core with birch veneers, and a melamine-based glue. It cuts better than anything else they have used, and [Marie] says that after four years they had certainly tried just about everything.

Jigsaw puzzle with timer

Your Puzzle’s Done When The Electronics Says So

We can race against the clock when assembling jigsaw puzzles online but what about competing against each other in the real world? [HomeMadeGarbage] came up with the simplest of solutions with his jigsaw puzzle timer that stops only when the puzzle’s completely assembled.

Copper strip on back of puzzle
Copper strip on back of puzzle

His simple solution was to attach copper foil tape to the back of the pieces, with overlap. He did this in a serpentine pattern to ensure that all pieces had a strip of the tape. The puzzle he used comes with a special container to assemble it in. At two corners of that container, he put two more pieces of copper foil, to which he soldered wires. Those two act as a switch. Only when the puzzle is completed will those two pieces be connected through the serpentine strip on the back of the puzzle.

Next, he needed a timer. The two wires from the puzzle container go to an Arduino UNO which uses an ILI9325 touch panel TFT display for both the start, stop, and reset buttons, and to show the time elapsed. Press the touch screen when it says START and begin assembling the puzzle. When the last piece is inserted, the serpentine strip of copper tape completes the circuit and only then does the Arduino program stop the timer. As you can see from the video below, the result makes doing the puzzle lots of fun.

Continue reading “Your Puzzle’s Done When The Electronics Says So”

Hack Your Hike With This Arduino Puzzle Geocache

For those who love to hike, no excuse is needed to hit the woods. Other folks, though, need a little coaxing to get into the great outdoors, which is where geocaching comes in: hide something in the woods, post clues to its location online, and they will come. The puzzle is the attraction, and doubly so for this geocache with an Arduino-powered game of Hangman that needs to be solved before the cache is unlocked.

The actual contents of a geocache are rarely the point — after all, it’s the journey, not the destination. But [cliptwings]’ destination is likely to be a real crowd pleaser. Like many geocaches, this one is built into a waterproof plastic ammo can. Inside the can is another door that can only be unlocked by correctly solving a classic game of Hangman. The game itself may look familiar to long-time Hackaday readers, since we featured it back in 2009. Correctly solving the puzzle opens the inner chamber to reveal the geocaching goodness within.

Cleverly, [cliptwings] mounted the volt battery for the Arduino on top of the inner door so that cachers can replace a dead battery and play the game; strangely, the cache entry on Geocaching.com (registration required) does not instruct players to bring a battery along.

It looks like the cache has already been found and solved once since being placed a few days ago in a park north of Tucson, Arizona. Other gadget caches we’ve featured include GPS-enabled reverse caches, and a puzzle cache that requires IR-vision to unlock.

Continue reading “Hack Your Hike With This Arduino Puzzle Geocache”

Python Solution To A Snake Cube Puzzle

Puzzles provide many hours of applied fun beyond any perfunctory tasks that occupy our days. When your son or daughter receives a snake cube puzzle as a Christmas gift — and it turns out to be deceptively complex — you can sit there for hours to try to figure out a solution, or use the power of Python to sort out the serpentine conundrum and use brute-force to solve it.

Continue reading “Python Solution To A Snake Cube Puzzle”