General Stepper Motor Question

Hi guys, I’m a beginner just starting out with the .NET Gadgeteer and GHI hardware. I have a FEZ Cerberus Mainboard and I just put in an order for the Stepper L6470 Module.

FEZ Cerberus Mainboard

Stepper L6470 Module

I would like to buy a compatible stepper motor to use with the Stepper L6470 Module. My plan is to rotate something horizontally that weight at most 3 lbs and it will only be rotating a small amount every few minutes. I was looking at the stepper motors from Pololu but if there is a better choice let me know. I was going to purchase this one and I wanted to double check that it would work. This is my first attempt.

Stepper Motor: Bipolar, 200 Steps/Rev, 28×45mm, 4.5V, 0.67 A/Phase

I was going to try to power everything from 4 AA chargeable (1.2V 2,300 mAh) connected to a 7watt solar panel. The batteries should put out max 4.8V right? I guess this means my batteries would have to have a nice full charge to make the motor move? Maybe I should get the next one down at 3.8v?

Stepper Motor: Bipolar, 200 Steps/Rev, 28×32mm, 3.8V, 0.67 A/Phase

These are the two items from Goal Zero I was going to use to power everything.

Guide 10 Plus Battery Back

Nomad 7 Solar Panel

Well any suggestions or comments you have would be greatly appreciated


The stepper module needs 8 to 48 volts to run; so it needs more than 3v8 to operate. Since these are chopper mode drivers the should use less current but I’ve never actually thought to test just how much. I may do that and post it.

But you need 8 of those batteries not 4.

Hey kurtnelle, thanks for the reply. Sorry its taken me so long to respond. I am very new to this technology so how do you know the stepper module needs 8 to 48 volts to operate? When I look at the specifications page for the stepper module it says 3.3V consumption and it also says 5V consumption. Could you explain why it says 3.3V and 5V and where does it say it needs 8 to 48 volts (I guess that is min/max)? I am just trying to learn.


The 3v3 and 5v consumption figures are to tell you what power the module draws from the mainboard. In general, these are “signalling” consumptions only, to power the communications from the on-board chip to the mainboard.

To understand the stepper motor power requirements, you need to then look at the data sheet of the actual chip to see more about it’s capability. In general, steppers need a separate power source, as they are going to draw a large amount of current potentially for long periods. Plus, the small wires from the mainboard to the module could never support that amount of current, which is why the module has it’s own power input terminals.

So in general, my thoughts are you will never power a stepper effectively from a rechargeable battery pack, or if you do you will find you need to replace batteries often since you’ll be drawing the guts out of them. You also need to calculate how much turning force you need in your application and make sure you get appropriate steppers, I can’t tell if your application matches the ones you shared. Then the other thing is that solar recharging of batteries needs to be well thought out too to ensure you have enough power generation for how much you use - which means you need to know how much you are going to use the motors (so for anyone else to give you their thoughts, you might have to describe what you’re trying to do in more detail)

Hey Brett, thanks for the info. OK my end goal is to build something that would rotate many standard size solar panels for home use. Eventually (and this is over a year away) I would like to have 10 or more solar panels at home and I would like to build something that would track the sun during the day and change the angle of the panels to maximize their output. For now I would just like to build a very small prototype using the tiny 17" x 9" Nomad 7 solar panel from GoalZero. If I can’t do it small scale I will never be able to do it on a large scale. I know I can buy devices that do this already but where is the fun in that! :slight_smile: I would like to use this as a way to learn how to use the .NET and GHI Gadegeteer technology.

I was going to build a small wooden or plastic platform to hold the solar panel. It was going to be 18" x 10" at a 45 degree angle. This should only be 1-2 lbs and the solar panel and its 4 AA battery pack is about 1 lb plus all the electronics like the Cerberus main-board, light sensors, etc. I can’t see the whole thing weighing more then 5 lbs total but its just a guess.

Every few minutes (with a Timer) I was going to use the percentage values from the light sensors and try to figure out if it should move left or right and try to track the sun as it moves across the sky. I was only going to try left and right (horizontally) at first and keep the vertical angle fixed at 45 degrees. Eventually I might consider a second motor for the vertical angle. Since the motor does not have to be in continuous motion I would think it would use less electricity. I was only going to try to move it every 10-15 minutes.

