Procedurally Generated Terrain In OpenSCAD

We’re big fans of OpenSCAD here at Hackaday — it’s free and open source software, runs on pretty much anything, and the idea of describing objects via code seems like a natural fit for producing functional parts. Rather than clicking and dragging elements on the screen, you can knock out a quick bracket or other simple component with just a few lines of code. But one of the things we don’t often get a chance to showcase is the incredible potential of generating 2D and 3D objects algorithmically.

In a recent Reddit post, [ardvarkmadman] dropped an extremely impressive snippet of OpenSCAD code that he calls TerrainGen. In fewer than fifteen lines of code, it’s able to create randomized “islands” which range from simple plateaus to craggy mountain ranges. After dropping the code in the OpenSCAD editor, you can just keep hitting F5 until you get a result that catches your eye. This seems like an excellent way to generate printable terrain elements for gaming purposes, but that’s just one possibility.

Continue reading “Procedurally Generated Terrain In OpenSCAD”

Life Without Limits: A Blind Maker’s Take On 3D Printing

In the world of creation, few stories inspire as much as [Mrblindguardian], a 33-year-old who has been blind since the age of two, but refuses to let that hold him back. Using OpenSCAD and a 3D printer, [Mrblindguardian] designs and prints models independently, relying on speech software and touch to bring his ideas to life. His story, published on his website Accessible3D.io, is a call to action for makers to embrace accessibility in their designs and tools.

[Mrblindguardian]’s approach to 3D printing with OpenSCAD is fascinating. Without visual cues, he can still code every detail of his designs, like a tactile emergency plan for his workplace. The challenges are there: navigating software as a blind user, mastering 3D printers, and building from scratch. His tip: start small. Taking on a very simple project allows you to get accustomed to the software while avoiding pressure and frustation.

His successes highlight how persistence, community support, and creativity can break barriers. His journey mirrors efforts by others, like 3D printed braille maps or accessible prosthetics, each turning daily limitations into ingenious innovations. [Mrblindguardian] seems to be out to empower others, so bookmark his page for that what’s yet to come.

Accessible tech isn’t just about empowering. Share your thoughts in the comments if you have similar experiences – or good solutions to limitations like these! As [Mrblindguardian] says on his blog: “take the leap. Let’s turn the impossible into the tangible—one layer at a time”.

Continue reading “Life Without Limits: A Blind Maker’s Take On 3D Printing”

Building A 3D Printed Phone Handset With Mil-Spec Style

In general, military gear is designed to be rugged and reliable. A side effect of this is that the equipment usually has a distinct visual look that many people find appealing. You might not need a laptop that can survive being in a war zone, but plenty of hackers have picked such machines up on the second hand market anyway.

Case in point, the H-250 telephone handset. [Tobias] didn’t actually need a combat-ready phone handset, but loved the way it looked. Technically you can pick these up on eBay for a reasonable price, but then you’ve still got to deal with the weirdo military components inside it. So why not design a look-alike and 3D print it?

[Tobias] came up with a design in OpenSCAD that has a very close resemblance to its military counterpart. Not only has he made the source code for the 3D model available for others who might want to print their own look-alike handset, but the Hackaday.io page also includes a breakdown of the hardware that needs to be added to the printed parts to make it a functional handset.

If you think the H-250 handset looks familiar, it’s probably because it comes standard issue on the TA-1042 field telephone — another very slick looking piece of military gear that we’ve covered previously.

OpenSCAD Library Creates QR Codes On The Fly

If you’ve been reading Hackaday for awhile, you’ll know we’re big fans of OpenSCAD around these parts. There’s a number of reasons it’s a tool we often reach for, but certainly one of the most important ones is its parametric nature. Since you’re already describing the object you want to generate with code and variables, it’s easy to do things like generate an arbitrary number of cloned objects by using a for loop.

There are a number of fantastic OpenSCAD libraries that explore this blurred line between code and physical objects, and one that recently caught our eye is scadqr from [xypwn]. The description says it lets you “Effortlessly generate QR codes directly in OpenSCAD”, and after playing around with it for a bit, we have to agree.

Continue reading “OpenSCAD Library Creates QR Codes On The Fly”

Bit Of OpenSCAD Code Caps Off Wiremold

Wiremold is great stuff — it’s relatively cheap, easy to work with, and offers all sorts of adapters and angle pieces which take the hassle out of running (and hiding) wires. But [Dr. Gerg] found a shortcoming of this otherwise very flexible product: since each run is intended to start and end in a surface mounted box, he couldn’t find an end cap that would let him close off a section.

The solution? A desktop 3D printer and a chunk of OpenSCAD code telling it what to extrude. When you break it down, the Wiremold profile is fairly straightforward, and can be easily described with geometric primitives. A handful of cylinders, a cube or two, tie it all together with the hull() function, and you’re there.

We’d say this would be a fantastic project to cut your OpenSCAD teeth on, but since [Dr. Gerg] was kind enough to share the source code, you don’t have to figure it out on your own. Though there’s still benefit in reading over it if you’re looking for some practical examples of how the “Programmers Solid 3D CAD Modeller” gets things done.

So why would you want a Wiremold endcap? In the case of [Dr. Gerg], it sounds like he was trying to cover up a short run of wire that was running vertically. But we could imagine other applications for this basic design now that it’s out in the wild. For example, a short length of Wiremold outfitted with a pair of printed caps could make for a nice little enclosure if you’ve got a small project that needs protecting.

OpenSCAD Cranks Out Parametric CNC Clamps

If you’ve ever used a CNC router or mill, you’ll know how many little things need to go right before you get anything resembling acceptable results. We could (and probably should?) run a whole series of posts on selecting the correct bit for the job at hand and figuring out the appropriate feeds and speeds. But before you even get to that point, there’s something even more critical you need to do: hold the workpiece down so it doesn’t blast off into orbit when the tool touches it.

Now that might sound like an easy enough job, and for basic flat stock, it often is. But if you’ve got an oddly shaped piece of material, you’ll quickly realize how inadequate those trusty c-clamps really are. When you get to that point, it might time to check out these OpenSCAD hold down clamps from [ostat]. Thanks to its parametric nature, you can plug whatever dimensions you need into the script, and in a few seconds it will spit out an STL file for a bespoke clamp that you can print out and put to work.

Continue reading “OpenSCAD Cranks Out Parametric CNC Clamps”

An example of the case generated for a simple PCB, being shown in the OpenSCAD viewer

Turbocase Generates A PCB Shell For You

Our PCBs greatly benefit from cases – what’s with all the pins that can be accidentally shorted, connectors that stick out of the outline, and cables pulling the board into different directions. Designing a case for your PCB might feel like a fair bit of effort – but it likely isn’t, thanks to projects like turbocase from [Martijn Braam].

This script generates simple and elegant OpenSCAD cases for your KiCad PCBs – you only need to draw a few extra lines in the PCB Editor, that’s it. It makes connector openings, too – add a “Height” property to your connector footprints to have them be handled automatically. Oh, and there’s a few quality-of-life features – if your project has mounting holes, the script will add threaded-insert-friendly standoffs to the case; yet another argument for adding mounting holes to your boards, in case you needed more.

Installing the script is a single line, running it is merely another, and that will cover an overwhelming majority of boards out there; the code is all open too, of course. Want some more customization? Here’s some general project enclosure tutorials for OpenSCAD, and a KiCad-friendly StepUp tutorial. Oh, and of course, there’s many more ways to enclose PCBs – our own [Bob Baddeley] has written a guide to project enclosures that you are bound to learn new things from.

We thank [adistuder] for sharing this with us!