I am currently using an arduino coupled to a mosfet to drive a 3v DC motor. What it does, is turn on the motor for a second, wait 10min, turn it on again for a second, and repeat the next day. I would like to go a step further, and replace the arduino by a simpler setup, but I don't know what circuit I'm looking for. I feel like it should be a modification of something that generates square waves, just with a much longer period.

  • \$\begingroup\$ I think you can go for a timer like NE555 chip coupling with H bridge to drive your motor \$\endgroup\$
    – M.Ferru
    Jul 30 '16 at 10:32
  • 1
    \$\begingroup\$ 555 timers don't do 24hr delays by themselves but you could use something like an ATtiny85 (8 pin) to replace the arduino. \$\endgroup\$ Jul 30 '16 at 13:40

If you are making a lot of them, a small microcontroller with an internal calibrated RC clock (typically good to about +/-1%) will be the lowest cost solution, well under a dollar in smallish quantities. You would need a toolchain that supports the micro (software) including a cross assembler (or compiler) and a programmer or programmer/debugger (hardware). You can get the former for free and the latter can be less than $20 so it's not necessarily going to break the bank. The PIC12F1501 is one such part, available in an 8-pin DIP or smaller packages. However it's a little lower than I'd recommend in general because they left out the debugging hardware and you therefore have to use a header board for debugging, which isn't as convenient as a slightly more capable chip. Of course if you're making lots of them, unit cost is the important factor so I do specify them.

However, if you're happy with the Arduino, and just want it a bit smaller or cheaper you can get a clone nano board for $2 or so and it has very little extra on there- a serial chip, a resonator for more like +/-0.5% accuracy etc. Since the serial/USB chip is on there you don't need the programmer/debugger hardware. It is smaller in footprint than a 40-pin DIP IC.

enter image description here

Note that in either case, the clock accuracy is such that it might drift by many minutes every day (cumulative) - 1% of 24 hours is about 15 minutes- so if you start it out pulsing at night, it won't stay that way. These days if you really need it to work at the same time each day it might be easiest to go up in complexity (greatly) and have the device use an internet connection to set its internal time.

  • \$\begingroup\$ Such as with a ESP8266-based device, which is still under $3 and has Arduino support available. \$\endgroup\$ Jul 30 '16 at 14:13
  • \$\begingroup\$ @IgnacioVazquez-Abrams Good point. The modules are even smaller than the nano and as you say not much more expensive. The complexity is not necessarily a factor from a system point of view. \$\endgroup\$ Jul 30 '16 at 16:06
  • \$\begingroup\$ Awesome! I will give a try to the nano, and maybe even the ATtiny85 suggested by @Jim Dearden. The point is, I just need to build one, so the fix costs of getting a programmer etc. are too high. \$\endgroup\$
    – yannick
    Jul 31 '16 at 10:29

If you want a non-micro solution you might want to try MAXIM INTEGRATED PRODUCTS ICM7240IPE+ IC, TIMER. You will need to add an extra monostable (555) chain to provide your desired waveform. Be very careful when using the 555 to generate long delays - Electrolytics have wild tolerances, high leakage currents and poor temp stability. If the leakage of your timing cap exceeds the charging current, the device will never trigger!

Alternatively you could code it into some small PIC device with an internal oscillator, or even load the compiled arduino code into an AVR micro.

The PIC solution is the cheapest by far, but you would need to code it in C or assembler.

The AVR solution would enable you to use your existing working code, but you would need to provide any necessary supporting components (oscillators, voltage regs, etc)


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.