Peristaltic pump with interchangeable tubes.

by ManWithoutOptions, published

Peristaltic pump with interchangeable tubes. by ManWithoutOptions Feb 18, 2016


Design Tools


Liked By

View All

Give a Shout Out

If you print this Thing and display it in public proudly give attribution by printing and displaying this tag.

Print Thing Tag

Thing Statistics

4173Views 1447Downloads Found in Engineering



The pump is designed and tested with 3/18 inches outer diameter silicone tubes. The encoder I used is called "acz11", 20mm Height 6mm diameter shaft version. Motor is "TFK-280SA-22125" motor. Arduino circuit is just a simple RC filter suggested by the encoder pdf (use 0.1uF capacitor instead of the 0.01uF one) and a L239D H bridge. I used arduino nano and a HC-06 bluetooth module. I powered everything with a 9v battery.

Lube any part with synthetic PTFE oil that you think might need lubing.
If you are printing bolts, print in multiples and use z hop in tight clusters to prevent overheating and knocking
All prints have been compensated for the elephant foot effect. No filing needed.
If you somehow have my old reduction gear, nothing is reusable. They have been modified
Use 100% infill for the bolts. They are the weakest link. Use less infill for other parts if you so desire. Just make sure you have a thick wall (3 minimal)
I used 0.1mm layer height. Use 0.2mm layer height if you desire. In theory it could work for the 45 degree climbing bolts.

There is a pump code.txt that provides the code I used. If you read it you can see the parseCommand() function you will see the various command. for example "MA 500" will move 50ml of water toward the 'A' side. The code is written to exclusively work with the "ardudroid" APP on android. Please note the code is half finished. It lacks EEPROM function and it will not store calibrated value. This means you have the use the calibrate command "CA XX"(XX=number of turns) and standardize command "ST XXX" (XXX is 0.1ml of water you moved with the CA command, measure by your graduated cylinder to store turnPerMl constant) everytime you start it up. Feel free to finish the code for me.

Most likely you just need the pump because you have a encoded gear motor / stepper motor. If not, it is very likely you have your own dc motor. In many cases you are not going to have the same motor / encoder as I have. I have divided the .stl into 4 sections. Print the sections you needed. Also your breadboard isn't likely to fit into my breadboard holder, because chances are the breadboard clipping will be in different shape and I left no room for tolerance.

If it is wobbly, that means you didn't use a lock nut on the opposite side of the thread. But if it is too tight the motor will stall, so loosen the lock nut if needed. Print as many lock nut out as you need. Print as according to the fullview reference.stl. If more than one part is need it will be noted on the file name. Everything should be able to print in the original orientation without support (even those that have small bridge). Some parts have customized support already built in (the axles). If you have any question or I missed something (and it is very likely), ask in the comments.

More from Engineering

view more

File Name



All Apps

Auto-magically prepare your 3D models for 3D printing. A cloud based 3D models Preparing and Healing solution for 3D Printing, MakePrintable provides features for model repairing, wall thickness...

App Info Launch App

Kiri:Moto is an integrated cloud-based slicer and tool-path generator for 3D Printing, CAM / CNC and Laser cutting. *** 3D printing mode provides model slicing and GCode output using built-in...

App Info Launch App
KiriMoto Thing App

With 3D Slash, you can edit 3d models like a stonecutter. A unique interface: as fun as a building game! The perfect tool for non-designers and children to create in 3D.

App Info Launch App

Hey, off topic but care to tell me how you made the bluetooth module work; I've been trying for ages with my HC-06 and cant get into AT mode.