Zero To Custom MacroPad In 37 Easy Steps

[Jeremy Weatherford] clearly has a knack for explaining projects well enough for easy reproduction but goes way further than most and has created a four-part YouTube series detailing every step from project inception to the final assembly, covering all aspects of 3D modelling and PCB design for a custom MacroPad design. Many tools are introduced along the way, all of which help reduce complexity and, by extension, the scope for errors. As every beginner hacker knows, early successes breed confidence and make for better and more ambitious projects.

Part 1 covers the project motivation and scope and introduces a keyboard layout editor tool. This tool allows one to take a layout idea and generate a JSON file, which is then used to drive keyboard tools. XYZ to produce a usable KiCAD project. The tool only generates a PCB project and an associated netlist file. No schematic is created; you don’t need one for a simple layout.

A very basic keyboard layout

Part 2 is a walkthrough of the design process in KiCAD, culminating in ordering the PCB from JLCPCB and assembling the surface-mount parts. This particular design uses a controller based on the Sea-Picro RP2040 module, but there are many options if you have other preferences. [Jeremy] shows what’s possible with the selected suppliers, but you need not follow this step precisely if you have other ideas or want to use someone local.

Part 3 covers exporting the mechanical aspects of the PCB out of KiCAD and into a 3D CAD program, specifically OnShape. [Jeremy] covers some crucial details, such as how to read the mechanical drawing of the keys to work out where to place the top plate. It’s very easy to plough straight in at this stage and make a design which cannot be assembled! The plan is to use a simple laser-cut box with a bottom plate with mounting holes lining up with those on the PCB. A Top plate is created by taking the outline of the PCB and adding a little margin. An array of rectangular cutouts are designed for the keys to protrude, lining up perfectly with where the keys would be when mounted on the PCB below.  The sides of the case are formed from laser-cut sections that lock into each other and the laser-cut base—using the laser joint feature-script addon tool from the OnShape community channel. A second feature script addon is used to auto-layout the laser-cut components onto a single sheet. A CAM application called Kiri Moto is used to export for laser cutting and is available on the OnShape store.

Continue reading “Zero To Custom MacroPad In 37 Easy Steps”

CADmium Moves CAD To The Browser

For plenty of computer users, the operating system of choice is largely a middleman on the way to the browser, which hosts the tools that are most important. There are even entire operating systems with little more than browser support, under the assumption that everything will be done in the browser eventually. We may be one step closer to that type of utopia as well with this software tool called CADmium which runs exclusively in a browser.

As the name implies, this is a computer-aided design (CAD) package which looks to build everything one would need for designing project models in a traditional CAD program like AutoCAD or FreeCAD, but without the burden of needing to carry local files around on a specific computer. [Matt], one of the creators of this ambitious project, lays out the basic structure of a CAD program from the constraint solver, boundary representation (in this case, a modern one built in Rust), the history tracker, and various other underpinnings of a program like this. The group hopes to standardize around JSON files as well, making it easy to make changes to designs on the fly in whatever browser the user happens to have on hand.

While this project is extremely early in the design stage, it looks like they have a fairly solid framework going to get this developed. That said, they are looking for some more help getting it off the ground. If you’ve ever wanted something like this in the browser, or maybe if you’ve ever contributed to the FreeCAD project and have some experience, this might be worth taking a look at.

Throw FreeCAD Some Curves

[Mango Jelly] got a question from someone trying to model a phone box with a complex curved roof. We have to admit that when we saw it, we knew it would be hard to model well. Naturally, there are several ways it could be one, but [Mango Jelly] used the curves workbench in FreeCAD to produce a wireframe of the shape, and you can see how that works in the video below.

The curve bench didn’t sound familiar to us, and that’s because it is an add-on workbench. He starts with a sketch of a curve, constrained to be symmetrical. Then the draft workbench allowed a rotation to convert the curve into a nice skeleton of the curved roof.

The curves workbench can create a Gordon surface over that skeleton. You can extrude that into a solid object. There are still some details to add, though, and you’ll see how each part of the roof takes shape.

Watching videos like this reminds us that we use a small fraction of what FreeCAD can do. You’ll probably pick up at least one tip from this video. If you need a quick basic tutorial, try the one from [NovaSpirit]. Or, try a longer one.

Continue reading “Throw FreeCAD Some Curves”

Enhance Your Enclosures With A Shadow Line

