running 8mm stepper motors with arduino and setting up a zero position

All, this was originally posted in the robotics area, I'm sorry as now I see it should be in this section as it is more pertinent. Mods, please delete the original post.

I have made some gauges that represent aircraft engine gauges that use x27-68 steppers with A4988 drivers, and they work great for my purposes. The A4988 boards have a 12v supply and the X27-68 motors are perfectly happy with it, if a bit less smooth than I would like. They are fed by an arduino programmed with a system called DCS bios, that reads in game data from a flight sim and outputs it to the arduino.

However for two of the gauges I have made, there are actually two gauges on the same device, one representing the x10 digit, then a smaller sub-gauge that is not concentric to the main gauge that displays the x1 digit. It forms a sort of gauge within a gauge, but is small.

My intention is to try and use some 8mm diameter stepper motors that are (apparently) used in cameras and some home electronics (CD trays maybe?). I have them, they are four wire units and I have tested them using the same A4988 board setup as the X27-68 motors and so I know that they behave the same, except that they get very hot, presumably because the A4988 board is supplying too high voltage. It's a shame, as if it were not for that, I could easily just control them using the existing hardware.

As it is a gauge, there is virtually zero torque involved, the only thing it has to move would be a tiny, lightweight plastic pointer. I would need something to time it, that's the second part of this and I'll come to that later as a separate question.

The motors, from what I can gather, operate at 3v. So what I need is either to be able to control the steppers directly using the Arduinos, or find a stepper driver that is capable of working with arduinos to control these diminutive motors, so the first question is what is available to do this? Can I use two outputs from the arduino to control direct?

The second part is that I need to set a zero for the stepper. On larger gauges I have an optocoupler and a bit of code in the sketch that works with that, but this is tiny and the optocouplers just don't fit. So for those very small applications, what methods are available that would work with the arduinos that would allow me to set a zero position?

The large gauge in which this smaller gauge sits is 52mm dimeter, and the smaller gauge is only 15mm in diameter and sits to the right of the main gauge axis - have a look at the attached picture

Any thoughts and suggestions gratefully received

Les

The A4988 supplies current, not voltage. You need to set the current correctly for the motor, then all is well.

These tiny motors tend to be about 75mA or so - this may be below the range of adjustment of available modules, if not the chip itself.

Yes, it will get hot, its a stepper motor, but how hot is the issue. Some of these small motors may only
be rated for intermittent operation, note as they are typically used for camera lens auto-focus mechanisms
etc.

Thanks for looking at this Mark

I set the on board potentiometer to the lowest setting and within 30 seconds or so the motor way far too hot to touch, I would estimate 80 degrees or so. Certainly too hot to allow it to be use in the project planned

I am not aware of any specific stepper drivers for small applications, but am happy to be proved wrong. As I mentioned, the alternative would be it they are able to connect and be controlled direct from the Ardiuino.

Cheers

Les