Building Schrödinger's Cat

Building Schrödinger's famous experiment for real
An example project for the Enlightened Raspberry Pi Contest

Similar projects worth following
This project is intended as an example of a well documented project for the Raspberry Pi.

We've all heard of Erwin Schrödinger's famous thought experiment, now known as Schrödinger's cat.

Schrödinger proposed using a vial of hydrocyanic acid to either kill or not kill the cat.
I only have a limited supply of cats, plus I don't really have the heart to risk having a cat be both alive and dead at the same time. For this reason, I'm going to change the actual equipment a bit.

My mechanism will drop cat treats and catnip into the box. It is a well established fact that cats love treats and catnip, so it can be stated that a cat receiving these gifts will be happy. A cat which has not received the gifts can then be thought of as sad. This experiment will create a cat which is both happy and sad at the same time.

Want the details on how I entered this project? Check out @Shree Suresh's Excellent post Everything 101!


Every project needs a good ASCII art title!

plain - 7.99 kB - 10/04/2016 at 02:30



You can add up to 1 GigaByte of file data to a project! Don't lose your data to a hard drive crash - we've got it all here!

plain - 156.00 bytes - 10/04/2016 at 02:19


  • 1 × Servo Servo used to release the contents of the treat box
  • 1 × Arduino This mini computer is the brains of the entire operation.
  • 1 × Cat proof enclosure (cardboard box) Large box capable of holding the treat delivery box and a sad/happy cat.
  • 1 × Small treat box with swing lid This is the box which will hold the treats. It can be as simple as a cardboard box. Th important thing is that a servo can be used to latch the box closed
  • 1 × Cat One or more cats who have volunteered and signed experimental consent forms

View all 8 components

  • All good things...

    Adam Fabio10/04/2016 at 02:35 0 comments

    One final result from this experiment. It seems cats don't understand when the experiment is complete. In this case, Maev decided she wanted to sleep in the enclosure box. This may or may not have had something to do with the catnip which was still lingering in the bottom of the enclosure.

    The experimenters found that Maev had a bit too much catnip during her own experiments, and got sick in the box. The enclosure box has been disposed of using proper biohazard containment methods.


  • Experiment 2

    Adam Fabio10/03/2016 at 04:20 0 comments

    For this run, Cat B, aka Cloud was the test subject.

    (If you like the photos in this project log, you can check them out in the project gallery. will automatically add any project log photos to the gallery.)

    The treat box was still loaded from the last run, so the Arduino was commanded to run the experiment again. The experimenters left the room and returned 30 seconds later.

    When the enclosure box was opened we found this:

    The treat box had been sprung on this run. Cloud paid no attention to the experimenters, he was concentrating on the catnip and treats. For purposes of this experiment, we can call this a happy cat.

    Feeling sorry for Cat A, we placed her in the enclosure box, and forced the arduino to open the treat box.

    The results of this test showed that she too, could be a happy cat.

  • Experiment #1

    Adam Fabio10/03/2016 at 04:13 0 comments

    For our first experimental round, the box was loaded with treats and catnip.

    The treat box was then securely attached to the cat enclosure with packaging tape. Cat A, AkA Maev, was then loaded into the box under the watchful eye of Cat B, aka Cloud.

    The box was then closed, and the experiment commanded to start from the connected PC. After 30 seconds, the box was opened.

    Maev definitely looked like a sad cat. Examining the treat box showed that it had not opened.

  • Baseline for a sad cat

    Adam Fabio10/03/2016 at 04:01 0 comments

    For this experiment, we needed a baseline of a sad cat. For this we went back in time to 2009 and pulled up a video of an extremely sad cat wearing a court jester hat. Through the power of, I can link this video right here:

    Cats don't get much more sad than this.

  • Build a treat box

    Adam Fabio10/03/2016 at 04:01 0 comments

    We're building a simple box which can be opened with a servo. I used a cheap plastic box with an unhinged lid. I needed a hinge of some sort. Two layers of packing tape worked great here.

    Latching the box closed was as simple matter of taping the servo to the side of the box. I used double sided foam tape for this. A small piece of plastic helped to space the servo off the treat box lip.

    I'm using the Arduino Servo library, with the servo connected to PWM output on the 'duino.

    I should note her that I'm doing a terrible thing - I'm running the servo from the Arduino's own power regulator. Servos pull a lot of current, and can quite easily cause the Arduino to reset - or even harm your computer when running on USB. Things worked for me in this hack though.

    If you're curious why I did this, it turns out that all my AA battery cases were packed and moved to my new shop as outlined in #New House, New Shop (Hey, did you know that hashtags allow you to quickly link projects anywhere on

  • Emulating a radioactive source with an Arduino

    Adam Fabio10/03/2016 at 03:01 0 comments

    Schrödinger's original letter included the following text: " in a Geiger counter, there is a tiny bit of radioactive substance, so small, that perhaps in the course of the hour one of the atoms decays, but also, with equal probability, perhaps none "

    Unfortunately, I don't have any radioactive sources that small. Nor would my wife be happy about me putting radioactive material in a box with the cat - even if it is a tiny amount of radiation. To this end, I will be using a random number generator for this project. You might think that this destroys the entire point of Schrödinger's experiment, but concessions have to be made in the name of a happy marriage.

    Luckily the Arduino includes a pseudo-random number generator. This generator needs a random seed to operate. I can use a human to generate the random seed. This is the same technique I used in The trinket randomizer. When a command is given, the Arduino checks millis() for the counter value, then runs it's pseudo-random number generator routine. By determining if the pseudo-random number is odd or even, I achieve a random event with roughly 50% probability.

View all 6 project logs

  • 1
    Step 1

    Make sure your enclosure box is large enough for the cat and the treat box/arduino. If you're not sure enough check out the photos in the first experimental log. (See how I linked that - You can link project logs into instruction steps)

  • 2
    Step 2

    Build the treat box. Check out that link to a project log with the details!

View all instructions

Enjoy this project?



Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates