3d modelling

i'll take you home

gumball machine design

This is a 3D model designed and assembled in SolidWorks. It's made up of several components including the container, base, crank, spinner, head, and tail. This project is designed to be assembled using the instruction manual. Play around with the parts below!

Container

why this project?

gumball machine assembly and collapse gif

This was my second 3D modelling project. I had a lot of fun experimenting with SolidWorks features on my Cybertruck Jeep model. Having learned a lot from my previous experience and wanting to try something more advanced, I was inspired by Lego assemblies. Instead of 3D printing the gumball machine as one piece, I designed separate parts that could be assembled into a full build.

This project was designed for a group project involving the motif of a Canadian animal. My group decided to design a gumball machine in the shape of a squirrel, hence the head and tail parts. Spanning over a month and a half, I enjoyed the process of creating something new and learning about locking mechanisms to keep different parts in place.

concept & struggles

initial gumball machine concept idea

The idea was a squirrel-shaped gumball machine. Unscrewing the head allows a gumball to be inserted into the body. The gumball drops into the container where it is caught in the spinner. The crank is then used to funnel the gumball out of the container and into the tail, where it spirals down and exits the machine.

Container

Concept / Struggles

initial container concept picture

The container was the main component because the spinner, crank, body, and tail all needed to fit through it. The original design had a tunnel from body opening to tail exit, but this caused repeated print failures and difficult support removal. We redesigned the interior flow path to guide the ball with momentum. It used more material but printed reliably and produced smoother motion.

Body

Concept / Struggles

initial body concept picture

The body stores gumballs before they enter the spinner. It connects head and container using snap-fit style locking interfaces with different diameters. A main challenge was preserving squirrel proportions while still fitting functional internal paths and connection geometry.

Crank

Concept / Struggles

initial crank concept picture

The crank was designed as a key-like shape to engage the spinner slot. Post-print tolerance became the issue: a nominally correct fit still bound in real prints, especially across printers. Adjusting tolerance strategy and post-processing solved the fit.

Spinner

Concept / Struggles

initial spinner concept picture

The spinner uses curved holding geometry to guide the ball. Chamfers were added to improve crank entry and turning reliability. The same tolerance lessons from the crank applied here, emphasizing real print behavior over ideal CAD fit.

Head

Concept / Struggles

initial head concept picture

The head explored personality details, but complex surface transitions produced modeling instability and self-intersection errors during early attempts. The team simplified the facial geometry and focused on a robust removable lock feature for refilling.

Tail

Concept / Struggles

initial tail concept picture

The tail evolved from decoration into a functional helical ramp for the final output path. A partial top opening was introduced after testing to make support-removal practical without compromising the motion of the ball.

what did i learn?

This project taught me lessons in 3D modeling, practical design adjustments, and problem-solving under manufacturing constraints. Organic shaping in SolidWorks often led to broken constraints and surface errors, so iterative simplification and better feature planning became crucial.

Tolerance issues became obvious after printing. Small machine-to-machine variability changed fit quality for crank and spinner interfaces, showing how important it is to design clearances for real hardware outcomes. Managing interdependent part references also required stronger file discipline during iteration.

Overall, this project strengthened my workflow in iterative prototyping, debugging functional assemblies, and balancing aesthetics with manufacturability. To showcase that learning, you can interact with the 3D part viewer above and access the full build details on GitHub.