Thursday, May 1, 2025
Laziness is the mother of invention
Saturday, April 6, 2024
Plastic belt buckle
Quite a while back, I came across a discarded belt with a broken buckle. I kept it in my "long stringy things" box in the garage until I could figure out what to do with it. Finally, today, I designed and 3D printed a new buckle for it, along with plastic rivets. I replaced all the metal, and now I have a no-metal belt that hopefully can clear airline security without being removed (not tested yet).
Thursday, September 7, 2023
Reverse valve masking
I was exposed to Covid recently, so by University rules I need to mask for a while. I don't particularly love masking at the gym, but I found a nice solution. My go-to mask for physical activity during the pandemic was the Trend Air Stealth N100 respirator, with the valve replaced by a 3D-printed blocker. But now I don't need to protect myself, just others. So I simply put the valve back in, but in reverse, so I get clear air intake but my exhalations go through the N100 filters. The respirator was already pretty breathable, but now it's even better, though it still looks super-weird and I need to remember not to use the respirator with this modification when I actually need protection, e.g., when doing woodworking.
Friday, February 17, 2023
Curmudgeonly griping
One of the standard gripes about modern manufacturing is how many items break down because the manufacturer saved a very small fraction of the price, sometimes only a few cents. I find myself frequently resoldering mice and headphones, presumably because the wires were too thin, but there at least there is a functionality benefit from thin wires.
The most recent is our GE dryer where the timer knob always felt flimsy, and finally the plastic holding the timer shaft cracked. The underside revealed thin-walled plastic holding the timer shaft, reinforced with some more chambers made of thin-walled plastic. Perhaps over-reacting, I ended up designing a very chunky 3D-printed one.
I suppose there is an environmental benefit from using less plastic, but it needs to be offset against the environmental cost of repair and replacement. Adding ten grams of plastic would have easily made the knob way, way stronger, and that's about 0.01 gallons of crude oil, which is probably an order of magnitude less than the crude oil someone might use to drive to the store for a replacement (or a repair person being called in; in our case, it wasn't obvious that the knob was the problem; I suspected the timer at first, and disassembled it, before finally realizing that the knob had an internal crack that made it impossible for it to exert the needed torque).
Monday, January 9, 2023
Three non-philosophy projects
Here are some non-philosophy hobby projects I’ve been doing over the break:
Measuring exercise bike power output
Dumping NES ROMs
Adapting Dance Dance Revolution and other mat controllers to work as NES Power Pad controllers for emulation.
Monday, December 13, 2021
An introduction to simple motion detection with Python and OpenCV
Sunday, September 13, 2020
Concrete dumbbells
Wednesday, July 29, 2020
My mask collection
Just as different pairs of shoes are useful for different occasions, different masks are useful for different occasions. Here's my collection.
Category 1: Likely to be significantly protective
1.1. 3M 6300 half-face mask with 2091 P100 filters
Summary: Should be extremely protective for inhalation. The fit of the soft silicone and the adjustable head-straps is excellent. It is easy to breathe through thanks to the large surface area of the filters. And while the original mask has an exhalation valve, and hence doesn't protect others much, I added a 3D printed filter over the exhalation valve, loaded with surgical mask material. As a result, the mask is highly protective of the wearer and probably more protective of others than many other masks, due to the much better fit.
My use cases: Church and shopping.
Down-sides: (1) thanks to the vibrating inhalation and exhalation valves and the thick silicone, I am barely audible through this mask, so I avoid wearing it in situations where I need to communicate with someone; (2) the mask is bulky, which makes it less good for sports; (3) the filters are expensive; (4) can leak around edges on exhalation when breathing extremely hard due to strenuous physical activity.
1.2. Sonovia cloth mask with antiviral and antibacterial coating
Summary: These are the most expensive cloth masks I've seen ($53-69 each, depending on quantity). I learned about these from my mom. My first thought was that they are a scam, but as far as I can tell (but then, this is not my field) they are made by a legitimate Israeli company, backed by serious scientists (including a Nobel prize winner), and their antiviral and antibacterial copper coating apparently really does work, and lasts many cycles of washing. I got a pack of three of these (at the time, they didn't sell them individually) so my daughter could attend her (outdoor, socially distanced) high school graduation.
Unfortunately, out of the box they don't come with a nose wire, which makes the fit poor. However, it was easy to cut a seam, insert a wire and sew it closed, and now the fit is much better. They have better fit for inhalation than exhalation in my experience: if I don't adjust the straps just right, I can feel exhaled air escaping at the cheeks, but they close tight around the nose and mouth for inhalation, providing what feels like a solid seal. A nice bonus of the antiviral coating is that I do not worry about the surface of the mask being contaminated.
My use cases: When I want significant protection but also want to be able to talk, or when the 3M mask is too bulky for convenience.
Disadvantages: More difficult to breathe through than some other options, especially if drenched with sweat. When our climbing facility reopened, I climbed in this mask the first day, but when it got wet while I was climbing laps, I felt like I was drowning for lack of air.
Category 2: Likely to be moderately protective
2.1. Home-made two-layer fitted mask often paired with surgical mask
I made this from one layer of T-shirt cotton and one layer of microfiber cleaning cloth, after looking at the sizes of holes in various fabrics under a microscope. I used this pattern, enhanced with a nose wire. The fit feels superb: I don't feel the tell-tale feel of air rushing past my skin around the edges on either inhalation or exhalation. Back when I didn't have the better masks above, when I went to high risk destinations like the grocery store or church, I would sometimes put a surgical mask under it, thereby increasing the number of layers of filtration while at the same time pressing the surgical mask to my face and hence improving the surgical mask's rather terrible fit.
2.2. Ebay "KN95"
These were so cheap ($10 for ten, and I've since gotten a similar pack of ten for $5) that notwithstanding apparent Chinese certifications, I wouldn't be surprised if they were fake KN95s (and that makes me feel good about not taking protective equipment away from medical staff). However, even if they don't reach the filtration level of a real (K)N95, they fit acceptably, and I suspect--admittedly, without testing--they provide better filtration than home-made cloth options. When breathing very hard--namely, during strenuous physical activity, I can feel air rushing out by the edges of the mask at inhalation, but the mask seems to seal to the face on inhalation. Moreover, I can breathe through it even when very sweaty. I reuse these, following the advice of the N95 inventor to just have multiple masks labeled with days of the week and let them self-disinfect over the period of a week.
My use case: Indoor rock climbing.
Disadvantages:(1) suspiciously low price; (2) poor fit on exhalation
Category 3: Less likely to be moderately protective
3.1. "Surgical" mask
Summary: We have these hanging about in various places and they are convenient to toss on quickly. I can feel they leak around the edges. They are so cheap ($10 for 50 on ebay, if memory serves me) that I doubt they are serious medical protective equipment, so I feel OK about using them.
My use cases: mainly for brief contact with someone (e.g., when picking up a drive-through order in the car)
Disadvantages: Leaks around edges.
3.2. Reebok athletic mask
Summary: These are easy to breathe through, but I have no idea how much protection they provide. They are great for athletic endeavors when one is so far from people outside one's household (e.g., when playing badminton with a family member on an indoor court) that the only reason for a mask is to satisfy the rules rather than protection.
My use cases: Indoor racquet sports when alone on a court with my son. I use a better mask when closer to staff while checking into the facility.
Disadvantages: Leaks at nose bridge causing fogging in sports that require goggles (e.g., racquetball).
Category 4: Not protective
4.1. Home-made single layer T-shirt mask
Summary: I sewed these quickly from an old T-shirt and a piece of wire. Sometimes one needs a mask to satisfy rules but where realistically protection of self or others is not an issue. For instance, an outdoor facility where one can easily distance oneself from others, or while alone on an indoor court with a family member.
Use cases: I toss these in our tennis bag in case I need to go to the bathroom in my department's building after hours when I am unlikely to meet another human in the building, but the university still requires face covering. Also, outdoors at our marina.
Disadvantages: Minimal to non-existent protection of self or others.
4.2. Bandana
Summary: This provides very little protection indeed, since I can feel most of the air coming in and out around the bottom, but it does not leak much around the top and hence works well with racquetball goggles.
Use case: When I play racquetball alone in a court with a family member, the main reason to wear the face covering is to satisfy the facility rules. I am careful to wear a better mask in other areas of the building where there is closer proximity to others, such as when signing in.
Disadvantages: Minimal to non-existent protection of self and others.
Wednesday, July 15, 2020
Gamifying planking
Trivial Instructable here.
Result: I can plank more time on this than I can endure ordinary planking. Admittedly, the fact that the games involve some motion make the exercise less static. But it's still probably good core exercise.
Monday, July 6, 2020
Hangboard build
Monday, May 25, 2020
Manual Star Tracker
Monday, May 18, 2020
Wobble board, gamified
Last year, I made an adjustable wobble board for balance practice: a plywood disc with a 3D-printed plastic dome rocker. One thing that I always wanted was some sort of a device that would measure how long I was staying up on the board, detecting when the board edge hit the ground. I imagined things like switches under the board or even a camera trained on the board.
But what I forgot is that I already carry the electronics for the detection in my pocket. A smartphone has an accelerometer, and so if it’s placed on the board, it can measure the board angle and thus detect the edge’s approximately touching the ground. I adapted my stopwatch app to start and stop based on accelerometer values, and made this Android app. Now all I need to do is lay my phone on the board, and when the board straightens out the timer starts, going on until the board hits the ground. There are voice announcements as to how long I’ve been on the board, and a voice announcement of the final time.
Source code is here.
Instructions on building the wobble board and links to the 3D printable files are here.
One forgets how many things can be done with a phone.
I think my best time is just under a minute, with the board set to a 19 degree maximum angle.
Tuesday, April 14, 2020
Racquet sports
With the gym shut down, my teenage son and I have been exploring the world of racquet sports, including some more obscure ones. We love badminton, but we’ve been having too much wind (and pretty much any wind is too much for semi-serious badminton), so we also got a crossminton set. That was fun, though after the recent storms the wind is too high even for crossminton. Tennis has also worked for us, and is much more wind-tolerant, but I can't do it as often due to the danger of injury. We sometimes play ping pong on our kitchen table, but the table is a bit too small for a really good game (and the kitchen a bit too small for a larger table).
I also made wooden paddles for Goodminton / Jazzminton for light play with our seven-year-old. Sadly, it’s harder than advertised, at least for her, but I have been enjoying solo play, rallying with myself, one paddle in each hand. They could easily have been cut by hand, but I used my CNC router. The build instructions, with links to stl and svg files, are here.
Sunday, April 5, 2020
Paddles for classic video games
Thursday, March 26, 2020
DIY projects for hunkering down
I'm teaching online. Mostly, I'm doing it by writing short notes, broken up into discussion-thread-sized bits, and posting them on a discussion forum. But I also recorded some short video segments today, which reminded me that our one camera tripod had a broken hub. So I designed and 3D printed a new one. (Design files are here.)
It's been bothering me for a while that one of our bathroom faucets had rounded knobs that had to be grasped firmly by the fist to turn. This means that you get the knobs dirty when you start the water with dirty hands, and then after you wash up you get your hands dirty from the knobs when you turn off the water. Levers are way better: you can either move them with elbows or you can ensure that you push on one side with dirty hands and on the other side with clean hands. I printed some lever attachments that slide over our rounded knobs. (Design files here.)
The grocery store was out of toilet paper. So we ordered some giant commercial-establishment bathroom rolls. Of course, they don't fit our toilet paper holders in the bathrooms, so I made this one out of some scrap wood and a handlebar from a broken-down scooter:
My usual form of exercise--the climbing wall--has been shut down. So, I've had to switch to tennis. I found out that it's hard to move around playing tennis in long pants, and I didn't own any shorts, so I found some old khakis in my scrap cloth box, and cut them down and hemmed them:
And, finally, I sewed a mask for myself and one for my wife for when we go to the grocery store. Mine used this design and the one for my wife used this one, except that I added some heavy gauge insulated copper wire to shape the nose ridge area. (I used cotton T-shirt material as per this article, layered with some microfiber for one of the masks.)
Friday, May 25, 2018
Vector display for Arduino-type boards
Instructions and links here.
Sunday, January 14, 2018
Exercise machine USB game controller
I made a USB game controller where game movement and buttons are controlled with a Nunchuck or a Gamecube controller and speed of movement (slider) is controlled with the rotation sensor of an elliptical or exercise bike, as a way to encourage self and family to exercise.
Monday, November 13, 2017
Flying rings
Monday, November 6, 2017
Cheap Makey Makey alternative
The Makey Makey is a cool electronic gadget that lets kids make a USB controller out of any somewhat conductive stuff, like bananas, play dough, etc. Unfortunately, it's about $50 (there is also a $30 clone). Also, annoying, it requires a ground connection for the user. I made a capacitive version that costs about $3 using a $2 stm32f103c8 board. It emulates either a keyboard or a gamepad/joystick.
Here are instructions.















