It’s DOOM

Dirt cheap toy cameras have long been a target for the curious camera hacker, and we’ve seen plenty of lens swaps and other hardware hacks. Until now their internals have remained something of a black box though, so it’s very interesting indeed to see [Spode] breaching the firmware on one and making it run DOOM. Yes, it runs the game, but the value is in opening up this platform.

The Achiles’ heel on this particular camera is its easily updatable firmware, allowing new firmware to be placed upon it with ease. The SoC is an HX3302B which [SpriteTM] has done some work on, so he’s not going in entirely blind. A neat hack to dump the camera’s memory into EXIF data on photos completed the puzzle. He was able to benchmark the thing and find it to be surprisingly powerful, certainly enough for a game from 1993. Doomgeneric looked promising, but first there was the matter of the device’s RAM.

In another clever move he was able to keep only the most-used piece of the doom code in memory and the rest in flash, allowing the game to run. A custom synthesizer completed the experience, and on the write-up there’s a chance to travel back to the early ’90s and hear that music again. All that was left were the controls, and with a few quirks, this thing becomes a playable DOOM console. It’s probably better at that than it is at being a camera.

If you’re hungry for more, we’ve taken a look at similar devices before.

Making A Wax Motor For Micrometer-Level Control

Although not very glamorous, wax motors are a fairly common type of linear actuator. They use the thermal response of waxes and the resulting volumetric expansion or reduction to create a relatively fast, smooth, and highly predictable actuator that can work for decades. They can often be found operating valves and things like the door mechanisms of washing machines. As [BubsBuilds] demonstrates in a recent video, you can even build your own wax motor for very precise control.

Here simple paraffin wax is used, which changes in volume by 1.15 times when it goes from solid to its molten state. Calling it a ‘waxtuator’, [BubsBuilds] characterized this expansion rate over the temperature range between solid and fully molten to make it a controllable actuator. In his experiments, a gap of less than 5 µm was maintained over twelve hours, showing how precise this device can be if you can control the temperature that the wax is kept at.

One major issue is the low conductivity of paraffin wax, which as some commentators remark can be solved by mixing something like fine copper particles into the wax to increase the thermal conductivity. In the shown implementation instead multiple channels in the aluminium block are used, which are melted by a TEC element.

The wax exerts pressure on a working fluid, which then pushes on a hydraulic cylinder that can be used for whatever precise linear actuating task has to be performed. Although initially water was used as a working fluid, this posed many issues with wax-water interface compatibility and vacuum degassing.

Although ethylene glycol makes for a better working fluid, this proved to be its own hassle. With the water-wax version a displacement sensor was thus used to measure and calibrate the whole setup. The electronics used to control the TEC in combination with the current temperature and displacement are a story in itself, but essential for making this device work.

While not something we often see tackled in the DIY space, we’ve covered a few teardowns of commercial units over the years.

Continue reading “Making A Wax Motor For Micrometer-Level Control” →

Germanium diode

From Germanium To Diamond: The Many Shapes Of Semiconductors

It seems fair to say that semiconductor technology has been one of the most influential inventions in human history. Practically overnight it turned human technology from being large, cumbersome and power-hungry into an increasingly sleeker, more power-efficient and much more capable form. It has become practically impossible at this point to imagine modern society without semiconductor technology.

That said, we didn’t always use today’s silicon-based semiconductor technology, and although silicon-based semiconductors are exceedingly versatile and adaptable, they do have their limitations. The past years we have seen for example gallium-nitride semiconductors make big inroads in power switching technology, and more exotic forms like diamond-based semiconductors keep making their tantalizing appearances.

In this article we’ll take a look at how we ended up at silicon as the default for semiconductor technology, as well as why we may want to consider moving to other materials.

Continue reading “From Germanium To Diamond: The Many Shapes Of Semiconductors” →

Using A Cheap DC Motor To Make A Go-Kart Go

Where Archimedes said that he could move the Earth given a large enough lever and a suitable fulcrum, [Current Concept] decided that he could give his own spin on this quote by swapping the lever and fulcrum for a tiny $1 DC brushed motor and a very large gearing ratio.

In addition to 3D printing a compound gearbox with the requisite 1,243:1 gear ratio, the video also covers the joys of getting a ‘Craigslist special’ go-kart for about the same price as the electric motor and having to undo many very special modifications.

With that done, the newly printed gearbox was installed, along with the single DC motor to drive it all. This actually managed to propel the go-kart, at a pace that would impress even a snail, so for the next phase instead of a single motor a total of fourteen were used, all adding their tiny bit of torque into the gearbox.

Although one has to keep in mind that the gearbox and chain mechanism will also take its slice of the provided energy along with other inefficiencies, one still cannot beat the laws of physics. Much like Archimedes’ lever powered by a piddly human, the conversion of RPM into torque for these small motors was never going to get you that zippy go-kart experience.

