The Silent Dripper

The first revision of this project was shipped in November of 2020, but the subsequent redesign was commissioned and completed the following summer in 2021. This post primarily a journey through that second revision, and it’s publication comes some time after the deliverable was shipped to the client.

Engineering requirements that arrive downstream from artistic intent are my favorite constraints to work inside of. It forces the engineer to assume the role of the artist, considering the feelings and ideas that will be communicated to the audience with the piece. The engineer also has to become an audience member to understand other factors about how viewing will take place, if the environment will change such that the piece needs to respond in kind. The space in between these to roles needs to be projected into the standard space of product requirements, weights, tolerances, latencies etc. that are common in the profession.

As a part of my freelance practice, interdisciplinary artist Sara Dittrich and I recently collaborated on a series of projects, adding to our shared body of work. The most technically challenging part of these most recent works was a component of her piece called The Tender Interval. I urge you to go read her documentation on this project, there is a great video overview as well.

Two performers sit at a table across from each other, above them is an IV stand with two containers full of water. Embedded in the table are two fingerprint sensors, one for each of the people seated at the table. Performers place their hands on the table, with their index fingers covering the sensors. Each time their heart beats, their container emits a single drop of water, which falls from above them into a glass placed next to them on the table. Once their glass fills, they drink the water. Optionally, virtual viewers on twitch can take the place of the second performer by sending commands on twitch that deposit water droplets into the second glass.

Design and manufacture of table and this insert were completed by Sara Dittrich

The device responsible for creating the water droplets (the dripper) ended up being a very technically demanding object to create. The preeminent cause of this difficulty was the requirement that it operate in complete silence. Since the first showings of this piece were done virtually due to the pandemic, we were able to punt this problem and get the around noisy operating levels of V1 using strategic microphone placement. However, this piece would eventually be shown in a gallery setting, which would require totally silent operation.

The following is a feature overview and demonstration of the completed silent dripper:

If you’re interested in building one of these to add to your own projects, there is a github organization that contains the:

Per usual, please send along photos of rebuilds of this project. Submit PRs if you have improvements, or open issues if your run into problems along the way.

The rest of this post will be a deep dive into earlier iterations of this project, and an closer look at the design details and challenges of the final design. It’s easier to understand why a second iteration was needed after reviewing the shortcomings of version 1, so that’s where we’ll start.

Continue reading →

High performance GPU cooler for the NVIDIA Tesla K80

Here’s a (long winded) video overview of this project:


Rendered desperate for VRAM by a forthcoming stylegan-related project, I recently had to wade thermistor first into the concernedly hot and strange world of GPUs without video outputs to design a high performance cooler for the NVIDIA Tesla K80.

Too esoteric to game on, and too power hungry to mine cryptocurrencies with, the K80 (allegedly the ‘The World’s Most Popular GPU’) can be had for under $250 USD on ebay, a far cry from it’s imperial MSRP of $5000. By my math, the card is one of the most cost-efficient ways to avail one’s self of video ram by the dozen of gigabytes.

This sounds great on paper, but actually getting one of these configured to do useful work is a kind of a project in, and of itself. I’ll eventually get to this in the aforementioned upcoming post. Today’s topic however, is upstream of all that: the task of keeping these things cool.

Continue reading →

3D Printed Pen + Notebook Organizer

There have been a few posts on this blog about the functional benefits of using printed parts to join existing objects in a reliable and precise way. Most of the time my printed parts themselves look strange. The goals are usually printability and a clean assembly of printed and non-printed. As an attempt to buck this trend,  I recently designed and manufactured a desktop organizer that showcases the medium’s ability to bond objects and also look great.

Created as a birthday project for a family member, this piece is designed to poke fun at the concept of a desktop organizer. We’ll typically deploy this type of item in trying to declutter our workspaces, filing away assorted pens, paperclips, calculators etc. I actually created a really simple one some time ago to do just this, containing the mess rather than dealing with it.

This new design, however, is deliberately designed only to hold one type of pen and one type of notebook and absolutely nothing else. This denies the user the ability to create more chaos and enforces organization.

The pens and notebooks are a favorite brand of the recipient and myself.

I  printed the parts out of PLA. The green rim and white base are two different parts, held together with hot glue.

I printed the parts on my close-to-death Prusa i3 MK2S.


Thanks for reading! As this project was a gift I’m hesitant to release CAD like I typically do. However if you absolutely must have one, send me a note and we can work something out.

A 3D printed solution for storing a Valve Index on a wire shelf

Looking for a wall mounted version of the HMD mount? Check out this remix on thingiverse (thanks Sean)!

Here’s a video going over the design:

The printed parts can all be found on thingiverse here. Please let me know if you use any of these! I’d love to talk about potential improvements that could be made.

For fastening hardware, everything is available on McMaster:

This is most likely the shelf at the center of the design: I purchased it years and years ago, so things about the design could have changed. In any case, the pole hooks could be redesigned to fit almost any shelf.

