Get our free book (in Spanish or English) on rainwater now - To Catch the Rain.

Open-source syringe pump

From Appropedia
Jump to navigation Jump to search

Sunhusky.png By Michigan Tech's Open Sustainability Technology Lab.

Wanted: Students to make a distributed future with solar-powered open-source 3-D printing.
Currently looking for PhD or MSC student interested in solar energy policy- apply now!
Contact Dr. Joshua Pearce - Apply here

MOST: Projects & Publications, Methods, Lit. reviews, People, Sponsors, News
Updates: Twitter, Instagram, YouTube


The source code for the linear actuator and pump server are housed here:

Full instructions, documentation, data, and pictures coming soon....

Materials and Tools

Materials for syringe pump
Parts for syringe pump assembly.
Description Count
Motor End 1
Carriage 1
Plunger Holder base and tab 1
Body Holder 2
Idler End 1
NEMA17 motor 1
6mm x 6mm shaft coupling 1
625z ball bearing 2
LN6UU linear bearing 2
M3 x 10mm socket head cap screw 6
M3 x 16mm socket head cap screw 4
M3 x 16mm socket head cap screw 4
M3 x 20mm socket head cap screws 3
M3 hex nut 13
M5 hex nut 5
M5 threaded rod 0.2 m
6mm A2 tool steel 0.4 m
Necessary tools
Necessary tools for assembling syringe pump.
M3 allen key
3mm drill bit
exacto knife


  1. Motor end mounted to motor.
    Secure motor into the motor end using 4 M3 washers and 4 M3 x 20mm socket head cap screws.
  2. Metal rods inserted in motor end.
    Insert the 2 metal rods into motor end, then secure them in place with 2 M3 nuts and 2 M3 x 10mm  socket head cap screws.
  3. Threaded rod coupled to motor.
    Insert threaded rod into the coupler halfway, the other half should be on the motor, secure it.
  4. Not hollowed-out carriage.
    Hollowed out carriage.
    Hollow out the two ends of the carriage, with a handheld drill bit or knife to make a hole in the plastic.
  5. Linear bearings and nut inserted in the carriage.
    Snap the linear bearings into place on the hollowed out ends of the carriage. Then insert an M5 nut into the nut-trap on the bottom of the carriage.
  6. Base of the plunger holder attached to carriage
    Attach the base of the Plunger holder to the carriage with 2 M3 nuts and 2 M3 x 10mm socket head cap screws.
  7. Carriage threaded onto the rods.
    Slide the carriage onto the threaded rod and make sure the two metal rods fit into the linear bearings.
  8. M5 nutes mounted on threaded rod.
    After the carriage is midway down the threaded rod, thread two M5 nuts onto the threaded rod.
  9. Bearings inserted into the idler end.
    Insert the two bearings into the circular slots in the idler end.
  10. Idler end mounted on the rods.
    Now slide the idler end onto the rods and secure it with two more M5 nuts on the end of the threaded rod. Push the two nuts already on the rod up to the idler end to secure it.
  11. Syringe in the body and plunger holders.
    Insert the syringe body into the body holders, then slide the plunger into the base of the plunger holder.
  12. Syringe in the body and plunger holders.
    Syringe in the body and plunger holders.
    Using four M3 x 40mm bolts, four M3 washers, and four M3 nuts secure the two holding pieces to the idler end of the pump. Put two nuts it the top of the holder closer to the carriage and two nuts in the bottom of the holder against the idler end.
  13. Mounted syringe.
    Insert the tab of the plunger holder on top of the plunger to secure it to the pump and prevent slipping when in use.

Connection and Calibration

Necessary tools
Items to connect and control the syringe pump.
two ethernet cables
raspberry pi (case optional)
mini-USB adaptor cable
wireless router
  1. Motor plugged into raspberry pi.
    Plug the motor into the raspberry pi. If the motor is plugged in the wrong way the pump will push when its told to pull. NOTE: Do not plug and unplug the motor from the pi if the pi is plugged in to a power source.
  2. Mini-USB plugged into raspberry pi.
    Using a mini-USB adaptor plug the raspberry pi into the computer.
  3. Raspberry pi hooked up to router.
    Plug an ethernet cable into the raspberry pi, then connect it to the Netgear wireless router. Then connect the router to the computer with another ethernet cable.
  4. Plug everything into an outlet and turn on the router. Look to see that your computer recognizes the network. Once it does, switch over to that network and open up your web browser. Type in the address bar: pi.local:8080. NOTE: This is only the address if a version of Linux is in use. We have no practical way to get the address on Windows or Mac, however it does work on Windows and Mac if the name can be obtained.
  5. Raspberry pi hooked up to router.
    The site that is now opened is the pump control interface. Set it to a lower speed, then pull the syringe out slightly past a big marker. Then using tiny steps, push the syringe to the bigger marker so the plunger is exactly on the mark. Then push it 50 mm, and record how many milliliters it moves. Then divide the number of milliliters it went by the number of millimeters you pushed it and plug that number into the calibration window.