In case a uController solution isn't completely off the table, I just discovered the DigiSpark with DigiStump shields. I haven't tried it, so I can't vouch for ease of use, but it would be a cheap experiment. There is no need for a programmer because they plug into a USB port. It comes with an IDE (the thing that you write the code in and send it to the DigiSpark) that runs on your Windows/Mac OS/Linux PC. You write the program using the Arduino style programming language (looks a lot like C), and then load it onto the DigiSpark.
Two possible hitches:
* Might be hard to install the IDE -- not strait forward for a non-techie person
* The programming language might have a bit of a learning curve.
But, the parts are cheap:
*
http://www.mcmelectronics.com/product/28-17748 [the DigiSpark]
*
http://www.mcmelectronics.com/product/28-17754 [a MOSFET DigiStump shield that could be used to drive the motor]
*
http://www.mcmelectronics.com/product/28-17750 [a protoboard shield for rolling your own driver]
Check out the DigiSpark WIKI for more info:
*
http://digistump.com/wiki/digisparkAnd, one argument for using a uController over Colin's discrete analog solution is tighter timing. Especially with those 10uF caps (Colin made no mention of this, but if you just use the run of the mill aluminum electrolytic, they will likely have a tolerance of something like -10%, +75% which means the value of that 10uF capacitor can range from 9uF to 17.5uF -- not conducive to precise timing or even ballpark timing. So, if that is an issue, then be sure to purchase a capacitor with a tolerance value in line with your need (consider tantalum or even ceramic [X7R]):
*
http://www.digikey.com/product-detail/en/199D106X9016C6B1E3/718-1199-2-ND/1559838*
http://www.digikey.com/product-search/en?x=0&y=0&lang=en&site=us&KeyWords;=+ +FK16X7R1C106K
Also, Aluminum Electrolytics are prone to drying out (I avoid them as much as I can).
With a uController you can do a lot better with timing stability and probably for less cost -- since you have to buy all those discrete components and pay for more PCB real estate (which, admittedly, probably isn't an issue in your case--only a concern for a _design engineer_).