Hackable Ham Radio Gives Up Its Mechanical Secrets

Reverse-engineered schematics are de rigeur around these parts, largely because they’re often the key to very cool hardware hacks. We don’t get to see many mechanical reverse-engineering efforts, though, which is a pity because electronic hacks often literally don’t stand on their own. That’s why these reverse-engineered mechanical diagrams of the Quansheng UV-K5 portable amateur radio transceiver really caught our eye.

Part of the reason for the dearth of mechanical diagrams for devices, even one as electrically and computationally hackable as the UV-K5, is that mechanical diagrams are a lot less abstract than a schematic or even firmware. Luckily, this fact didn’t daunt [mdlougheed] from putting a stripped-down UV-K5 under a camera for a series of images to gather the raw data needed by photogrammetry package RealityCapture. The point cloud was thoughtfully scaled to match the dimensions of the radio’s reverse-engineered PC board, so the two models can work together.

The results are pretty impressive, especially for a first effort, and should make electromechanical modifications to the radio all the easier to accomplish. Hats off to [mdlougheed] for the good work, and let the mechanical hacks begin.

Hackaday Links Column Banner

Hackaday Links: June 16, 2024

Attention, slackers — if you do remote work for a financial institution, using a mouse jiggler might not be the best career move. That’s what a dozen people learned this week as they became former employees of Wells Fargo after allegedly being caught “simulating keyboard activity” while working remotely. Having now spent more than twice as many years working either hybrid or fully remote, we get it; sometimes, you’ve just got to step away from the keyboard for a bit. But we’ve never once felt the need to create the “impression of active work” during those absences. Perhaps that’s because we’ve never worked in a regulated environment like financial services.

For our part, we’re curious as to how the bank detected the use of a jiggler. The linked article mentions that regulators recently tightened rules that require employers to treat an employee’s home as a “non-branch location” subject to periodic inspection. More than enough reason to quit, in our opinion, but perhaps they sent someone snooping? More likely, the activity simulators were discovered by technical means. The article contains a helpful tip to avoid powering a jiggler from the computer’s USB, which implies detecting the device over the port. Our guess is that Wells tracks mouse and keyboard activity and compares it against a machine-learning model to look for signs of slacking.

Continue reading “Hackaday Links: June 16, 2024”

Taking Distance Based CAD To The Next Level

For those who model CAD models regularly, a pair of calipers is essential as it allows reasonably accurate measurements to fit a specific part. However, [Jason Harris] is taking that concept to the next level with a signed distance function-based CAD tool, SDFX.

For those who don’t know, Signed Distance Functions can tell you from a given point how close the nearest part of the model is. The model is represented as a single function that offers some exciting benefits. For instance, chamfering and fileting are often quite complex in traditional CAD programs and trivial in an SDF setting. SDFX is a golang library that allows you to write golang programs to describe the model. OpenSCAD is a favorite of Hackaday as it is a beautiful parametric code-first CAD package. But the syntax and language are somewhat cludgy, to say the best. The advantage of using golang rather than a DSL is that you can use all the niceties that a full-featured language brings. For example, you can export multiple objects, make network requests, and interface with GUI libraries to recreate something like the customizer for OpenSCAD.

Objects are rendered to STL using Marching squares. Then, they can be printed in whatever slicing software suits your fancy. It’s an excellent project with a great API and almost a hundred examples.

The code is available on GitHub under an MIT License.

IRL minesweeper render showing game on top of a campaign map

Meat-Space Minesweeper Game Hits The Mark

Hackers of a certain age will remember that before the Internet was available to distract us from our work, we had to find our own fun. Luckily, Windows was there to come to our aid, in the shape of “Minesweeper” – a classic of the age that involved figuring out/occasionally just guessing where a selection of mines had been hidden on a grid of squares via numerical clues to their proximity. For those missing such simple times, [Martin] has brought the game into physical space with his 3D-printed travel-game version.

GIF showing how to play IRL minesweeper game

A number of pre-determined game fields can be inserted (by a friend… or enemy, we presume!) and covered by tiles, which the mine-clearing player can then remove with their plastic shovel to reveal the clues. The aim of the game is to avoid uncovering a bomb, and to place flags where the bombs are hiding.

Aficionados of the game may remember that a little guessing was often inevitable, which sometimes ended in disaster. On the computer version, this merely entailed clicking the Smiley Face button for a new game, but in this case would require a new sheet to be inserted. Blank sheet templates are included for producing your own fiendish bomb-sites, and all the pieces pack away neatly into a handy clam-shell design that would be ideal for long car journeys when the data package on the kids’ tablets has run out.