Once the light levels drop too low it would be nice if the device just shut down and waited till the sun came up the next morning. I know I can run the electronics directly off the solar panel I have but I now realize I will need some batteries to power the motor. So I guess I will need to figure out how to use the solar to power the electronics and have any surplus electricity go into the rechargeable batteries. This is all to be worked out later. Right now I would be happy to have the thing rotate.

I attached a simple PNG, created using the Google SketchUp, trying to to show what I am thinking for the small prototype. Is this enough detail? I would be happy to add any more info. Let me know what you think.


Helpful to know this is a non-full-scale emulation of a solar tracker. In that case, you’ll not have enough power to sustain the setup but at least you can look at how much extra power you can harvest if you go down this path.

I actually think your own uC solution may not be a great approach here, I’d be looking at alternatives that are “commercial” in nature. A good thread on that from a solar forum is:

Yeah I have done some reading on if it’s worth having a tracking system to increase the power the system can collect vs. just having a fixed system. I also don’t expect to build a perfect system and going full scale it a whole other issue. I just want to learn the about the GHI and Microsoft technology and I am using my small scale idea to do that.

Can you recommend a stepper motor that could move a 3-5 lb object horizontally only a few steps every 15 minutes? For now lets just assume that the motor has all the power it needs. Or can you recommend some reading that would explain how to select the correct motor for a given application?

BTW I do admit that using light sensors might not be the best solution. I found an internet site that will give the position of the sun for a given LON, LAT, DATE, and TIME. I might be able to access it real time from the device and blindly move to that position regardless of the sun intensity, event if it’s raining. That would give me a chance to use the WiFi module and/or the SD card module. Another chance to learn.

Anyway any advice you can offer about selecting a stepper motor would be greatly appreciated. Thanks.


I think you need to calculate what the forces involved are to spec the right kind of motor (and no, I personally have no idea how to do so). But depending on your level of DIY thoughts, you could always try one you point out earlier and if not powerful enough, repurpose it over to another project :slight_smile:

Sounds like a good approach. There is always another project. :slight_smile: Thanks.

I don’t know how much detail is behind this project, but looks like someone has done this on netmf with a linear actuator (which I suspect is something like a stepper with a lead screw attached? )

BTW, I would really suggest that you rather look at a geared motor or such.

At stepper motor uses power all the time, even if it isn’t turning. So that will waste a lot of power for you.

What I would suggest is two end switches so you know when you are at the start and end of travel, and a geared motor, then you can move the panel forward/backwards to find the highest amount of light.

If done correctly, with minimum hunting, then this will give you best power efficiency.

… and with a worm gear ( ) you need no additional brake or electrical power to hold the position against strong wind.

Thanks very much Lutz1 and GMod! So is it possible to use the GHI modules to power and control a geared motor and/or a motor with a worm gear? One of the other suggestions was to use a linear actuator. How would I control that? I have never used anything other they the GHI modules and I have never soldered anyting in my life. :slight_smile: I have already purchased the Stepper L6470 Module. I suspect I can not use that with a geared motor or a linear actuator correct? Maybe the Motor Driver L298 Module would work?



Lutz1 suggestion of a gear motor is a good one. Worm gears naturally act as a brake which is good so you can move to position and turn off the motor. The sun moves very slowly across the sky (in comparison to motor speeds) so the shaft rotating your box will not need to move very fast. You can use a very high ration planetary gear or even spur gear, at high ratios they will also act like brakes and you can get stepper motors with these attached.

The size of your stepper (and current draw) required to rotate your box will also be decreased if you incorporate a gearbox, so potential energy savings.

Another thing to look at is a bearing for supporting your box. Motors and gearboxes are not design to support a load though you can get away with it sometimes. A box that isn’t stiff could shift from winds and create moment loads on the motor or gearbox shaft, this causes additional wear on the bearings inside the motor and eventually failure. Attaching the box to a rotary bearing will support the box and it will decrease the coefficient of friction. Less friction means less power required to rotate the load. You want want to check these out: .

You could use the L298 module with a brush motor, you can only control the speed of a brush motor and time it is on so positioning is difficult but not impossible. Using the pulse input module from GHI you could use a geared brush motor and a rotary encoder. The rotary encoder will tell you position of the box. You will have to develop code for control the motor based on current position and desired position. High end systems use PID for this, not sure if anyone has implemented PID into a .NETMFproject on here. You could probably get away with a guess and check function. I would suggest sticking with a stepper though.

As far a a linear actuator, it depends on the motor supplied with the actuator. Usually inexpensive linear actuators are using brush DC motors so L298 is the way to go.