How To Build Anything Using Delrin And A Laser Cutter

Need a simple fab process to go from a humble vector graphic to a final part — in a matter of minutes? The CO2  laser cutter might be the right choice. As these tools open themselves up to widespread use through hackerspaces, I decided to give Delrin some well-deserved time under the spotlight.

The laser cutter yet-again proves itself a formidable tool with the construction of GameCube-Bot V2

This guide is a brief collection of tips and techniques that I’ve either learned from others or discovered on my own over the last couple years working with laser-cut Delrin (a.k.a Acetal) for functional prototypes. I hope this guide serves you well as we keep exploring the limits of the material.

As a disclaimer, keep in mind that in no way are these techniques unique or limited to Delrin. Many are not only years old but also common practice in either engineering design or the local machine shop. This article simply highlights the techniques shown here that perform both repeatably and predictably with Delrin and a couple hand-tools, and I hope to share them with a growing audience of laser cutter enthusiasts.

Continue reading “How To Build Anything Using Delrin And A Laser Cutter”

Learn 3D Modeling In Your Browser

If you have a 3D printer, it is a good bet you’ve at least seen or heard of Tinkercad. There’s pros and cons to doing your design in a Web browser, but Tinkercad is very easy to use and great for making simple objects. However, there are other 3D object designers you can use in your browser, too. Tinkercad is just the one that everyone seems to know about.

I won’t talk much about Tinkercad, but if you haven’t tried it, it is well worth a look. It has a simple system of drawing things and holes. When you merge holes with things you can make lots of shapes. The alignment tools are good, and since Autodesk acquired them (part of its 123d app suite), it isn’t likely they will go under any time soon (which, as you may remember, almost happened).

If you are designing some great new secret invention you may shy away from cloud-based design programs. But if you are printing out key chains with your coworker’s cat’s name on it, do you really care? Most of these cloud-based programs will work from any computer so you can quickly do a design in a coffee shop and then go home and print it.

Continue reading “Learn 3D Modeling In Your Browser”

Firmware Factory: Bit Fields Vs Shift And Mask

Working with embedded systems usually involves writing code which will interface with hardware. This often means working on the register level. It doesn’t matter if we’re talking about a UART, an analog to digital converter, an LCD controller, or some other gizmo. Sooner or later, you’re going to have to break out the datasheets and figure out how to talk to an external device. To succeed at this you must become a master of bit manipulation.

Hardware designers don’t like wasting space, so modes, settings and other small pieces of information are often stored as packed bits. Our processors usually access things a byte (or a word) at a time, so what is the best way to handle this? Like so many other topics in software engineering, there are multiple ways to skin this cat. In C (and its derivatives) there are two major options: shift and mask, and bit fields.

Continue reading “Firmware Factory: Bit Fields Vs Shift And Mask”

Learning Verilog For FPGAs: Hardware At Last!

Getting into FPGA design isn’t a monolithic experience. You have to figure out a toolchain, learn how to think in hardware during the design, and translate that into working Verliog. The end goal is getting your work onto an actual piece of hardware, and that’s what this post is all about.

In the previous pair of installments in this series, you built a simple Verilog demonstration consisting of an adder and a few flip flop-based circuits. The simulations work, so now it is time to put the design into a real FPGA and see if it works in the real world. The FPGA board we’ll use is the Lattice iCEstick, an inexpensive ($22) board that fits into a USB socket.

Like most vendors, Lattice lets you download free tools that will work with the iCEstick. I had planned to use them. I didn’t. If you don’t want to hear me rant about the tools, feel free to skip down to the next heading.

Continue reading “Learning Verilog For FPGAs: Hardware At Last!”

You Own Your MRI Brainscan; Do Something Interesting With It

The most complicated and fascinating gadget you will ever own is your brain. Why not pay tribute to this wonder by creating a 3D scale model that you can print yourself? If you have had a full-head MRI scan, it is simple to take this data and create a 3D model that you can print out on any 3D printer. Here’s how to print your brain.

To begin, you are going to need an MRI scan. Unfortunately, the low-field MRI that [Peter Jansen] is working on won’t quite cut it (yet): you’ll have to get the pros to do it. The type of scan also matters, because we want a scan that focusses in on the brain itself, not the bits around it. What type you get depends on what your doctor wants to know, as the radiologist can run a lot of different scans and analysis of the data to show different types of tissue. After looking through the scans that I got, I settled on one that was labelled eB1000i(BRAIN) With and Without Contrast. To a radiologist, that information means a lot, telling you what type of scan it is, and that it was done with a contrast agent, a metal dye that is injected to make water-rich tissues (like my brain) more visible. The number refers to something called the diffusion weighting, which helps the doctor look for swelling that can indicate things like strokes, tumors, etc. There’s a good guide to some of the jargon here.

Continue reading “You Own Your MRI Brainscan; Do Something Interesting With It”

Learning Verilog For FPGAs: Flip Flops

Last time I talked about how to create an adder in Verilog with an eye to putting it into a Lattice iCEstick board. The adder is a combinatorial circuit and didn’t use a clock. This time, we’ll finish the demo design and add two clocked elements: a latch that remembers if the adder has ever generated a carry and also some counters to divide the 12 MHz clock down to a half-second pulse to blink some of the onboard LEDs.

Why Clocks?

Clocks are an important part of practical digital design. Suppose you have a two input AND gate. Then imagine both inputs go from zero to one, which should take the output from zero to one, also. On paper, that seems reasonable, but in real life, the two signals might not arrive at the same time. So there’s some small period of time where the output is “wrong.” For a single gate, this probably isn’t a big deal since the delay is probably minuscule. But the errors will add up and in a more complex circuit it would be easy to get glitches while the inputs to combinatorial gates change with different delays.

Continue reading “Learning Verilog For FPGAs: Flip Flops”

Learning Verilog For FPGAs: The Tools And Building An Adder

Over the last year we’ve had several posts about the Lattice Semiconductor iCEstick which is shown below. The board looks like an overgrown USB stick with no case, but it is really an FPGA development board. The specs are modest and there is a limited amount of I/O, but the price (about $22, depending on where you shop) is right. I’ve wanted to do a Verilog walk through video series for awhile, and decided this would be the right target platform. You can experiment with a real FPGA without breaking the bank.

In reality, you can learn a lot about FPGAs without ever using real hardware. As you’ll see, a lot of FPGA development occurs with simulated FPGAs that run on your PC. But if you are like me, blinking a virtual LED just isn’t as exciting as making a real one glow. However, for the first two examples I cover you don’t need any hardware beyond your computer. If you want to get ready, you can order an iCEstick and maybe it’ll arrive before Part III of this series if published.

Continue reading “Learning Verilog For FPGAs: The Tools And Building An Adder”