Some design techniques and concepts from the injection molding world apply very nicely to 3D printing, despite them being fundamentally different processes. [Teaching Tech] demonstrates designing shadow lines into 3D printed parts whose surfaces are intended to mate up to one another.

This is a feature mainly seen in enclosures, and you’ve definitely seen it in all kinds of off-the-shelf products. Essentially, one half of the part has a slight “underbite” of a rim, and the other half has a slight “overbite”, with a bit of a standoff between the two. When placed together, the combination helps parts self-locate to one another, as well as providing a consistent appearance around the mating surfaces.

Why is this necessary? When a plastic part is made — such as an enclosure in two halves — the resulting surfaces are never truly flat. Without post-processing, the two not-quite-flat surfaces result in an inconsistent line with a varying gap between them.

By designing in a shadow line, the two parts will not only self-locate to each other for assembly, but will appear as a much more consistent fit. There will be a clear line between the two parts, but no actual visible gaps between them. Watch the whole thing explained in the video, embedded below.

This isn’t the only time design techniques from the world of injection molding have migrated to 3D printing. Crush ribs have been adapted to the world of 3D printed parts and are a tried-and-true solution to the problem of reliably obtaining a tight fit between plastic parts and hardware inserts.

Continue reading “Enhance Your Enclosures With A Shadow Line”

Splitting 3D Prints Into Parts Can Add Strength

One of the great things about 3D printers is their ability to make a single part all at once. Separating a part into multiple pieces is usually done to split up objects that are too big to fit on the 3D printer’s print bed. But [Peter] at Markforged (manufacturers of high-end 3D printers) has a video explaining another reason: multi-part prints can benefit from improved strength.

This part can be easily printed as a single piece, but it can be made nearly twice as strong when printed as two, and combined.

The idea is this: filament-based 3D printers generally create parts that are strongest along their X-Y axis (relative to their manufacture) and weakest in the Z direction. [Peter] proposes splitting a part into pieces with this in mind. Not because the part is inconveniently large or has tricky geometry, but so the individual pieces can be printed in orientations that provide the best mechanical strength.

This is demonstrated with the simple part shown here. The usual way to print this part would be flat on a print bed, but by splitting the parts into two and printing each in their optimal orientation, the combined part withstands nearly twice as much force before failing.

[Peter]’s examples use Markforged’s own filaments, but gives advice on more common polymers as well and the same principles apply. This idea is one worth keeping in mind the next time one is seeking to optimize strength. because of how simple it is.

We’ve seen a variety of methods to toughen up or ruggedize prints in the past, but they’re usually more complex (or at least messier.) Examples include embedding braided steel cable, embedding fiberglass mesh, applying electroplating to a printed structure, and plain old embedding some bolts and washers to buffer load-bearing areas.

Continue reading “Splitting 3D Prints Into Parts Can Add Strength”

FreeCAD Is Simple, According To This Tutorial

Remember learning to tie your shoes or ride a bike? Like many things, that’s easy once you know how to do it, but seems impossible before you learn. [NovaSpirit] asserts that Freecad is simple, and provides a simple walkthrough to create a part in the video below.

If this were riding a bike, this tutorial would be akin to watching someone ride a bike to pick up tips. You’d probably still want to have someone explain details to you before you attempt it yourself.

Continue reading “FreeCAD Is Simple, According To This Tutorial”

You Can 3D Print A 12,500 RPM Brushless Motor

Typically, when most of us need a motor, we jump online to order one from a catalogue. [Levi Janssen] recently had to build his own for a college project, however, and learned a lot along the way.

[Levi] whipped up his brushless DC motor design in OnShape. The motor has six coils in the stator, with the rotor carrying eight neodymium magnets. It’s an axial flux design, with the rotor’s magnets sitting above the coils. This makes construction very easy using 3D printed components. Axial flux motors also have benefits when it comes to power density and cooling, though optimization is outside the scope of [Levi]’s work here.

[Levi]’s video covers both the development of the motor itself as well as the drive circuit, too. The latter is of key value if you’re interested in the vagaries of driving these motors, which is far more complex than running a simple brushed motor. He even gets his motor up to 12,500 rpm with his homebrewed drive circuit.

Making your own motors can help you solve some difficult engineering challenges, like building motorized rollerblades. Alternatively, if winding coils sounds too slow and too hard, you can just use off-the-shelf gear and hack it to make it work. Here, we support both methods.

Continue reading “You Can 3D Print A 12,500 RPM Brushless Motor”