Wall mount ping pong (table tenis) ball holder and dispenser that holds six ping pong balls.
Tired of never being able to find your ping pong balls? Use this handy holder. Fill it up and when you grab the bottom ball, the rest slide down.
The stl is setup to hold six standard ping pong balls and mount to the wall with #6 flat head screws. The openscad parameters can easily be adjusted to hold foosballs (table football balls) or metric screws.
Load the stl file and orient so that it fits on the bed. It barely fit corner to corner at 45 degrees on my printer.
I had success with PLA using 0.2 mm layer height. I added mouse ears to the design to prevent lifting when printing with ABS, but I never got the ABS prints to come out. It always warped to much and either pulled the layers apart or warped the opening so much out of round the balls didn't fit in. Perhaps a heated build volume is needed in addition to a heated bed. If you get an ABS print to work, be sure post a comment on how you did it.
I was very impressed with how well the finished holder works. The balls fit nicely in the holder, slide down smoothly and land securely at the bottom without falling out.
The shape is a cylinder connected to a circular toroid connected to a sphere. The surface that attaches to the wall is flat and the width increase at a 60 degree angle up to the main body. The hardest part of the design was finding a surface that is tangent to a circular toriod at a fixed angle. To find this surface, I used maxima to solve for an equation for the tangent point. I was not able to find a closed form solution, so the openscad uses recursive functions to iteratively find the correct point. The algorithm starts with bisection and switches to Newton-Raphson iteration. Since the points are calculated in the scad file, they will update when parameters are changed.