Open Source Laboratory Rocker / Mixer / Shaker (Lab Rocker)

by akshay_d21 Jun 6, 2018
Download All Files

Thing Apps Enabled

Please Login to Comment

Ok, I printed the parts and ordered exactly what you suggested for the electronics. Looking forward to assembly tonite :)

Thanks for your comment. I am glad that you printed it. The code should work flawlessly with the right electronic hardware. Use a cyanoacrylate glue like Super Glue or Gorilla Glue for gluing the respective parts. :)

Good luck!!

How about soldering an not using a breadboard to make it more compact? xD
But good work made one but redesigned the bottom to be more stable and less bulky

Thanks for commenting. This was a prototype so there is a ton of room for improvement as you mentioned. The bottoms is actually very stable and the wobbling seen in the video is from a wobbly table. Nonetheless, thank you for the kind words and your interest. :)

bonjour, super cette table vibrante

Merci beaucoup pour tes mots gentils. Je suis heureux que vous l'aimiez. :-)

This is some beautiful design!

Thank you for your kind words!

thank you very much! Go Bulls!

Comments deleted.

very good !
Parabéns sou técnico de laboratório e amei esse projeto

Muito obrigado pelas suas amáveis palavras. Estou feliz que você goste do meu design. :)

Thank you for this thing! Thumbs up to you!

  • Posted with 3D Geeks Thingiverse Browser App

A modified version for shaking spray paint cans would be very useful if you feel inclined

Hey I am uploading the tray part soon.. either tonight or tomorrow. Keep an eye out so you can modify the top part to your liking. :-) If you are not a designer and want something specific, do let me know.

Thanks for that. Don’t do anything particularly for me, I do design but find reworking someone else’s design almost impossible, generally easier to draw from scratch. I’ll have a go at it, shaking paint cans is a great job for a machine.

Nice piece of work - I am also going to make one for etching PCB's :) You mention having designed it in Fusion 360, would you mind uploading the F3D files? Or at least the tray/dovetails so I can make one to fit my PCB etching tray?

Thanks very much


Thank you for your kind words. Yes I will upload the part tomorrow of before the weekend. :)

I have a great suggestion for a tray: just the dovetail and upluad it as a step/f3d/sldw/... So everyone can make them as he pleases.

havn't looked throug all the comments, but the angle adjustment could be realised with a screw, a nut and a sliding ?peg? in the stepper_rotor model. less rotating circumference, less max angle of tilt, mechanical solution so no aditional power needed. maybe some slits/indentations for degrees in the model_base and one indicator slit in the see-saw_base

Yes. Thank you for your comment! This rejuvenates this project. I was going to do the slider and then I forgot about it. :-)
Keep an eye out over the weekend or latest next week or so. I will post the new parts.

Wow! Nice design, I've been looking for a way to agitate my PCB etchings!

Thank you! :-) Glad you like it. Post yours in the make section.

Comments deleted.

Thank you for this thing! Thumbs up to you!

  • Sent from 3D Geeks: Thingiverse Browser for Android

Awesome print quality!

Nice Gig!, how about a servo instead a stepper it whould reduce the material of stepper motor + driver to a single servo and arduino + a potenciometer


Muito obrigado, Pedro! :-)

I know. This is like a math problem with multiple solutions. You can use a variety of options depending on the load that you are mixing.
I am going to try a miniature version using a servo myself. :-)

Really awesome work! I'm working on open source lab equipment as well - glad to see others in the space!

Thanks a ton for the response! Of course! Glad to see you are working in that department as well. :-)

If you're looking for a shaker that is less complex, uses fewer parts, is faster to make and also cheaper then watch this:

It's laser cut, no STL provided.

Fantastic! I might do one up-scaled version similar to that as well!

Please, I'm looking for the schematic connection. Could you show me? Thanks

For detailed schematic and Arduino code, link is available in the description below!
Or just access this image that i have attached, for the schematic.

Thanks! :-)

Just wow. I have no use for this but it's so nice I want to make one.

and buy a lab coat.

I am glad you like it! :-)
Yes, why not, make one yourself! The device can be used for a variety of purposes. I am sure you will look great in a lab coat too ;-)

Nice and clean design. Thnx for sharing :)

Thank you very much! :-) It was my pleasure.

Thank you for this thing! Thumbs up to you!

Thanks mate! Cool browser too. :-)

the stepper rotation is not smooth. Is it a mechanical or software bug? Or is it a feature?

It is a mechanical bug. The motors shaft was not glued into place when this was filmed and that caused a bit of play during the rotation. The initial error was in the printing, because of a bad support structure. If you print this okay and secure all your contact sets, you can eliminate this. Thanks for asking by the way! :-)

Comments deleted.

