Spark & Spark Relay controlled Peristaltic Dosing Pumps

Hey all, I just wanted to jump in a little bit as I’m building a system that is very similar - and I have yet to find the perfect parts.

First, I bought two of the small peristaltic pumps off of ebay (6V DC motor driven, plastic housing, Link to Pump on Ebay). I tested them initially with an ajustable power supply (3V, 4.5V, 6V etc.) and found that they run well at a lower duty cycle (4.5V for example).

@james211 Here is a schematic of a simple circuit that I was using (via a 100k trimpot) to drive the motor slower. I also installed a 3-wire volt-meter to measure the number of volts that is being drawn across the motor. I’ve found that running it at normal (6V) setting is required to overcome the stall current, but once overcome you can drop the voltage by as much as 2 volts to run it at close to 50 rpm.

Apologies for the crappy looking schematic from LTSpice:

@Hootie81 I have a couple Nema17 Steppers lying around that I would love to stick a head onto, but I haven’t found any free-standing heads yet. I’ve also contacted a company about their stepper based peristaltic moters (Link to Technical Specs) and am awaiting a reply.

My aim is to have continuous flow as low as 0.16ml/min (10ml/hr).

@MicroCircuit there is a link nice looking stepper driven pump on post 93 above… its pretty cheap compared to some

this is the circuit I’m trying to squeeze into the size of the spark… wish me luck!

anyone know how to change a library/package in eagle to make it osh-park acceptable? im trying to use a QSOP16 package but the pins are a tiny bit to close and throwing a DRC clearance error. I can send the library if needed its for the MAX6966 SPI PWM I/O expander

@MicroCircuit I looked at those pumps as well, I didn’t purchase because I didn’t like the way the mounts were. What is your project?

@Hootie81 thanks for the snipit of code, I’ll hopefully get to it tomorrow - been a bit crazed last few days.

Alright, received the pumps from China today, 10x better then the “el cheapos” from ebay. The planetary geared motor can get pretty slow using the circuit from post 128. I’ll be very anxious to try with @Hootie81 board.

I have not run a load test using liquid yet so that will be the almighty test with these guys.

which ones did you get?

All the components are here now… i just need the PCB’s

As i was writing the library i noticed something cool the h-bridge does that you don’t get with a single FET, between each on period of the PWM it shorts out the motor terminals effectively applying the brakes, so instead of getting
12v - free - 12v - free - 12v - free that you would get from the single FET you get
12v - brake - 12v - brake - 12v - brake, not sure how much better the control will be but will make a difference for sure
or it may just waste more power and make the motors run hotter!

That sounds pretty cool…I don’t think the motors will ever run long enough to make it hard on them…but who knows!

The motors I received were these. I received on planetary gear and one gear box. The planetary seems a lot smoother and so far seems to be smoother at lower duty as well.

That’s awesome they can be used with lots of different motors, i like the stepper idea… slow and very precise dosing!

BTW, im updating my library when i get home from Italy to use the dual DC motor controller to run a single stepper… ive worked out how to do it… i just need to write it!

I didn’t price out the stepper, but I guess I should.

Check these links out…Inspiration!

1 Like

Here is some more inspiration… Motor shield v1.0 and power supply v1.0 for Spark core


Where did you get the adapter for that light pipe? I haven’t found one that fits perfectly yet.

That one didn’t fit that we’ll either… I used a hobby knife to trim it down and then hot glued it in place it’s much easier to see the colors they are more mixed together rather than 3 color dots

That’s awesome, thanks for building / sharing! :slight_smile:

Totally gorgeous! Can we buy these somewhere?

Not quite yet… This is the first build ever and still requires testing and I’ve messed the library up somewhere and it’s not working just yet

I have had a motor turning controlled by the spark so that’s something I guess, but I’m missing 8 bits somewhere and data is coming back a tad later than I expected

I’ll keep everyone posted when we start building a few more

Hi there, I have a 12v Peristaltic pump and the Spark Relay Shield, I’m going to run the pump through 1 of the relays and power it and the Spark core using a 15v plug through the relay board power inlet.
My question is I’m going to use a LM2585T regulator to ensure a maximum of 12v to the pump but I don’t understand what/if I need to use the ground pin for?

Any help would be fantastic!

Hi @apios that regulator you are looking at requires lots of extra components… like a 47uH inductor and diodes etc. It works by flicking the power on and off 100000 times per second. It’s actually very similar to the regulator on the spark shield (although higher current and voltage).

That style of regulator is probably not the best way to drive a motor, it’s internal ‘computer’ is too complicated and will struggle to keep a good steady output voltage when driving a big inductive load with high levels of back emf.

There is a few examples above using a FET or transistor arrays that would work well. I have also designed a motor controller board the same size as the core that will run 2 DC motors but the component cost may be a little high for some (about $40 in single quantities from digikey). Another perfect option would be a polou stepper motor driver for a 3D printer (will also do 2 DC motors) they are cheap and have a high input voltage range, but will require more pins on the spark and a complicated program to run

Thanks @Hootie81 that was a quick reply, to be honest in a programmer by trade and a newb to electronics, so I’m not the best at understanding the diagrams, if it’s not too much hassle, what should I buy just to ensure I don’t overload the motor?
I’ve directly connected the pump to a 5V plug to test it and it’s too slow so I’m trying to get the best out of the 12V.

Thanks again!

motor voltage ratings can be a little miss leading… i run 5v motors on 24v without any issues and they generate very little heat… but i have to use PWM. the higher voltage gives much more torque but i can only have it on for 25% of the time to give an average of about 6v for the motor rating (actually i normally run it much higher than 25%).

how long do you intend to run the pump for? if its only 30 seconds once an hour then you shouldn’t have issues with heat anyway running a 12v motor at 15v, if it was running at high load for long periods it would be a different.


I just wanted to update this project, I had to take a break for a while Since then I decided to change the programming direction and thanks to @Ric and @bko I was able to complete the programming, and now I just need some help to complete the html/javascript.

Here is that thread - Peristaltic Doser - Doser set amount over 24hr period