DIYbio Orbital Shaker

This is a relatively large laboratory orbital shaker using a 12V stepper motor and Arduino Nano.


Creative Commons Attribution Share Alike

Commercial use is allowed, you must attribute the creator, you may remix this work and the remixed work should be made available under this license.

Learn more or download attribution tags



This is version 2.0 of our DIYbio orbital shaker. We'll be adding in more info, videos, and assembly instructions in the near future.

All the electronics are the same as the original version. So is all the Arduino code.

The electronics diagram is included above in the images. The Arduino code will be provided below. Check out our prototype here for hints on assembly:

...until we get some more documentation up for this version.

The SketchUp file is included. It contains both the original prototype and the new version. It also has some designs not included in V 2.0 but you're free to use them/modify them.

Video of it in action:


Arduino sketch used:

// Simple Stepper Motor Control
// by Achim pieters,

// Defines pins numbers
const int stepPin = 7;
const int dirPin = 8;

int customDelay,customDelayMapped; // Defines variables

void setup() {
// Sets the two pins as Outputs

digitalWrite(dirPin,HIGH); //Enables the motor to move in a particular direction
void loop() {

customDelayMapped = speedUp(); // Gets custom delay values from the custom speedUp function
// Makes pules with custom delay, depending on the Potentiometer, from which the speed of the motor depends
digitalWrite(stepPin, HIGH);
digitalWrite(stepPin, LOW);
// Function for reading the Potentiometer
int speedUp() {
int customDelay = analogRead(A0); // Reads the potentiometer
int newCustom = map(customDelay, 0, 1023, 300,4000); // Convrests the read values of the potentiometer from 0 to 1023 into desireded delay values (300 to 4000)
return newCustom;

Materials and methods


12V stepper motor
Pololu DRV8825 stepper driver
Arduino Micro Pro
Rocker Switch
DC Adapter (Female)
608ZZ bearings (x5)
3mm bolts
3mm nuts
3mm screws



Issues are used to track todos, bugs or requests. To get started, you could create an issue.


1792a360e108fd057b00b94f712d276b?default=blank&size=40Miguel_1212 added this to the Machines collection ago
F6ef79dab4241f4dbea1bf13e02a9e46?default=blank&size=40Fraudrin68 added this to the Tools collection ago
F6ef79dab4241f4dbea1bf13e02a9e46?default=blank&size=40Fraudrin68 added this to the Appliances collection ago
0592e92f50010d5abf34a408bf416747?default=blank&size=40redpaul6t8 added this to the Things to Make collection ago
954ce00b12f440ba04c88eb843931e11?default=blank&size=40St eF added this to the Labo collection ago
657d106d49f8358163acba8b1f3b6735?default=blank&size=40Lucas BrΓ­gida added this to the Make collection ago
373464ea2e2a50b9c33e5b2a6e53375f?default=blank&size=40Andrew added this to the Stuff collection ago
C932ccdad2c6671b5d979c61416d3cf6?default=blank&size=40Daedalos added this to the Lab collection ago
Mini scs perth south paul chau 200PaulChau added this to the good stuff collection ago
Af73314372467823c74b5317e5993f9d?default=blank&size=40Paulo Cabrita added this to the Laboratorio collection ago
61b28c78b646b18262bb556f1a7fd434?default=blank&size=40thepudding added this to the check out collection ago
39ad12b3349d05f107dd19ed2d018fc4?default=blank&size=40wannadit55 added this to the love collection ago
39ad12b3349d05f107dd19ed2d018fc4?default=blank&size=40wannadit55 printed this ago
Carousel thumb img 20171204 110003 194
Printed on:
ender 3
Cb1c790db8610488168991873891a326?default=blank&size=40Rodo Nicodemes added this to the Laboratorio collection ago
Mini logo4ProgressTH published this design ago