The 1337 PNG Hashquine

A hashquine is a fun way to show off your crypto-tricks — It’s a file that contains its own hash. In some file types it’s trivial, you just pick the hash to hit, and then put random data in a comment or other invisible field till you get a collision. A Python script that prints its own hash would be easy. But not every file type is so easy. Take PNG for instance. these files are split into chunks of data, and each chunk is both CRC-32 and adler32 checksummed. Make one change, and everything changes, in three places at once. Good luck finding that collision. So how exactly did [David Buchanan] generate that beautiful PNG, which does in fact md5sum to the value in the image? Very cleverly.

md5sum hashquine.pngThankfully [David] shared some of his tricks, and they’re pretty neat. The technique he details is a meet-in-the-middle hack, where 36 pairs of MD5 collision blocks are found, with the understanding that these 36 blocks will get added to the file. For each block, either A or B of the pair will get plugged in at that location, and the md5sum won’t change. It’s a total of 2^36 possible combinations of these blocks, which is more computation than was practical for this particular hack. The solution is to pre-compute the results of every possible combination of the first 18 blocks, and store the results in a lookup table. The second half of the collisions are run backwards from a target CRC value, and the result checked against the lookup table. Find a hit, and you just found a series of blocks that matches both your target md5sum and CRC32 results.

Thanks to [Julian] for the tip! And as he described it, this hack is one that gets more impressive the more you think about it. Enjoy!

Empty Spools Make Useful Tools, Like Counters

What’s the deal with getting things done? There’s a Seinfeld anecdote that boils down to this: get a calendar, do a thing, and make a big X on each day that you do the thing. Pretty soon, you’ll thirst for chains of Xs, then you’ll want to black out the month. It’s solid advice.

[3D Printy] likes streaks as well, and made several resolutions at the beginning of 2022. As the first of 30 videos to be made throughout the year, they featured this giant 3D printed counting mechanism (video, embedded below) that uses empty filament spools, some 3D prints, and not much else. These are all Hatchbox spools, and it won’t work for every type, but the design should scale up and down to fit other flavors.

This isn’t [3D Printy]’s first counter rodeo — he’s made several more normal-sized ones and perfected a clever carryover mechanism in the process, which is of course open-source. So each spool represents a single digit, and there are printed parts in the core that make the count carry over to the next spool. Whereas the early counters used threaded rod, this giant version rides on 2.5 mm smooth rod, so the spools can slide apart easily. But how does everything stay together? A giant elastic band made of TPU filament, of course — because the answer is always in the room.

Check out the video after the break, and stay for the 900%-sped-up assembly at the end.

Continue reading “Empty Spools Make Useful Tools, Like Counters”

Wireless Water Detector Hooks Up To Home Assistant

Water damage can quickly make even the nicest buildings unliveable. [Andres Leon] suffered a small flood from an air conditioning unit, and wanted to avoid such issues in future. Thus, he built a wireless monitor to solve the problem.

The device is based on the ESP8266, allowing it to wirelessly communicate with Home Assistant. Thus, if it detects water via its rust-proof probes, it can notify Home Assistant via an MQTT message. From there, Home Assistant can advise the home owner remotely via phone and email. Plus, just for completeness, there’s a loud buzzer in the unit that goes off when water is detected, too. Thanks to a 2500 mAh lithium-polymer battery on board, the device can run for up to 5 months between recharges.

Integrating warning systems into one’s smart home system can be particularly useful when one is away for long periods. Things like water leaks tend to do damage over time when we’re not paying attention, so any IoT device that can assist in this regard is helpful. If you want to investigate the cause of a difficult leak, though, this other project may help. Video after the break.

Continue reading “Wireless Water Detector Hooks Up To Home Assistant”

3D Print Yourself A Tiny Steam Train Complete With Smoke Effects

Model trains are fun, but sometimes little whirring motors in electric models feel a long way from the hulking metal beasts of the real railways. [Lewis] of [DIY Machines] adds back some of the flavor with this little steam train build, smoke effects included!

The body of the train itself is 3D printed in PLA. It’s designed to O-gauge scale, and comes complete with models for 3D printed track as well. The parts are given a coat of paint to better approximate the finish of the real thing; sometimes bare plastic just won’t suffice, after all.

Propulsion is thanks to an onboard battery and a simple gearmotor, driven by a HG7881 motor driver. An ESP32-CAM is responsible for running the show, allowing the train to be commanded wirelessly. As a bonus, the camera is mounted in the very front of the train, allowing one to watch a livestream of its progress about the tracks. Meanwhile, the smoke effect is thanks to a small water atomizer fitted in the train’s chimney, which makes the train look that little bit more authentic.

