Inspiration

In The Wrong Trousers, there's a scene at the start of the movie where a slice of toast pops out of a toaster and gets shot with jam automatically. We tried to recreate that.

What it does

In theory, a 2-axis arm automatically aims a tube with jam at toast that has just come out of a modified toaster. In actuality, TBD, depending on how well it falls together in the last hour.

How we built it

  • To detect the toast, we used OpenCV/Python. We attempted more fancy ML-based methods, but none worked well.
  • The arm's controller was initially written using PlatformIO/C++, but we had difficulties sending buffers from the detector program. As is obligatory, we rewrote the controller in Rust with Embassy. This was great for the USB/serial controller, but amazingly there aren't any established stepper motor driver libraries (the few that do exist were all done seven years ago and have no chance of compiling now).
  • To fire the jam, we used a solenoid valve and COâ‚‚ chargers to push jam through some aquarium tubing.

Challenges we ran into

  • We broke the toaster by putting too many springs on the lever
  • We went to pets at home and got fish tubing after super glueing the pipes together. At one point the tubing exploded and our ears rang for a while.
  • A lack of understanding of plumbing and the refusual to purchase plumbing tape.
  • Toast is a very difficult subject to detect using image segmentation, especially when none of us are good at computer vision
  • The stepper motor drivers currently smell like burning when we try to use them
    • Update: The stepper motor screams for the sweet release of death (but with fearless concurrency)
  • Apple Maps lead us through two miles of mud "paths" to get to Screwfix, which didn't have the tubing we wanted
  • The O ring exploded last minute and we had to use a rubber band as a replacement.

Accomplishments that we're proud of

  • We managed to fire some jam

What we learned

  • The second-cheapest toaster on Amazon can handle no more than 4 additional springs
  • Stepper motors are evil

What's next for Jam Launcher

  • Making it properly out of spite
  • Rewriting it in Zig

Built With

Share this project:

Updates