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.


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