Valve has done an amazing thing by publishing these files to GitHub for all of us to use. The existence of these files informed my decision to go with the index more than any of the technical specifications did. You should go star the repo if you enjoyed this video to show that Valve is doing a good thing by publishing these designs. The repo is here:

Here are some more photos showing additional angles of the printed parts:

This is the transcript used in the video. Thanks for reading:

Here’s my 3D printed solution for storing a Valve Index on a wire shelf.

It features:

  • A charging station for the knuckles.
  • Uniform support for the HMD that also protects against light damage without using lens covers.
  • A very sophisticated cable bucket
  • And strain relief for the connection between the HMD and my graphics card.

And is all way-way-way over-engineered.

The purpose of this video is to run through the design highlights for each of these components, but if you’re just interested in the CAD files there’s a link to a blog post with all of that and more in the description of this video.

Right… Let’s start with the HMD mount.

As I record this, the model that Valve published on GitHub was for the plastic piece that mates to the head mounted display, it did not include the cushion that sits on the user’s face.

Reason being is because the cushion piece is probably what Valve anticipates people wanting to re-design. So, for 99% of the reasons why you’d want this model in the first place, this is totally adequate. But in this case, trying to model an inverted version of the foam piece, there was a lot of guesswork involved, hundreds of hours of print time worth of guesswork.

Even once it was clear that the HMD was fitting correctly, it didn’t really “slot” into place the way it fits on my head.

That’s what the purpose of the “bubble” across the middle is. When loaded, the cushion material collects around the base of the bubble forcing a more concentric mate.

If you’re considering working on a project like I urge you to just copy this geometry. It’s really tough to get the feel of this part right.

The shelf part was much easier, I don’t know if I love the look of the ribs but they were quick to print and will be able to easily support the load over time.

The two components are held together with threaded inserts and m3 machine screws.

The next part I designed was the Knuckles slots.

The huge swept semicircle on the outside of the controller is amazing. It moves the center of gravity right to where it needs to be.

These controllers are without a doubt the most elegant way I’ve ever interacted with a machine. The sensors, motors batteries, every element of the design leap’s out of the way of the user’s experience.

This semicircle is also the basis for the slots on this part. It was a nice constant geometry that was easy to understand and model around.

Having these swept cuts continue through the base of the plate allows access to the USB ports. Conceptually, this keeps the front facing experience clean of wires, but my shelf is so busy with those anyways that it doesn’t really matter at all.

Next is what I’m calling “The Bucket”

Originally this was going to be something akin to a marine cleat, but that idea didn’t make it onto the printer and even saying that out loud at this point sounds kinda dumb.

Using a loose coil like this makes sure the cable doesn’t get kinked or twisted while in storage. It also comes out quickly when you have a few minutes between work calls.

The clamp at the bottom of the plate holds the PC side of the cable in place.

In my opinion, this is the part of the index’s design that could use the most improvement. It seems dangerous to have high end PCs connected without mechanical relief to people running away from headcrabs or dodging laser blasts.

This way the replaceable cable will get damaged before the graphics card or motherboard attached to it does.

The last part of the design is the pole hooks. These attach the plates for each of the other components to the wire rack.

The fitting took a few design iterations, the goal was to be able to install these by hand, but make it really difficult to remove so they wouldn’t fall off.

They’re angled away from the shelf, making the plates come out of the shelf which looks nice, and makes it easy to grab the peripherals.

Instead of two through holes to mate the two pieces together, I used a through hole and a slot here that provides a little bit of wiggle room to compensate for fitting problems shelf to shelf.

Also, I don’t know if the shelf I have is a standard size or anything, but having these pieces be discrete means all you’d have to do is re-design this part for your shelf rather than the whole system.

This part will also get used in other projects around the studio, I’ve been meaning to build a huge filament spool holder for a while and these will be able to provide the mechanical load for that no problem.

So that does it. Like I mentioned earlier, there’s a link to a blog post with the CAD files and links to the fastening hardware used in the build if this is something you’re interested in making yourself.

If you end up using these parts, particularly the HMD mount in another build let me know – it would be exciting to see.

If you don’t have a printer, shoot me a note and I’ll see if I can mail you some parts or something.

Alright! Thanks for watching!

Wall-Mounted Drybox for 3D Printing with Nylon

It’s well known that nylon based 3D printer filaments need to be dried out before they’re used. What happens though when you have a 30+ hour print? The spool can take on a lot of moisture in that amount of time and compromise the print.

Many people have solved this problem by making filament dryboxes, somewhat airtight containers that contain a desiccant to dry out the air inside of the chamber.

I have to print several large parts from nylon for client, and I was having trouble in the last hours of the print due to the spool taking on water from the air. I decided to build one of these chambers but with a twist:


Mine is wall mounted! Space in my lab is a premium and the walls are free real estate.

