Blender screen with CAD drawing

CAD Sketcher, It’s Parametric CAD For Blender

It’s very early days for CAD Sketcher, a new parametric CAD add-on for Blender by [hlorus], but it looks very promising.

We do a lot of 3D work and like Blender as an environment. It’s always annoying that Blender doesn’t do parametric modeling, so we’re forced into a dedicated CAD package. Blending the two for that robot ocelot is always particularly annoying.

CAD Sketcher lets the user make a ‘sketch’, a 2D drawing. They then  constrain it, saying “this line is vertical, that line is parallel to this one”, until the sketch is fully defined. It’s a normal part of parametric modelling. This is powerful when your model needs refined over and over.

There’s an old adage, “Better a tool that does 90% of the job well than one that does 100% poorly”. For CAD systems, (and much other software), we’d suggest “Better a tool that does 90% of the job well and works with whatever does the other 10%”.

3D render of gaurd
Guard Drawn In CAD Sketcher And Blender

We tried a test part, and being in Blender’s universe showed its value. CAD Sketcher doesn’t do bevels and rounds yet, and probably won’t for a while. But Blender’s perfectly happy doing them.

It’s not going to put SolidWorks out of business any time soon, but it’s a very promising new development. We hope it gathers some community and encourage contributions.

We cover CAD frequently, like the recent advances with CadQuery  and the port of OpenSCAD to WASM.

[thanks paulvdh]

Continue reading “CAD Sketcher, It’s Parametric CAD For Blender”

REMOTICON 2021 // Jay Doscher Proves Tinkercad Isn’t Just For Kids

We invited [Jay Doscher] to give us a view into his process designing 3D printed parts for the impressive array of cyberdecks we’ve covered since 2019.

[Jay] got his start as a maker through woodworking in high school, getting satisfaction from bringing something from idea to reality. After a more recent class in blacksmithing and ax-making showed him what he could do when really focused, his hardware hacking really took off and his line of cyberdecks and other portable computers was born.

If you’ve heard of Tinkercad, you probably think it’s just for kids. While designed as an educational tool, [Jay] found that Autodesk’s younger sibling to the professionally powered (and priced) Fusion 360 had everything needed for making cyberdecks. If you’re willing to work around a few limitations, at the low-low price of free, Tinkercad might be right for you too.

What limitations? To start, Tinkercad is only available in a browser and online. There’s also no guarantee that it will remain free, but [Jay] notes that with its educational focus that is likely to remain the case. There is no library of common components to import while modeling. And, when your model is complete the options for exporting are limited to 2D SVGs and 3D STL, OBJ, and gaming-focused GBL formats. [Jay] has converted those to other formats for laser cutting and the STEP file a machine shop is expecting but admits that it’s something that adds complexity and is an annoyance.

back7-TinkerCad-Alignment

In the talk, [Jay] discusses moving from his initial “cringy” explorations with Tinkercad, to his first cyberdeck, a little history on that term, and the evolution of his craft. It’s mostly a hands-on demo of how to work with Tinkercad, full of tips and tricks for the software itself and implications for 3D printing yourself, assembly, and machining by others.

While quite limited, Tinkercad still allows for boolean operations to join two volumes or the subtraction of one from another. [Jay] does a wonderful job of unpeeling the layers of operations, showing how combinations of “solids” and “holes” generated a complex assembly with pockets, stepped holes for fasteners, and multiple aligned parts for his next cyberdeck. Even if you already have a favorite CAD tool, another approach could expand your mind just like writing software in Strange Programming Languages can.

Continue reading “REMOTICON 2021 // Jay Doscher Proves Tinkercad Isn’t Just For Kids”

Do You Need A Cycloidal Drive?

A cycloidal gear drive is one of the most mesmerizing reduction gears to watch when it is running, but it’s not all just eye-candy. Cycloidals give decent gearing, are relatively compact and back-drivable, and have low backlash and high efficiency. You probably want one in the shoulder of your robot arm, for instance.

But designing and building one isn’t exactly straightforward. Thanks, then, to [How To Mechatronics] for the lovely explanation of how it works in detail, and a nice walkthrough of designing and building a cycloidal gear reducer out of 3D printed parts and a ton of bearings. If you just want to watch it go, check out the video embedded below.

The video is partly an ad for SolidWorks, and spends a lot of time on the mechanics of designing the parts for 3D printing using that software. Still, if you’re using any other graphical CAD tool, you should be able to translate what you learned.

It’s amazing that 3D printing has made sophisticated gearbox designs like this possible to fabricate at home. This stuff used to be confined to the high-end machine shops of fancy robotics firms, and now you can make one yourself this weekend. Not exotic or unreliable enough for you? Well, then, buy yourself some flexible filament and step on up to the strain wave, aka “harmonic drive”, gearbox.

Thanks to serial tipster [Keith] for the tip!

Continue reading “Do You Need A Cycloidal Drive?”

Keycap Customizer Brings All Your Caps To The Board

With bright colors and often intricate designs, after the physical shape of a keyboard the most conspicuous elements are surely the keycaps. Historically dictated by the stem of the key switch it attaches to, keycaps come in a variety of sizes, colors, profiles, and designs. As they necessarily include small features with tight tolerances to fit the stem of their key switch, injection molding is the classic manufacturing technique for a keycap. But as hobbyist 3D printing matures and resin printers become more accessible, home keycap manufacturing is increasingly good option. Instead of designing each cap by hand, consider trying [rsheldiii]’s KeyV2 OpenSCAD script to create custom caps with ease.

