Skip to main content

Build a 'Robot' from Junk (and Learn Something Real)

How a drinks can, a small motor, and a cheap programmable controller can open a world of making, tinkering, and genuine engineering thinking — for kids and adults alike.

'robot' built from junk making a drawing bot
Eggbot 

There is something quietly radical about the Junkbot idea. It started not with a lesson plan or a product brief, but with a question: what can you actually make with the stuff lying around? Over nearly a decade of exploration, educator and maker Scott Turner refined a simple concept — a vibrating robot built from a drinks can, a small motor, and a handful of pens — into something that touches on environmental science, engineering, and computing all at once.

This post is for the makers who like to build first and ask questions later, for parents who want to spark something in a curious kid on a weekend, and for educators looking to point people toward genuinely interesting projects. We are going to look at how you build one, and then think about where the idea can go next.

Why junk?

The word “junk” is doing important work here. When a project starts with recycled materials — a crushed can rescued from the bin, pens past their prime — it immediately lowers the stakes. There is no expensive kit to worry about, nothing precious to break. That psychological shift matters enormously, especially for younger makers who are still learning to be comfortable with failure.

“The best STEM projects are the ones where the first attempt doesn’t work, and that feels interesting rather than discouraging.”

Junkbots also embed an environmental message naturally — without it needing to be laboured. Reusing a drinks can is just part of the build. The conversation about materials, waste, and resourcefulness happens because it is baked into the process.

The core build: a vibrating vibrobot

The basic Junkbot is a vibrobot — a robot that moves by vibrating. Fit an unbalanced weight to a small motor, power it up, and the vibration propels the whole thing along a smooth surface. It is simple physics, but watching it actually move for the first time never gets old.

The Crumble controller from Redfern Electronics is an excellent fit for this project. It is inexpensive, has its own beginner-friendly block-based programming environment, and crucially — it has motor drivers built in, so you do not need extra components to control a motor. That keeps the wiring manageable and the whole build accessible.

The Crumble Junkbot — step by step

What you will need:

        Drinks can: The body — any standard aluminium can.

        3 pens (with lids): These form the tripod legs. Ballpoints, felt tips — anything goes.

        Small DC motor: A cheap hobby motor is fine.

        Unbalancing weight: A broken toy propeller, a blob of misshapen Blu-Tack, or even a clothes peg.

        Crumble controller: From Redfern Electronics — includes built-in motor drivers.

        Battery pack: To power the controller and motor.

        Crocodile clips: Or loops of wire if you do not have clips.

        USB cable: To connect the Crumble to a computer for programming.

 

Steps:

1.     Build the body: Tape the three pens onto the side of the drinks can, evenly spaced to form a stable tripod. The can sits on the pens — these are your legs. Then attach the motor to the can with tape, making sure the axle can spin freely. Fix your unbalancing weight to the motor axle. The more off-centre it is, the more the bot will vibrate.

2.     Wire it up: Using crocodile clips (easiest) or loops of wire, connect the battery pack to the Crumble controller’s power terminals. Connect the motor to the motor output on the Crumble. Plug a USB cable from the Crumble into your computer. That is the entire wiring job.

3.     Install the software: Download and install the free Crumble software from redfernelectronics.co.uk. It is a block-based visual environment — drag blocks to build your program, just like Scratch.

4.     Write your first program: Start simple: drive the motor forward at, say, 75% power, wait a second, then drive it backward at the same power, and repeat. You may need to experiment with percentage values — different motors and different unbalancing weights produce different behaviours. That experimentation is the point. 

Example of the blocks used to with a crumble based junk bot
Example code

5.     Let it loose: Place the bot on a smooth surface — a kitchen worktop or a wooden floor works well. Hit run and watch what happens. It will probably not do exactly what you expected. That is a feature, not a bug.

The Junk-Eggbot: a more ambitious variation

The Junk-Eggbot is a more involved sibling project. An Eggbot is a machine that can draw on curved surfaces like eggs or ping-pong balls by rotating the object on one axis while moving a pen on another. Building a junk version with the Crumble controller is a considerably more involved challenge — but it is a great escalation point once the basic vibrobot is feeling comfortable.

It introduces the idea of coordinated multi-motor control, pen servo mechanics, and the satisfaction of a machine that produces something visually interesting. Think of it as a natural second chapter for anyone who gets hooked on the first build.

What this teaches — without you having to say so