Which isn’t to say that someone shouldn’t totally put some BLDC motors to the task and see how fast a go-kart can be made to move using those and an optimized gearbox.

Continue reading “Using A Cheap DC Motor To Make A Go-Kart Go” →

Yesterday Has Never Looked This Good: Feast Your Eyes On The 2026 Retrocomputing Challenge Winners!

If there’s one category among those we see here at Hackaday that has something for everyone, it’s retrocomputing. Spanning everything from relay-based machines that fill a wall through to modern machines with a retro twist, there must be few of us who haven’t seen such a project as been impressed. Our most recent contest challenged you to come out with your best retrocomputing projects, and we’re extremely pleased to say that you didn’t disappoint us. Here are the results, both the outright winners, and the honourable mentions.

First up, our top three. For these, we are happy to award the prize of a  $150 DigiKey gift certificate. Continue reading “Yesterday Has Never Looked This Good: Feast Your Eyes On The 2026 Retrocomputing Challenge Winners!” →

A Ridiculous Journey To Set The Clock In A 2014 Renault

As difficult as it may be to believe, it’s not possible to adjust the time on a 2014 Renault Latitude’s in-dash navigation system unless you have an original SD card with valid map data on it. If you loose that card, or never had it in the first place because you’re not the original owner of the vehicle, you’re out of luck.

That is, unless you’re [Rasmus Moorats]. Not willing to pay for an original Renault SD card just for the privilege of adjusting the time on his vehicle’s dashboard, he set out to hack the navigation system so he could fiddle with its parameters manually.

You might think that the end result of this hack is really only interesting if you happen to own a Renault of a similar vintage, and to a point you’d be right. The part that’s worth sticking around for even if you don’t have an applicable vehicle is the fascinating process of poking and prodding at the car’s embedded Linux operating system which [Rasmus] was kind enough to document for us.

There’s a lot of ground covered in the write-up, but the short version is that while the navigation system has the ability to load scripts from the SD card, as designed there are pretty strict limits on what said scripts can actually do. The trick for [Rasmus] was to find a way to break out of the limited sandbox.

After a number of only partially successful attempts, he finally found the solution by using the script’s built-in logging functions to overwrite the operating system’s core_pattern string which is executed whenever a process crashes. By then using a different function of the scripting language to intentionally crash a binary, he was able to execute commands of his choosing, and in turn modify the configuration file that held the time data.

If you’ve ever found yourself trying to hack your way through a locked down embedded Linux system, we’re willing to bet at least a few of the tricks [Rasmus] outlines here could come in handy. As for hacking obstinate in-dash navigation and entertainment systems, it gets even harder on more modern vehicles.

Reading Data From An Unwilling Blood Pressure Monitor

Given the modern trend of interconnecting anything and everything, we have no doubt that somebody sells a blood pressure monitor that will push its measurements out to all sorts of cloud services on your behalf. We’re equally sure that doing so requires you to sign up for some new account or service, and that there may even be a subscription cost hiding in there as well.

Looking to record his vitals on his own terms, [Tomasz Burzy] set out to modify a basic blood pressure monitor so that it would send its data out over WiFi. He succeeds in the end, but as is so often the case around these parts, the journey ended up being just as interesting as the final destination.

Optically detecting which LCD segments are activated.

His initial idea was to tap into the monitor’s PCB with his logic analyzer. He quickly found a test point that let him pull the raw value from the unit’s pressure sensor, and with a little massaging, he even got some code running that turned that into a fair estimation of his actual blood pressure. But it didn’t quite match what the display showed, and doing some research, he found that these monitors generally employ some unknowable Secret Sauce to derive the final result from the raw data.

Efforts to intercept the final number from the device’s main chip before it was sent off to the display driver were stymied by the fact that it was the display driver. The unit was so well integrated, presumably to drive down the cost, that there was a single IC handling essentially all aspects of its operation. So much for the logic analyzer route.

In the end, [Tomasz] took the nuclear option and used a camera mounted to the top of the unit to pull data off the display optically. But instead of a full-fat computer running some computer vision software, he’s able to pull it off on an ESP32-CAM module. How? Because he knows exactly where each segment of the LCD is, he simply needs to check a set array of coordinates in the camera’s image to see if they are lit up or not. This greatly reduces the complexity of the task, and brings it within the capabilities of the lowly microcontroller.

Although we love the idea of developing hacker-friendly medical devices that give up their data without having to jump through so many hoops, we appreciate the effort [Tomasz] put into this, and think it’s a fantastic example for similar reverse engineering efforts.

Continue reading “Reading Data From An Unwilling Blood Pressure Monitor” →