For a long time now, since before I even started here at MatterHackers, Dave has wanted a foosball table in the office. It was a project idea that got tossed around for a while, and something I casually worked on; designing parts for it in my spare time between articles and other projects. We spit-balled ideas about how it should be put together, what should be 3D printed, what should be purchased, what needed to be designed, what needed to be built, and would it need any electronics. Initially, the plan was to print one Iron Man and one Stormtrooper player, then sand, polish, mold, and cast them. That plan seemed like it would produce the sturdiest players with the best finish. But where would be the fun in that? So we scrapped that idea and went with 3D printing anything that could be printed.
We Needed Help - Enter Bob from YouTube's "I Like To Make Stuff"
Foosball tables don't usually have electronic scorekeepers, but we wanted to incorporate as many different mediums as we could. Dave and I had no clue about programming or Arduinos or any of that, and that is where Bob from I Like to Make Stuff comes in. We contacted him and wanted to get him involved with the project by helping us design the electronics and scorekeeper mechanism. As all things do, this evolved and instead of Bob helping us design just the scorekeeping system, we had him fly out to California and design and build the table while we take up the printing.
Now, with Bob in town, we held a meetup and debuted the table in the eleventh hour of construction. It played well despite a couple hiccups, and everyone involved had a great time assembling the foosball table and hanging out afterwards.
Building the 3D Printed Foosball Table
Now, we knew that all the components of the table couldn't be printed, so below is a list of items that we had to purchase. Other than that, the table has over 140 printed parts!
(4) Foosball Leg Levelers
(4) Matching Nuts
(26) 1/4" x 1 1/2" Button Head Machine Screws.
(26) 1/4" Hex Nuts
(26) M3 x 35mm Socket Head Cap Screw
(26) M3 Nuts
(1) 1/4" Steel Rod
(5) 10' x 1/2" Electrical Conduit
(1) 6pk of Foosballs.
(1) Pack of 5 Minute Epoxy.
(2) Vinyl Tabletops
Various Fasteners for Table
Designing the Parts
Does that make you want to build your own Foosball table now? It's a pretty extensive list, but it's a lot easier than you might think. The hardest part is having the power tools to cut the pieces of the table. But designing and printing the 146 (that's not a typo) individual parts that went into this build is more time consuming to print than it was to design them.
We didn't want to have to source these parts from anywhere expensive or too far past DIY, so we opted to scour the aisles at our local hardware store. The cheapest and good enough product was some 1/2" electrical conduit. When measured with a pair of calipers, these pipes actually had an outer diameter of 0.70", so all parts based on the rod had to be adjusted to compensate, as regulation rods are 5/8". These were cut to size based on the specifications designed by Bob.
First thing the table needed was some players, and the easiest thing to do was to see what someone more creative and more talented than I had done already. Thingiverse was promising, with user Johanson59 and his Stormtrooper and Iron Man foosball players being a much better set of players than standard foosball players. In order to fit these players to the electrical conduit we had purchased, I bumped up the scale of the players to 110% and the players fit well; not too loose, not too tight. They survive a stray ball to the face, the players were printed in MatterHackers PRO Series Nylon. In the MatterHackers Design Library, these are already scaled to fit electrical conduit.
Print Count = 26
We figured that if anything were to need replacing, it would be the feet. With constant bashing and smashing against the ball, I opted to slice off the foot from the player, add a T-shaped post to it, and cut a matching hole in the player. However, in doing so I had also weakened the players legs; the hole cut in the legs significantly decreased the cross section of them and the surface area for layer adhesion. The solution was to cut a hole in the feet and a cavity in the body to allow a nut and bolt to be threaded through the two pieces and have some compression force holding the two together. These were printed in MatterHackers NylonX for durability and flexibility.
Print Count = 52
Rather than try and design many of the printed parts from scratch, it was easier to look at other parts that actually existed and are used on professional tables. Luckily, some of these parts included dimensions in their images, making it a lot easier to design these parts in Solidworks. The Ball Entry was really simple, with a couple spheres offset from each other to make the drop, a half cylinder extruded to make the lip, three holes with 45 degree chamfers, and fillets on most edges. Designing these was half based on the existing part and half on what would look good and function for what we needed.
Print Count = 54
For the bumpers, it would be preferable to have them easily slide onto the rod and be loose, instead of staying on tight but be hard to move down the rod. With a 0.35" radius pipe, I added .01" of tolerance to it, which allowed for a tight, but smooth movement along the rod for easy assembly. The shape of the bumper didn't really matter, I just thought the three larger cylinders looked better than one solid cylinder, but one would work just as well. To give a little cushion, the bumpers were printed in MatterHackers PRO Series Flex. Each pipe needs two bumpers, and with eight pipes it needs 16 bumpers.
Print Count = 70
In researching the different styles of handles, some being rigid and others being rubber, I found that Taylor played foosball regularly in college and he felt rigid was way better. The design for the handles was based on only a couple measurements in the product page, so a lot of it was winging it. It didn't really matter the shape of it, just that it was sort of ergonomic and fit over the electrical conduit. I printed eight of these in MatterHackers PRO ABS so we could acetone smooth it later if we wanted to, but they worked well enough without it. We used 5 minute epoxy to hold these on permanently as we could always print more if we have any issues with the rod, and this was the easiest way to attach them.
Print Count = 78
To prevent players on the rival team from getting jabbed by a potentially sharp pipe, the electrical conduit needed some endcaps to go onto the side opposite the handles, but couldn't be attached permanently. In order to do this, they needed to be a friction fit, and since they didn't need to slide down the rod they could be difficult to install since they don't have to move far and need to stay on. The end caps were a simple design, and just needed to be a hollow cylinder without any sharp edges. The end of the end cap was made to be thicker than the side walls, so the fillet around the end didn't weaken the part by making it too thin. Only eight of these were needed, and they were printed in MatterHackers PRO Series Flex.
Print Count = 86
Instead of having the electrical conduit slide on bare wood or finding a decent bearing and designing an assembly to hold it in place, we opted on printing bushings in MatterHackers PRO Series Nylon and using the natural smoothness of the nylon as a bearing surface, which proved to work very well once the tolerances were sized properly and there was enough room to spin between the bushings and pipe. The actual shape of these doesn't matter, all that does is that there's enough flange to screw it into the table and the hole is large enough to let the pipe slide easily. We needed 32 of these: one on either side of the wood on either side of the table per eight pipes.
Print Count = 118
Drawing inspiration from existing score keepers, I designed them to be large enough to fit embossed numbers on the face. This was easier than hand painting on the numbers because I don't have a steady enough hand to do that. I felt the best way to model these was to make the profile of the scores, save a base model, then go in afterwards to modify it into the score pieces for 1 through 10, and then to be the left and right post that the rod will attach into. With these, I printed them in MatterHackers PRO PLA since they wouldn't need to be wear resistant in any form and purely needed to be cosmetic. With 10 score pieces and a right and left score post, I needed to print 24 individual pieces.
Print Count = 142
Initially, our leg levelers were some small, quarter-sized feet and after looking at how good the rest of the table looked, it just wasn't up to par. We sourced a local foosball table company and bought some much nicer feet from them. Unfortunately, the bolt size was much larger than the T-nuts that came with the first set of feet, and the hardware store didn't carry T-nuts large enough either. So we innovated. I took the feet with me and found a nut that fit, then modeled a cylinder matching the diameter of one of our forstner bits with a hexagon cavity slightly larger and deeper than the nut. A flange at the base and a hole straight through to accommodate the bolt from the feet. They worked perfectly and we screwed them into the base of each leg and threaded the feet onto them. One of these for each leg makes four, and since they just had to hold the nut in place, I just printed them in MatterHackers PRO PLA.
Print Count = 146
We had our graphic designer create a custom tabletop for us with both our logo and Bob's I Like to Make Stuff logo on competing sides of the table.
Bob took the lead on designing and building the table. To see what went into the construction of it, watch the video he made while out here in California.
This was a great project to work on and see come together, with the MatterHackers team and Bob converting the parking lot into a woodshop and finishing off with an awesome meetup with the community getting together and connecting through 3D printing.
For all the files used to make this model, we have all of them included in our Digital Design Library, free with MatterControl.