The Junkbot is not obviously a lesson. It is a build. But it quietly covers a remarkable amount of ground:

        Physics: vibration, mass distribution, friction — all visible and tangible.

        Engineering design: making decisions under constraint, iterating when something does not work.

        Electronics basics: circuits, polarity, connecting components safely.

        Programming concepts: loops, sequence, variables (those motor percentages) — in a context where the output is a physical thing moving in the world.

        Materials thinking: what can a drinks can do? What about a clothes peg on a motor axle?

 

The key is that none of these are announced. They emerge from trying to make the thing work. They are not very controllable but that randomness has his own charm.

Where to go from here

Upgrade paths and ideas worth exploring

The vibrobot is a gateway. Once it is moving, the natural question is: can I control it better? Scott Turner has explored exactly this — connecting both Raspberry Pis and BBC micro:bits to junkbot builds to add remote control and more sophisticated programming. The Crumble is an ideal stepping stone to those platforms.

Some directions worth considering:

        Add a second motor to enable some steering.

        Use the Crumble’s ability to connect to Sparkles (its LED component) to add light.

        Experiment with new junk chassis: a plastic bottle, a cardboard tube, a tin can of a different size.

 

For parents, the weekend build is the point. Do not worry about the curriculum — just build it, see what breaks, fix it, and build it again slightly differently. The learning is in the iteration.

For makers, the interesting question is what other junk could serve as a robot body. The structural challenge of making a new chassis stable enough to actually move is its own design puzzle.

Original projects by Scott Turner. Crumble controller by Redfern Electronics. The Crumble software is available free at redfernelectronics.co.uk. The original Junkbot blog post can be found at robotsandphysicalcomputing.blogspot.com



All opinions in this blog are the Author's and should not in any way be seen as reflecting the views of any organisation the Author has any association with. Twitter @scottturneruon

Comments

Popular posts from this blog

Robot Software

In the previous blog posts for this 'series' "It is a good time...."  Post 1  looked at the hardware unpinning some of this positive rise in robots; Post 2  looked at social robots; Post 3  looked at a collection of small robots; Post 4 looked at further examples of small robots Robots, such as the forthcoming Buddy and JIBO, will be based some established open sourceand other technologies. Jibo will be based around various technologies including Electron and JavaScript (for more details see:  http://blog.jibo.com/2015/07/29/jibo-making-development-readily-accessible-to-all-developers/ ). Buddy is expected to be developed around tools for Unity3d, Arduino and OpenCV, and support Python, C++, C#, Java and JavaScript (for more details see http://www.roboticstrends.com/article/customize_your_buddy_companion_robot_with_this_software_development_kit ).  This post contin ues with some of the software being used with the smaller robots.  A number ...

Speech Recognition in Scratch 3 - turning Hello into Bonjour!

The Raspberry Pi Foundation recently released a programming activity Alien Language , with support Dale from Machine Learning for Kids , that is a brilliant use of Scratch 3 - Speech Recognition to control a sprite in an alien language. Do the activity, and it is very much worth doing, and it will make sense! I  would also recommend going to the  machinelearningforkids.co.uk   site anyway it is full of exciting things to do (for example loads of activities  https://machinelearningforkids.co.uk/#!/worksheets  ) . Scratch 3 has lots of extensions that are accessible through the Extension button in the Scratch 3 editor (see below) which add new fun new blocks to play with. The critical thing for this post is  Machine Learning for Kids  have created a Scratch 3 template with their own extensions for Scratch 3 within it  https://machinelearningforkids.co.uk/scratch3/ . One of which is a Speech to Text extension (see below). You must use this one ...

Scratch and web-cams in Scratch 3

Scratch 3 was launched on 2nd January 2019, so I wanted to know would Webcams still work with Scratch 3 as it did with Scratch 2. For example, in a previous post  Scratch, webcams, cats and explosions  the cat (Scratch) moved across the screen and a button burst when the object moved in the camera onto it.  Can the same thing be done in Scratch 3? The short answer is yes, but it is done slightly differently. The first change the video capture is not there in the blocks automatically; but is an extension that needs to be added. First, you need to add the extension blocks for video sensing. Go to the little icon at the bottom left of the screen (as shown below) this takes you to the extensions menu. Next, find the Video Sensing option and selected. The webcam, if enabled, with start automatically. A video sensing set of blocks is now in the list of block options.  The rest is very similar to doing this in Scratch 2. Moving ...