Personal Projects

Self Sorting Pool Table (Bttrpie)

For a class project, my friends and I built a self sorting pool table. It is a compact, portable self-sorting pool table that takes over the tedious job of sorting and resetting balls between games on a custom-built mini table. It brings together three main elements: a collection system that guides balls from the pockets into a single-file chute, a 3-axis gantry and claw that can identify, sort, and move the balls, and a pool table structure that stays fully playable while discreetly supporting the robotics. Within this setup, Bttrpie uses onboard sensors and layered software to recognize ball colors, arrange them in the correct order, and load them into a triangle before sliding the rack into the proper break position for the next game. The goal is to showcase a practical, well-integrated hardware–software system that can reset a game of pool with minimal human involvement, while still working within real constraints like a limited number of motors, fixed cable lengths, sensor limitations, and the need to keep the system lightweight and easy to transport.

Through this project, I got to improve a lot of different technical skills. I had to use a lot of SolidWorks when I created the original CAD design for the physical table. This included using different mates to do basic simulations of the flap on the table. I also worked with a lot of different machinery to cut the wood when we built the main pool table. Additionally, I also had to cut certain metal rods using an angle grinder. We used C++ to write our software aspects of the project, including a PID controller for our motors. Overall, it was a really fun project that let me learn a lot!



Video! Code