Rack Cage Generator Gets Your Gear Mounted

Sometimes, as hackers and makers, we can end up with messy lashed-together gear that is neither reliable nor tidy. Rackmounting your stuff can be a great way to improve the robustness and liveability of your setup. If you find this appealing, you might like CageMaker by [WebMaka].

This parametric OpenSCAD script can generate mounts for all kinds of stuff. Maybe you have a little network switch that’s just a tangle of wires on your desk, or a few pieces of audio gear that are loosely stacked on top of each other and looking rather unkempt. It would be trivial with this tool to create some 3D printed adapters to get all that stuff laced up nice and neat in a rack instead.

If you’re eager to get tinkering, you can try out the browser-based version quite easily. We’ve featured similar work before, too—many a maker has trod the path of rackmounting, as it turns out.

A hexagonal brass enclosure surrounds an aluminium fan with three blades. The fan has an integrated outer rim with a series of small holes around the rim.

Building A Rim-Driven Jet Engine

Rim-driven thrusters turn the normal propeller-motor arrangement inside out; rather than mounting the motor at the center of the propeller, they use a large hollow motor, with the blades attached to the inside of the rotor. They’re mostly used in ship propellers, though there have been some suggestions to use them in electric aircraft. [Integza], always looking for new and unusual ways to create propulsion, took this idea and made it into a jet engine.

Rather than using an electric motor, the fan in this design is propelled by miniature rocket nozzles along the edge. The fan levitates on a layer of high-pressure gas between the fan rim and the housing. To prevent too much pressurized gas from escaping, the fan and housing needed to fit together closely, but with minimal friction. A prototype made out of acrylic and resin and powered by compressed air proved that the idea worked, but [Integza] wanted to make to this a combustion-powered engine.

Continue reading “Building A Rim-Driven Jet Engine”

DIY UPS Keeps Home Assistant Running

If you put a bunch of computers in charge of your house, it’s generally desirable to ensure their up-time is as close to 100% as possible. An uninterruptible power supply can help in this regard. To that end, that’s why [Bill Collis] whipped one up for his Home Assistant setup.

[Bill]’s UPS is charged with one job—keeping the Home Assistant Green hub and an Xfinity XB7 cable modem online when the grid goes dark. The construction is relatively straightforward. When the grid is up, everything is powered via a Mean Well AC-DC 12 V power supply, while the power is also used to charge a 12.8 V 10 Ah lithium iron phosphate battery pack. When the grid goes out, the system switches over to running the attached hardware on pure battery power. A Victron BatteryProtect is used to automatically disconnect the load if the battery voltage drops too low. Meanwhile, a Shelly Plus Uni module is used to monitor battery voltage and system status, integrated right into Home Assistant itself.

If you want to keep the basics of your smart home going at all times, something like this is a pretty simple way to go.  We’ve featured some other great UPS builds in the past, too. If you’re whipping up your own hardware to keep your home or lab alive in the dark of night, don’t hesitate to notify the tipsline.

Can Claude Write Z80 Assembly Code?

Betteridge’s law applies, but with help and guidance by a human who knows his stuff, [Ready Z80] was able to get a functioning game of Wordle out of the French-named LLM, which is more than we expected. It’s not like the folks at Anthropic spent much time making sure 40-year-old opcodes were well represented in their training data, after all.

For hardware, [Ready Z80] is working with the TEC-1G single-board-computer, which is a retrocomputer inspired by the TEC-1 whose design was published by Australian hobbyist magazine “Talking Electronics” back in the 1980s. Claude actually seemed to know what that was, and that it only had a hex keypad — though when [Ready Z80] was quick to correct it and let the LLM know he’s using a QWERTY keyboard add-on, Claude declared it was confident in its ability to write the code.

As usual for a LLM, Claude was overconfident and tossed out some nonexistent instructions. Though admittedly, it didn’t persist in that after being corrected. It’s notable that [Ready Z80] doesn’t prompt it with “Give me an implementation of Wordle in Z80 assembly for the TEC-1G” but goes through step-by-step, explaining exactly what he wants each section of the code to do. As [Dan Maloney] reported three years ago, it’s a bit like working with a summer intern.

In the end, they get a working game, but that was never in question. [Ready Z80] reveals over the course of the video he has the chops to have written it himself. Did using Claude make that go faster? Based on studies we’ve seen, it probably felt like it, even if it may have actually slowed him down.