From outside - Design looks great.
But all you put inside - is over priced.
In Africa for this price 10 people will Shake, in your lab, for a year.

I think your design not "can be Remixed", but "Should be remixed".
And place where you put "shaft" should be reconstructed\remodeled. Because when you will put some load and look to oposite side you will be "surprised", ang get woried.

But all that, is my (not only my) IMHO.

Based on your arguments in here I could not await to see your high sophisticated designs and I was looking on your posting in Thingiverse at https://www.thingiverse.com/Anymorf
And I must say you really impressed me! One design which actually is a re-design. That really qualifies you as an expert ;-)
By the way, how many "likes" do you have compared to this part here? Actually I already know the answer.

Comments deleted.

Nice design, just wondering about the future work
Have you conceived how would you implement a changeable tilt angle? I guess you will reverse the motor rotation before reaching certain angle.

I will use a variable length shaft. :-) Stay tuned!

Will it adjust on the fly? I think you can leave the design as it is and use a tilt sensor plus mcu to control the motor.

A simple mechanical modification can help it change on the fly.

want to see what kind of modification you have in mind. Because the zero level feature will also need some kind of logic from an MCU and sensor.

... how many people were waiting for the guy to crank it up to a faster speed and got disappointed when he turned it back down

This is neat! Something to help me agitate etchant for my homemade PCBs. I see a lot of "constructive criticism" in the comments. But ignore them. This is a great design and thank you for the time and effort you put into making this. If anyone thinks they can make it better then prove it otherwise you're just noise! I'm thinking up a couple of mods myself. Timer with a Beeper. Maybe make the motor go back and forth to make the amount of tilt adjustable. Might make it more compact. Will be printing this out today. Thanks again.

Thanks so much! :-) Haha I love to take criticism. Not a huge deal but thanks for your support! :-)
I would LOVE to see your version. I will also upload the adjustable crank stroke shaft in some while.

Most parts don't require supports but be sure that your bearings fit when you scale the model.

Happy Printing! :-)

I ended up redesigning it from the ground up in Fusion360. I only just finished printing all the parts and will be working on the electronics/arduino code next. Once I get it working I'll upload it to thingiverse as a remix.

Wao Akshay, this is awesome. It is better than the GE Wave 25 that I unfortunately work on. Are you in a Bio Pharma Industry?
Anyways congratulations, this is definitely a build that I will be doing. Thanks

Thank you so much for the accolades! I am glad you found my contribution useful. No, I am a biomedical engineer by trade. :-)
Do post one in the makes section in case you do make one. Also, keep an eye out on the adjustable crank stroke length part that I will be uploading sometime this week.
Cheers! :-)

This is such a cool project. excellent work. I don't know much about electronics but I do know how to program , so an arduino and a stepper motor is what I would have used as well if I had to build projects . If the other experts here think they can build it better using different motors ,then we would love to see this project or other projects using the parts they are suggesting.

Fantastic! I am so happy you like it! :-)
Appreciate the feedback and your support.

This is a nice project . I like the idea of using a stepper motor because it can be programmed to different motions (180 clw then 180 ccw) you can easily keep track of position for leveling the bed if desired. You could also do the same with a dc motor and encoder as others have said.

Actually, that's a really nifty point. With the Arduino and stepper, you don't need an adjustable stroke length part. You can do it all from the Arduino. You may need to switch around your stepper library - I'd recommend accelstepper so you can use variable acceleration - but you could easily add a routine that rotates the stepper back and forth, rather than doing the full circle. Combine that with a cheap LCD and buttons and you could control speed and the amount of shaking amplitude.

Great idea! :-)

I will implement some myself in the coming weeks. Thank you!

Thank you so much! :-)

Yes, the idea was to make it simple and not over engineered as many have pointed out. I made this prototype with the parts I had at hand. Of course, the geared DC motor would be cheaper and I guess the heating would be lesser. I will probably do one more version of the same with the "cheaper" parts. Stay tuned! ;-)

why did you use a stepper?

Thanks so much for asking!

I had it at hand and had coded a stepper before. Also, since I don't have a 3-D printer myself and was also on a budget, I was not sure how much load a geared DC motor could take. So I decided to go with a safe option of a stepper motor with low ampere settings for the driver. :-)

If you have suggestions, additions or want to propose changes, I would love to see your version in the remix section.

i can see the use of the arduino (set timers, shake programs eg hard for 30 seconds then soft for 10 repeat for half an hour etc)
but personally i'd use a gear motor instead of the stepper.

Stepper motors have a lot of torque but aren't meant to be ran continuously in one direction like DC gear motors are.
Just put your hand on a stepper motor of your printer like the extruder or the x/y axis motor and you'll feel how hot it is.