The combination of a self-powered train and 3D-printed tracks is a compelling one. [Lewis] has been able to leave his PETG 3D-printed track outside for over two years and it’s still in working order. That’s not something easy to achieve when using metal rails to deliver power.

Overall, this is a fun way to get into building your own model trains, and is a lot more hands-on than simply buying pre-built models from a store. From there, the sky is really the limit for your creativity! Video after the break.

Continue reading “3D Print Yourself A Tiny Steam Train Complete With Smoke Effects”

Old Barcode Scanner Motherboards Live Again

Sometimes, hacking is just for the pleasure of diving into the secrets of old hardware. That was very much the case when [glitch] and a friend started hacking on some old Intel 8080 boards that had been living in the junk pile for too long.

The boards in question were motherboards from Identicon barcode scanners, running the Intel 8080 CPU. Hacking on the 8080 is a little different, with the ancient CPU requiring three separate voltages to run. However, with the power rails figured out and power applied, it was possible to get the old boards up and running.

The boards were first run with test ROMs which showed the 8080 CPU to be functional. The ROMs hosted a simple program which got the 8080 to spit out the word “HELO” on to an HP HDSP-2416 ASCII character display. From there, the barcode scanner boards were installed in a chassis and hooked up to a bigger Siemens character display, and the memory was mapped out.

The result was that [glitch] and co were able to largely reverse engineer the Identicon hardware, learning it was fairly similar to the Intel MCS-80 reference design of the era. They were able to get code running on the platform, access the RAM, and fit a larger 8-character display. However, without the original barcode scanner attachment, the boards weren’t able to return to their original duty.

As far as hacks go, it’s pretty old school. The boards don’t talk to Twitter, nor run the lights or help with the dishes. However, plenty of fun was had seeing if this old metal could be made to follow instructions once more. Hacking for the pleasure of it is always a good thing by our book!

A 3D Printed Marble Run Features Neat Elevator Linkage

There’s seldom anything as joyful and relaxing to watch as a simple marble run. Of course, the thing about letting marbles fall under gravity is that you eventually need to lift them back up again. The Marblevator has a mechanism that does just that.

Overall, the build features a relatively simple marble run. It consists of just six 3D printed ramps which the marble tumbles down in just a few seconds. However, the real magic is in the mechanism that restores the marbles from the bottom of the run all the way back to the top.

A motor turns a gear, which then rotates a crank leading to a multi-link rhombus. On one corner of the rhombus is a small protrusion with a magnet attached, which picks up the marbles from the bottom of the run. As the mechanism turns, the rhombus shifts and brings the marble-carrying arm to the top of the marble run. There, it’s grabbed by another magnet, which holds the marble for a moment before letting it drop back down through the run.

It’s a simple project that nonetheless would make a brilliant desk toy. It’s also a great way to learn about linkage analysis and designing such systems on your own. If you’re big into marble runs, you might also consider procedurally generating them. Video after the break.

Continue reading “A 3D Printed Marble Run Features Neat Elevator Linkage”

3D Printed Strain-Wave Gearbox Turns Up The Torque

3D printers are good for a lot of things, but making parts for power transmission doesn’t seem to be one of them. Oh sure, some light-duty gears and timing belt sprockets will work just fine when printed, but oftentimes squooshed plastic parts are just too compliant for serious power transmission use.

But that’s not a hard and fast rule. In fact, this 3D-printed strain-wave transmission relies on the flexibility of printed parts to work its torque amplification magic. In case you haven’t been briefed, strain-wave gearing uses a flexible externally toothed spline nested inside an internally toothed stationary gear. Inside the flexible spline is a wave generator, which is just a symmetrical cam that deforms the spline so that it engages with the outside gear. The result is a high ratio gear train that really beefs up the torque applied to the wave generator.

It took a couple of prototypes for [Brian Bocken] to dial in his version of the strain-wave drive. The PLA he used for the flexible spline worked, but wasn’t going to be good for the long haul. A second version using TPU proved better, but improvements to the motor mount were needed. The final version proved to pack a punch in the torque department, enough to move a car. Check it out in the video below.

Strain-wave gears have a lot of applications, especially in robotic arms and legs — very compact versions with the motor built right in would be great here. If you’re having trouble visualizing how they work, maybe a Lego version will clear things up.

Continue reading “3D Printed Strain-Wave Gearbox Turns Up The Torque”