Fabricate Your Own Tabletop Gaming Props

Delve into the mysterious world of tabletop roleplaying games. Warhammer Fantasy Roleplay, Shadowrun, Pathfinder, Ars Magica, Vampire, whatever gets your dice rollin’ — metaphorically in the case of a diceless system. This might very well be your daddy’s D&D. If you’re not a gamer, you’re certainly familiar with the concept. People sit around a table pretending to have an epic adventure, often adding a random element with the help of dice. A map is often displayed on the table, sized for figures that show the various heroes and villains.

As a person with access to a variety of CNC machines …read more

Continue reading Fabricate Your Own Tabletop Gaming Props

Linux-Fu: Running Commands

One of the things that makes Linux and Unix-like systems both powerful and frustrating is that there are many ways to accomplish any particular goal. Take something simple like running a bunch of commands in sequence as an example. The obvious way is to write a shell script which offers a tremendous amount of flexibility. But what if you just want some set of commands to run? It sounds simple, but there are a lot of ways to issue a sequence of commands ranging from just typing them in, to scheduling them, to monitoring them the way a mainframe computer …read more

Continue reading Linux-Fu: Running Commands

A Crash Course in Thingiverse Customizer

OpenSCAD is a great way to create objects for 3D printing (or other purposes), especially if you are already used to programming. For things like front panels, it is great because you can easily make modifications and — if you wrote your code correctly–everything will just adjust itself to new positions.

However, what if you have a general-purpose piece of code, and you want people to have the ability to customize it? For example, consider this code:

$fn=100;
difference()
{
  cube([25,25,5]);
  translate([4,4,-1]) cylinder(h=7,r=2);
  translate([25-4,4,-1]) cylinder(h=7,r=2);
  translate([4,25-4,-1]) cylinder(h=7,r=2);
  translate([25-4,25-4,-1]) cylinder(h=7,r=2);
}

That creates the plate with four drill holes you see …read more

Continue reading A Crash Course in Thingiverse Customizer

Panelizing Boards The Easy Way

For reasons that will remain undisclosed until some time in the future, I recently had a need to panelize a few PCBs. Panelization is the art of taking PCB designs you already have, whether they’re KiCad board files, Eagle board files, or just Gerbers, and turning them into a single collection of PCBs that can be sent off to a fab house.

If you’re still wondering what this means, take a look at the last board you got from OSH Park, Seeed, Itead, or Dirty PCBs. Around the perimeter of your board, you’ll find some rough spots. These are ‘mouse …read more

Continue reading Panelizing Boards The Easy Way

Improving Mister Screamer; an 80 Decibel Filament Alarm

I created a prototype 3D printer filament alarm that worked, but the process also brought some new problems and issues to the surface that I hadn’t foreseen when I first started. Today I’m going to dive further into the prototyping process to gain some insight on designing for a well-specified problem. What I came up with is an easy to build pendant that passively hangs from the filament and alerts you if anything about that changes.

I began with a need to know when my 3D printer was out of filament, so that I could drop whatever I was doing …read more

Continue reading Improving Mister Screamer; an 80 Decibel Filament Alarm

How to Build Your Own Google AIY without the Kit

Google’s voice assistant has been around for a while now and when Amazon released its Alexa API and ported the PaaS Cloud code to the Raspberry Pi 2 it was just a matter of time before everyone else jumped on the fast train to maker kingdom. Google just did it in style.

Few know that the Google Assistant API for the Raspberry Pi 3 has been out there for some time now but when they decided to give away a free kit with the May 2017 issues of MagPi magazine, they made an impression on everyone. Unfortunately the world has …read more

Continue reading How to Build Your Own Google AIY without the Kit

Music Reading for Machines

“Dammit Jim, I’m a hacker, not a musician!”, to paraphrase McCoy Scotty from the original Star Trek series. Well, some of us are also musicians, some, like me, are also hack-musicians, and some wouldn’t know a whole note from a treble clef. But every now and then the music you want is in the form of sheet music and you need to convert that to something your hack can play. If you’re lucky, you can find software that will read the sheet music for you and spit out a MIDI or WAV file. Or, as with my hand-cranked music player, …read more

Continue reading Music Reading for Machines

The Textile Bench

What’s on your bench? Mine’s mostly filled with electronic test equipment, soldering kit, and computers. I’m an electronic engineer by trade when I’m not writing for Hackaday, so that’s hardly surprising. Perhaps yours is like mine, or maybe you’ve added a 3D printer to the mix, a bunch of woodworking tools, or maybe power tools.

So that’s my bench. But is it my only bench? On the other side of the room from the electronics bench is a sturdy folding dining table that houses the tools and supplies of my other bench. I’m probably not alone in having more than …read more

Continue reading The Textile Bench

Stupid Git Tricks

My apologies if you speak the Queen’s English since that title probably has a whole different meaning to you than I intended. In fact, I’m talking about Git, the version control system. Last time I talked about how the program came to be and offered you a few tutorials. If you are a dyed-in-the-wool software developer, you probably don’t need to be convinced to use Git. But even if you aren’t, there are a lot of things you can do with Git that don’t fit the usual mold.

Tracking Documents

Git is really good at tracking changes in documents. If …read more

Continue reading Stupid Git Tricks

KiCAD Best Practices: Library Management

One common complaint we hear from most new KiCAD users relates to schematic and footprint libraries. The trick is to use just one schematic symbol and footprint library each with your project. This way any changes to the default schematic libraries will not affect your project and it will be easy to share your project with others without breaking it. I’ve spent some time refining this technique and I’ll walk you through the process in this article.

We have covered KiCAD (as well as other) Electronic Design Automation (EDA) tools several times in the past. [Brian Benchoff] did a whole …read more

Continue reading KiCAD Best Practices: Library Management