Remixing the classic ball run to add computational elements has had a fair amount of my own marbles scattered across the floor. Staying on track to find ways a single marble can trigger a switch has led to a variety of experimentations along the way. In this blog post I’ll share the intentions and stumble upons for a project that is still in development.
If you’ve watched people build and debug a marble run, you know that it provides an accessible approach to programming a sequence. My intention was to link the digital and physical realms of computation using the familiarity of marble tracks and block based coding. I envisioned participants getting a set of inputs, a device to program what those inputs would do, and a marble machine module that had prebuilt triggers they could build into their marble run. Early prototypes with LEGO WeDo sensors & motors, Makey Makey and Bare Conductive Touch Boards had me wishing for a wireless connection that I could adjust the code in real time. With the Micro:bit hitting the scene and the Scratch team helping to add some prototype extensions, I found a platform to pursue ideas from. Here is a 4 minute video showing some of the triggers that I got to work.
THE LIGHTWEIGHT MARBLE
No matter how lightly my finger tapped a switch or a piezo, marbles are just so much lighter than I realized. Making a mechanical device so that just one marble could tilt something proved to be quite a challenge. Not only did it have to mechanically move something, it couldn’t do it too quickly. Some of the conductive switches I made out of brass shim stock worked well when the marble was rolling slow but if triggered it too quickly, the micro:bit wouldn’t read it. As I show in the video, when a marble is dropped on two sheets of brass it does not trigger the micro:bit. My current understanding is that there might be some sort of threshold code in the board itself.
Although Martin Molin’s marble machine build took an analog approach to triggering sounds, I found myself watching his update videos, studying his clever solutions for ideas, and wishing marbles were heavier.
PIEZO HOPES, DREAMS AND BUMPER BLOCKS
I spent a while trying to have a marble roll or hit a piezo element, acting as a switch. There was so much inconsistency and moments when I thought I’d figured it out, but it turned out to be just too finicky. I fussed with different rubber pads, modeling the classic drum trigger. I frequently adjusted and reset the space between the wood block and the acrylic panel the marble would hit but it was still so temperamental.
OK I GOT IT, NOW ADD THE MICROBIT
Because the microbit has an accelerometer built in it made is easy to attach it directly to a wheel or a tilting marble track. The difficulty was that it added so much weight to it and that it didn’t move the same way.
PRECISION MICROSWITCH WITH LEVER
This is an example of how beneficial it can be to give up on something knowing that you might pick it back up again. I gave up on getting a single marble to trigger a microswitch and moved on to other ideas. I picked it back up again when I realized that it could actually give me two triggers by using the normally open and normally closed portions of the switch.
WIRELESS ACCELEROMETER CONNECTION
In previous attempts to use a tilt of a marble track to trigger code I was bound by wires attached from the tilting track to the microcontroller board. Lianna suggested that I just mount the micro:bit directly to a tilting track to use the built in sensors. I had been so focused on using the microbit to trigger more that one thing that I had neglected this simple idea.
WHICH PATH TO CHOOSE NOW
Right now I see these prototypes getting refined and duplicated so that we can test them out as a group and then with visitors. I’d like to see how participants manage wires on the backboard and observe which modules are inspiring. I’d also like to work towards building a stand-alone marble machine module that doesn’t need a scratch connection. So far the first few prototypes have shown a serious delay in the responsiveness of the Microbit when a trigger is activated. I'm wondering if anybody has reccomendations of simple switches or sensors that I should test out. Throw your thoughts in a comment below!
This work was supported by a grant from Science Sandbox, an initiative of the Simons Foundation
This project was made possible through the generous support from the LEGO Foundation