with a gear motor you can use a much smaller motor therefore saving energy and having a part that will last longer (heat = eventual failure)

Thank you for the suggestion! I created this with the materials I had at hand. I completely understand the reasoning behind all this and, of course, geared motors are always an option! Yes, the motor does get hot after a while and thus the driver shield is set to the lowest amperage that drives the motor. Consider this as a proof of concept prototype and feel free to post any additions that you might make to this device in the future. :-)

It's a beautiful build but like others have commented it seems extensively and unneccessarily over-engineered, the Juicero of shakers.
There is no counterbalancing (see the table shaking) nor adjustable crank stroke length, a basic requirement that should have been there right at the start rather than the inclusion of the complex electronics - remember the most reliable components are those that are left out.

I built this "PROTOTYPE" with the time and materials I had at hand. Of course, there can be several additions and changes that are definitely possible over time. The adjustable crank stroke length and many other features are definitely the things that I have considered adding in the future.

Everything has been included with a scope of future improvisation. That is why it is an open source project and it is a "prototype". If you think something can change, I would be happy to see a remix! :-)

Also, the table was shaking because it was a table on top of a table. On a flat surface, you don't see much 'shaking'. That is on me. My bad! :-(

As I already mentioned further down "That's how they have done it and it works!" ;-)

How about a remix with all your suggestions and the community will be happy to see all the enhancements …

There is always something that can be improved. But to improve it someone has to make it first. He/she has done it :-)

Why would I want to remix it? I have no interest in this particular model save for it being prominently featured on the home page.
I and others have pointed out obvious shortcomings of this design and so have provided some constructive criticism. It is a way to learn, no-one should be offended.

Nobody is getting offended. Least of all, me. I thank you for taking the time to provide constructive criticism despite of having no interest in this model I designed. :-)

Thanks @TuxMan ! :-) I concur. Everything has endless possibilities and room for improvement. I would welcome additions and changes anytime! Post them in the remix section and I would be happy to incorporate those in the main thing itself with adequate attribution to the new author(s).

You don´t need a stepper motor or an arduino to do this

It is a topic of discussion. A lot has has been discussed in other comments below. Join the thread! :-)

If you were mass producing it yes but he made it with parts on hand:
Stepper you already have $0
Uno on ebay $5

One nice thing about it being a stepper is you could implement variable stroke in the software by turning the stepper one way and then the other instead of continuous turns. You would need to add a sensor to know where center is and seek it at start up (hall effect sensor and magnet, reed switch, optical interrupter etc).

You could also correct the asymmetrical motion by varying the step rate. This way you could also get any motion profile you want in this way i.e. gradual start and stop from each end point.

Neat, I was looking for a rocking device to help my HIPS filament dissolve faster in D-Limonene. The rocking motion will allow the D-Limonene to swish back and fourth across the 3d printed part, allowing the HIPS to dissolve faster. I'll just need to make an adapter to hold a container on top of the rocker.

Fantastic! I am so glad that this has the potential to help. :-) Would love to see your make some day.

Very nicely done and creative. Thank you for sharing!

It was my pleasure, Hoan. Thank you for the appreciation! :-)

Great project. I think ball bearings are a great idea. They are cheap, work very smoothly, handle a lot of stress and are easy to find especially if you're into 3D printing and work on your own printers often. I also like the use of the stepper & Arduino because these are common parts found at electronics & 3D printing suppliers and offer a lot of options for adding in cycle programs and other options later on.

With the parts I keep on hand, I could easily build this project right now. Great work!

Thank you very much for your kind words of appraisal! :-)

Exactly! I am glad you find it resourceful and would love to see your build some day.

Seems way over-engineered. A 12V power supply, 12V dc motor, and a potentiometer.

Please see the comments below regarding this discussion topic.

I think you could reduce costs further by using brass tubing as bushings in most (if not all) of the places where a ball bearing was used, such as the pivots for the rocking table. I don't know if you could replace the bearing on the wheel side of the rocker arm though...

If you order from China, those ball bearings are REALLY cheap.

Exactly! Popular websites like AliBaba, GearBest and BangGood are great resources for cheap yet quality goods. :-) Thanks for pointing that out.

Yes, there is a lot of scope. I did these with the parts I thought were cheapest and easily accessible at that time and place. It is a process and I would be glad for more inputs like these. :-) Thanks!

Hi, what a great little project thanks for sharing. I love it when people create things from commonly available parts and electronics that can be easily reproduced around the world.

Thank you very much for your kind words! :-) I'm glad you liked it.

Why does this design need all these electronics?! There's 8 components needed for this machine, and I don't mean 8 circuit boards: 12v gear-motor, the old fashioned 2-wire DC type, a rotary potentiometer, 2 transistors, 2 diodes, a resistor and a power supply.