We wonder what other classic games may lend themselves to a travel remake and look forward to the first 3D-printed travel set of Doom with anticipation!

If you’re above solving your own Minesweeper games, then you can learn how to write a solver in Java here. Continue reading “Meat-Space Minesweeper Game Hits The Mark”

3D Printable Bearings That Actually Work, No CAD Tweaking Required

3D printing bearings with an FDM printer can be an iffy endeavor, but it doesn’t have to be that way. [Matvey Kukuy]’s Ultimate 608 Bearing with Calibration Kit is everything you’ll need to dial in and print functional 608-style print-in-place bearings on your 3D printer.

Calibration pieces have a handy label attached for identification.

[Matvey] found that there are two key tolerances to get right. And by “get right” he means “empirically determine which works best with your filament and printer”. But don’t worry, there’s no need to get into CAD work to make that happen. [Matvey] has exported a staggering 64 slightly different calibration models (and their matching production versions) along with a printable testing tool. With the help of a step-by-step process that resembles a sort of binary search, one can take the Goldilocks approach to find just the right model for one’s filament and printer in a minimum of steps.

There’s one more tip as well: [Matvey] says that once you determine the best model to use, don’t fill the print bed with copies, unless you want a bed full of possibly non-working bearings! Why is this? A 3D printer prints a bed full of objects slightly differently than it prints a single one, and since the margin for error on the perfectly-selected bearing is so small, that can be enough to keep it from working. To print more than one bearing at a time, position them far from each other and use something like PrusaSlicer’s sequential printing, which is an option to print each object completely before starting the next one.

[Matvey]’s own best results came from printing with PLA at a layer height of 0.16 mm. He also used grease in the bearing to improve performance and extend its life. He doesn’t specify what kind of grease he used, but we’d recommend a plastic-safe grease like PTFE-based Super Lube.

Have you used 3D printed bearings in a project? Would [Matvey]’s design be helpful to you? Let us know all about it in the comments.

Art of 3D printer in the middle of printing a Hackaday Jolly Wrencher logo

PrusaSlicer Now Imports STEP Files, Here’s Why That’s A Big Deal

PrusaSlicer has a new feature: the ability to import a CAD model for 3D printing. Starting in version 2.5.0-beta1, PrusaSlicer can import STEP format 3D models. An imported STEP file is converted to a triangle mesh on import (making it much like a typical .stl or .3mf file) which means that slicing all happens as one would normally expect. This is pretty exciting news, because one is not normally able to drop a CAD format 3D model directly into a slicer. With this change, one can now drag .stp or .step files directly into PrusaSlicer for printing.

First, a brief recap. In the world of 3D models there are two basic kinds: meshes and CAD models. The two work very differently, especially when it comes to editing. 3D printing has a long history of using .stl files (which are meshes) but making engineering-type changes to such files is difficult. Altering the size of a thread or changing mounting holes in a CAD model is easy. On an STL, it is not. This leads to awkward workarounds when engineering-type changes are needed on STLs. STEP, on the other hand, is a format widely supported by CAD programs, and can now be understood by PrusaSlicer directly. Continue reading “PrusaSlicer Now Imports STEP Files, Here’s Why That’s A Big Deal”

Adding Perlin Noise To 3D Printed Parts, With Python

Want to add a bit of visual flair to 3D printed parts that goes maybe a little more than skin-deep? That’s exactly what [volzo] was after, which led him to create a Python script capable of generating a chunk of Perlin noise, rendered as an STL file. What does that look like? An unpredictably-random landscape of hills and valleys.

The script can give printed parts a more appealing finish.

The idea is to modify a 3D model with the results of the script, leaving one with something a bit more interesting than a boring, flat surface. [volzo] explains how to use OpenSCAD to do exactly that, but it’s also possible to import the STL file the script creates into the CAD program of one’s choice and make the modifications there with some boolean operations.

If the effect looks a bit bit familiar, it’s likely because he used the method to design part of the 3D printed “toy” camera that we featured recently.

[volzo]’s method isn’t entirely plug and play, but it could still be a handy thing to keep in your back pocket when designing your next part. There are also other ways to modify the surfaces of prints for better aesthetics; we’ve previously covered velocity painting (also known as ‘tattooing’ in some slicers) and also fuzzy skin.

Perlin noise was created by [Ken Perlin] in the early 80s while working on the original Tron movie as a way to help generate more realistic-looking textures. It still fulfills that artistic function in a variety of ways, even today.