To cover the basics, KeyV2 can generate full keycap sets with Cherry or Alps stems, in the SA, DSA, DCS profiles (and more!) for any typically sized keyboard. Generating a particular cap of arbitrary profile, position, and size is just a short chain of function calls away. But standard keycap sets aren’t the highlight of this toolset.

If you’re not an OpenSCAD aficionado yet, visit [Brian Benchoffs] great getting-started guide or our other coverage to get a feel for what the tool can do. Part of OpenSCAD’s attraction is that it is the the paragon of parametric modeling. It’s declarative part files ensure that no parameter goes undefined, which is a perfect fit for KeyV2.

The root file upon which all caps are based on has about 150 keycap parameters which can be tweaked, and that’s before more elaborate customization. Making simple “artisan” caps is a snap, as the magic of OpenSCAD means the user can perform any Boolean operations they need on top of the fully parameterized keycap. Combining an arbitrary model with a keycap is one union() away. See the README for examples.

For the prospective user of KeyV2 worried about complexity; don’t be, the documentation is a treat. Basic use to generate standard keycaps is simple, and there are plenty of commented source files and examples to make more complex usage easy. Thinking about a new keyboard? Check out our recent spike in clacky coverage.

Try NopSCADlib For Your Next OpenSCAD Project

Most readers of this site are familiar by now with the OpenSCAD 3D modeling software, where you can write code to create 3D models. You may have even used OpenSCAD to output some STL files for your 3D printer. But for years now, [nophead] has been pushing OpenSCAD further than most, creating some complex utility and parts libraries to help with modeling, and a suite of Python scripts that generate printable STLs, laser-ready DXFs, bills of material, and human-readable assembly instructions complete with PNG imagery of exploded-view sub-assemblies.

Recently [nophead] tidied all of this OpenSCAD infrastructure up and released it on GitHub as NopSCADlib. You can find out more by browsing through the example projects and README file in the repository, and by reading the announcement blog post on the HydraRaptor blog. Some functionality highlights include:

  • a large parts library full of motors, buttons, smooth rod, et cetera
  • many utility functions to help with chamfers, fillets, precision holes, sub-assemblies, and BOM generation
  • Python scripts to automate the output of STLs, DXFs, and BOMs
  • automatic creation of documentation from Markdown embedded in your OpenSCAD files
  • automatic rendering of exploded subassemblies

All that’s missing is a nice Makefile to tie it all together! Try it out for your next project if you – like us – get giddy at the thought of putting your 3D projects into version control before “compiling” them into the real world.

We’ve discussed some complex OpenSCAD before: Mastering OpenSCAD Workflow, and An OpenSCAD Mini-ITX Computer Case.

Ask Hackaday: Help Me Pick A CAD Package

Of all the skills that I have picked up over the years as an engineer, there is one that has stayed with me and been a constant over the last three decades. It has helped me work on electronic projects, on furniture, on car parts, robots, and even garments, and it is likely that I will continue using it periodically for the rest of my career. You see, I am a trained PAD expert.

Don't build this, it's fundamentally flawed! Sometimes the front of an envelope is as effective as its back.
Don’t build this, it’s fundamentally flawed! Sometimes the front of an envelope is as effective as its back.

PAD, you ask? OK, it’s an acronym of my own coinage, it stands for Pencil Aided Design, and it refers to the first-year undergraduate course I sat many years ago in which I learned technical drawing to the old British standard BS308. If I’m making something then by far the quickest way for me to visualise its design is to draw it, first a freehand sketch to get a feel of how everything will sit, then a series of isometric component drawings on graph paper with careful attention to dimensions and angles. Well, maybe I lied a little there, the graph paper only comes in when I’m doing something very fancy; the back of an envelope is fine as long as the dimensions on the diagram are correct.

Continue reading “Ask Hackaday: Help Me Pick A CAD Package”

Ditch OpenSCAD For C++

There’s an old saying that a picture is worth a thousand words. If you’ve ever tried to build furniture or a toy with one of those instructions sheets that contains nothing but pictures, you might disagree. 3D design is much the same for a lot of people. You think you want to draw things graphically, but once you start doing complex things and making changes, parametric modeling is the way to go. Some CAD tools let you do both, but many 3D printer users wind up using OpenSCAD which is fully parametric.

If you’ve used OpenSCAD you know that it is like a simple programming language, but with some significant differences from what you normally use. It is a good bet that most Hackaday readers can program in at least one language. So why learn something new? A real programming language is likely to have features you won’t find readily in OpenSCAD that, in theory, ought to help with reuse and managing complex designs.

I considered OpenJSCAD. It is more or less OpenSCAD for JavaScript. However, JavaScript is a bit of a scripting language itself. Sure, it has objects and some other features, but I’m more comfortable with C++. I thought about using the OpenCSG library that OpenSCAD uses, but that exposes a lot of detail.

Instead, I turned to a project that uses C++ code to generate OpenSCAD output, OOML (the Object Oriented Mechanics Language)). OpenSCAD does the rendering, exporting, and other functions. Unfortunately, the project seems to have stalled a few years back and the primary web-based documentation for it seems to be absent. However, it is very usable and if you know how to find it, there is plenty of documentation available.

Why not OpenSCAD?

Continue reading “Ditch OpenSCAD For C++”