2 transistors, 2 diodes, and a resistor can replace the whole arduino and stepper driver for the function you're performing here.


It's like people forget basic electronics design and create a Rube-Goldberg device instead of the simplest implementation, the build calls for a microcontroller, stepper driver, and stepper motor, and all it's doing is varying the speed of rotation via a dial. On the plus side, the way this is designed, it looks like one could swap in the simple parts instead with no modification of the print.

Other than that, great project!

We are too old for all this modern over-engineering stuf\style\shit

Please refrain from using profanity. If you do not agree with my methods or appreciate my design, I suggest you to not comment. Thanks!

I can think of several reasons why basing this on Arduino is a reasonable proposition. For many users, Arduino, and their software are commonplace and familiar, more so than electronics design. In addition, it allows more flexibility for future ideas (eg, adding in sensors)and repurposing of parts as projects progress (eg, I’d much rather have a stepper in my gadgets collection than a gear motor).
I’ll also add that if you're after the most simple option, then bespoke electronics (even just basic electronics), are not the simplest solution either. The simplest solution is to grab a pwm motor controller for a couple of bucks. Then you don’t need the breadboard, pot, transistors, diodes, resistor, switch. Just a gear motor, controller and power supply. Basic electronics may be simpler than what’s proposed here, but there are more modern, simpler options.

Thanks for the feedback. I appreciate your kind words and the constructive criticism! :-)

The primary reason that these components are involved, is that it is an open source prototype. There is lot of scope for users to modify and improve functionality, hence it is classified as 'Open Source'. An Arduino broadens horizons to a great extent. Several additions are possible by incorporating these easily available parts. I discuss a few additions even at the end of my demonstration video. By using a simple circuit, we can actually suffocate new ideas and additions. The whole idea revolves around improving these devices and making them as functional as possible by keeping costs at a minimum and assembly, basic.

A stepper motor has been used for the sheer torque that it provides. Not all DC motors can drive this assembly with a a few test tubes or a beaker on top. The ultimate goal is to enable an uninterrupted mixing action and provide a device that can actually perform lab tasks.

Hope this helps! :-)

I'd argue that "keeping costs at a minimum and assembly, basic" you're failing with the overcomplexity, a DC gearbox motor has more than enough torque to drive even a heavy beaker. The simplicity of the circuit and the inexpensiveness of the components would put the basic curcuit and motor at 1/5 the cost of the arduino and stepper motor + controller, require no computer to set up, and about 10 solder joints, no breadboard necessary, they can be soldered directly to one-another. I'm all for using arduinos in the lab, I developed an open-source arduino controlled thermocycler that's <$50, that needs a microcontroller, but some things just don't. Find ways to simplify and cut costs, choose the simpler route and avoid overcomplexity.

I'm not sure how experienced you are with load-bearing 3D printed objects, but I'd definitely replace all of the 'pins' that are 3D printed with threaded rod or rod stock, particularly on the arm and cam since those may be bearing a fair bit of weight with a beaker. the shear strength of 3D printing along the plane of the print is not great, but if those were set up as holes for rod, the cross section strength of a hole in that profile is very high. For test tubes, the design is fine, but I'd be weary of putting a 500mL of liquid on it overnight.

Why don't you make just all the changes you suggest and post it as a remix?
For questions like yours I heard somebodies answer in earlier days of my life 'It's how they have done it - and it works' ;-)

I think @TuxMan has a great idea! Would love to see a remix. ;-)

Great project -- I'll been meaning to do something similar for a PCB etchant agitator tray.

As long as you've got an Arduino driving the stepper, swap the on/off switch over into software and then you can do soft-start and soft-stop easily without requiring the user to remember to turn the speed pot.

If I end up building this, I'll tweak the code around and show you what I mean. :)

for my PCB etchant agitator I use my 3D-Printer heated bed :)
Just write some very simple gcode like G0 Y10 F3000 and G0 Y0 F3000 and copy/paste it some times. Also preheating the bed is very usefull to make the process faster. But the coolest on this is - it costs nothing, if you have a 3d printer with movable heated bed

Thanks a lot! :-) I know, I think we talked on facebook regarding this. I would definitely look forward to the additions that you guys can come up with.

You can tie the tray and wash gold mine ... :)

This man even don't understand, what are you talking about. He think about this design like some invention and can't understand critic.
We are too old for all this modern over-engineering stuf\style\shit

Comments deleted.

Dude, enough! You need to get off my page.

I am unclear about what you are saying! But I am hopeful that this project has pleased you!? ;)

I am glad you did. Happy Printing!

This is awesome, great job!

Thank you sir, for your kind words! :-)