The parts for this build is are available on my Thingiverse page. Oh and if you’re curious, I’m using a wall-outlet-rechargeable desiccant pack from Amazon which I got for $15.

The bolts are M3x10mm, and the nuts are M3 nuts, both from McMaster Carr.

Thanks for reading!

#goodprints – Episode #1

Here’s a video:

For a while I’ve been logging my favorite prints here but some of them are two small to warrant a post. So introducing: #goodprints! At first I’m going to shoot for monthly installments, but as I print more, I’ll post more.

This time we’ve got 3 prints in the above video. Here are the details:

Raspberry Pi Wire Shelf Mount – Everyone knows that wire shelves are the best. Now you can securely mount a Raspberry Pi to one. Thingiverse Link

Here is the drawing for mating with the shelf:

Wallet, Keys & Leatherman Wall Mount – I’m constantly loosing these things in my lab, now they’re not going anywhere. Thingiverse Link

Wall Hook – This is for mounting stuff like filament spools, wire, and tape to the wall. It accepts 3/4 inch dowels. There are two version, one 85mm long and one 150mm long (designed to fit hatchbox 1kg filament spools). Thingiverse Link

Hey! This post was written a long time ago, but I'm leaving it up on the off-chance it may help someone. Proceed with caution. It may not be a good idea to blindly integrate this code or work into your project, but instead use it as a starting point.

#codehell 2 – THERMAL RUNAWAY Errors on Prusa i3 MK2 3D Printer

This time we’re trying to work through a hardware bug!

Without warning, my printer would stop it’s current print and display “THERMAL RUNAWAY” on the display screen:

This would happen once every couple of prints or so.

According Prusa’s Docs a common cause of this is problems with the thermistor connection. They show a graph that has very erratic readings from the sensor:

 This seemed like a good place to start so I re-seated the connector and used octoprint to generate my own graph:

No erratic readings, the temp would drop off and then start heating back up.

The problem ended up being the connection between the terminal lug and the wire on the heater in the hotend. To fix this, I cut off the crimp lug and stripped away some insulation. I put this into the screw terminal block. I’ve done a couple of prints and had no issues after making this modification.

Hey! This post was written a long time ago, but I'm leaving it up on the off-chance it may help someone. Proceed with caution. It may not be a good idea to blindly integrate this code or work into your project, but instead use it as a starting point.

Singer Parts Drawer Holder

I use these Akro-Mils 10144 D sets of drawers to keep my various electronics components organized. They’re cheap, reasonable quality, but most importantly inexpensive.


Something that I find myself doing a lot is transferring individual drawers around. For example, I have a specific drawer that holds short jumper wires for breadboards. Sometimes I bring this drawer up to campus for working in the lab. Same goes for my misc-resistor drawer. It’s much easier to move the drawer rather than re-packing it.

The problem is that these are open drawers! They don’t have lids, so what I’ll do is put it in a ziplog bag and throw it into my backpack. This is a bad solution, I have a 3D printer, time to get CADing.

I wanted the drawer to be able to lock in place, so it wouldn’t slide out of the holder while in transit, here is a video of the locking mechanism in action:

As I iterated on this design, it became clear that I could get away with a pretty thin wall thickness, and that extending the slot cut made it much much easier to flex the locking mechanism, so the grab point on the outer surface became unnecessary.

Annoyingly, I couldn’t figure out a good solution to be able to use this part without having to use supports.

Here is the Thingiverse Link

If you’re interested, I’m keeping a page of all of my prints. You can find it here.

Hey! This post was written a long time ago, but I'm leaving it up on the off-chance it may help someone. Proceed with caution. It may not be a good idea to blindly integrate this code or work into your project, but instead use it as a starting point.

Tiny Apartment Improvement Project – Wire Shelf Keyboard Holder

I recently purchased a Prusa i3 MK2 and it is glorious. The price was right, the assembly was straightforward and the print quality is probably better than I will ever need. After printing the requisite amount of dogs and other figurines, it’s time to start using this tool to improve my life.

Keyboard Shelf

I store a lot of my equipment on wire shelves. They’re cheap, easy to move around, and pretty strong. They can hold a lot of stuff, which means I keep a lot on them, and space, much like in the rest of my apartment, is limited. The server that is hosting this webpage lives on one of these shelves, and sometimes I have to manually work on it with a keyboard and monitor. It is a pain to have to dig out a keyboard, but it’s also not worth it to have a keyboard permanently on the shelf taking up space. That desire to maximize space is the motivation behind this project.

Here is the thingiverse page for this project with the parts, if you end up building or modifying it, let me know!

I’ve also added a page on this blog for holding more of my work with 3D printing, this will get fleshed out more as time goes on.

Hey! This post was written a long time ago, but I'm leaving it up on the off-chance it may help someone. Proceed with caution. It may not be a good idea to blindly integrate this code or work into your project, but instead use it as a starting point.