My bath has – well, had – a push-action bath which would seal when pushed down and unseal when pushed again. Over-engineered crap like this is bugbear of mine. An old-fashioned plug or tap is intuitive to use, and very grabbable in a Gaudi-like way. My experience of modern ‘bathroom innovation’ is just bad UX. The prime example of this was a tap in a restaurant bathroom which had a plain cube on top. Should I turn it or push it? Nope, I tilt it. Naturally.
These designs just add entropy to the universe; they fuel consumer insanity and replace old wisdoms with trends. Case in point, the push-plug in my bathroom was a nightmare to clean and eventually broke off. My bachelor solution for the past week was to simply tape over the hole with gaffa, which works surprisingly well!
Today I thought it would be a good bit micro-DIY to make a new one and test my 3D printing skills. I cracked open a Jupyter notebook and wrote the following.
from solid import *
handle_top_radius = handle_diameter / 2
handle_taper_radius = handle_top_radius / 2
handle = translate((0, 0, 1))(
top_radius = top_diameter / 2
base_radius = base_diameter / 2
ball_height = ball_radius + height / 2
translate((0, 0, ball_height))(
# Bespoke just for my bath!
plug = make_plug(41, 38, 10, 40, 16, 20)
The radii were roughly measured and I did a very low-res print but I was surprised that the test came out really well. Here’s the initial draft.
And amazingly the test print is a perfect fit. A little PVC tape around it will make a good seal. I’ll iterate this a bit, the final print will be in white, higher res, and with bevelled edges.