Continue reading “Can Claude Write Z80 Assembly Code?”

A man's hand is holding a thin wooden board, which runs between two vertical metal plates. On the board are two glasses, one filled with water. A computer screen is behind all this, showing a series of white bars. The series of bars shows two peaks.

Using Capacitance For Extremely Sensitive Proximity Sensing

Capacitive displacement sensors span a wide range of resolution, from the touchscreen sensors which can only detect displacement as a binary state, all the way to the sensors in semiconductor fabs which measure down to nanometers. The sensor [Matthias Wandel] built with a Raspberry Pi Pico lands somewhere in the middle, providing both sensitive measurements and an absolute scale.

The idea is that the amount of overlap between two metal plates should be detectable by measuring the capacitance between them. Reaching any kind of usable resolution would require a very precise measure of capacitance, around the picofarad range. [Matthias] realized that the Pico’s GPIO pins have an inherent capacitance, and can have a pull-down resistor set, essentially creating an RC circuit. [Matthias] would set a pin to a high-level output, then switch it to an input. The amount of time the pin takes to switch from high to low indicates the RC constant, which includes the capacitance attached to the pin.

When attached to a metal plate, the Pico was sensitive enough to detect the plate’s capacitive coupling to [Matthias]’s hand through a thick wooden floor. To measure capacitance between two metal plates, the Pico measured how well a voltage signal applied to one plate was coupled to the other plate. This was sensitive enough to measure the slight change in the dielectric constant when [Matthias] waved a piece of ABS pipe between the two capacitor plates. Making actual position measurements was tricky, since capacitance changed with both X- and Z-axis shifts in the plates.

Digital calipers use similar capacitive sensors to make their measurements, as [Matthias] knows from his experiments in hacking them. If you’re interested in more details, check out this teardown of some cheap digital calipers.

Continue reading “Using Capacitance For Extremely Sensitive Proximity Sensing”

PSX Development With Unity And LUA

The Unity game development platform was first released in 2005, long after the PlayStation had ceased to be a relevant part of the console market. And yet, you could use Unity to develop for the platform, if you so desire, thanks to the efforts of [Bandwidth] and the team behind psxsplash. 

Yes, it really is possible to design games for the original PlayStation using Unity and Lua. Using a tool called SplashEdit, you can whip up scenes, handle scripting, loading screens, create UIs, and do all the other little bits required to lash a game together. You can then run your creation via the psxsplash engine, deploying to emulator or even real hardware with a single click. Currently, development requires a Windows or Linux machine and Unity 6000.0+, but other than that, it’s pretty straightforward to start making games with a modern toolset for one of the most popular consoles of all time. Just remember, you’ve only got 33 MHz and 2MB of RAM to play with.

We still love to see the legendary grey machine get used and hacked in new and inventive ways, so many decades after release.

Continue reading “PSX Development With Unity And LUA”

How One Line Of TF2 Code Ruined This Simple Feature

Ever encountered a minor annoying bug in a video game? How about one dating back to 2018? Usually, you have no hope of fixing it, but this time is different. [Joey Cheerio] shows the first-time programmer approach to (with great difficulty) fixing a bouncy ball prop turning invisible when shot in Team Fortress 2.

It starts with a band-aid solution that hides the problem: just turn off jiggle physics! While that works, it also affects many other models in the game, and doesn’t tackle the root cause. Time to investigate. Because this ball often goes overlooked, [Joey Cheerio] didn’t even realize that it was supposed to have jiggle physics, accidentally removing it. Turns out, after scouring the internet for old footage, it’s supposed to jiggle after all.

Back to square one, [Joey Cheerio] infers that the jiggle bone accidentally removed was related to the problem, eventually figuring out that the specific type of jiggle bone used (is_boing) caused the issue. Time to dig in the code. Tracking down the problem is no small feat for someone who’s never programmed before, even with the help of LLMs, but eventually, at 4 in the morning, a breakthrough! The ball no longer turned invisible but retained the intended jiggle.

At the limits of his knowledge on the subject, [Joey Cheerio] posts his partial progress so far to GitHub, where [ficool2] tracks down the real problem and turns this second band-aid into a proper fix. [Joey Cheerio] finishes up by explaining the math of what exactly went wrong.

Continue reading “How One Line Of TF2 Code Ruined This Simple Feature”