Stepper control v2
newer version of this board is available here:
Arduino Stepper Control Board - A4988 Driver
For version 1.2 and below see this documentation
The tiny stepper controller is a controller board for stepper motor. It can be controlled manually (potentiometer and switches) and programmed with Arduiono IDE.
Stepper Motor driver board: A4988
Input Power: 30Volts Maximum.
Power Socket: 2.1mm Jack. Center positive.
Motor connector: 4 way molex.
Manual Control ready with:
- Potentiometer for speed.
- Push button for single step increment.
- Slider switch for direction selection.
The direction of motor spin can be controlled manually using the slide switch. For this the top jumper must be set accordingly. This connects the slide switch directly to the direction input of the A4988.
The second setup of the jumper will allow controlling the direction from the Attiny85 mcu. The slide switch has no effect in this configuration. Use digital input 1 in the sketch to control this.
#define Direction 1
Two push buttons are available. These can be used for any desired manual function such as speed up, move left, start, stop etc... To make sure the push buttons are connected to the mcu the two lower jumper must be set accordingly. This will connect digital input 0 and 2 from the mcu to the push button. The other jumper setup is for i2c control. Unfortunately it is not possible to have both push buttons and i2c options together. This is due to the Attiny85 limitations on number of pins. They are configured with digital input 0 and 2.
#define Button1 2 #define Button2 0
Step resolution can be configured using jumpers.
By default the jumpers are off and this set the lowest step resolution.
Digital I/O with FTDI layout compatibility is available for external use. This can be anything like I2C / Serial /external sensors/ external switch).
The default sketch loaded in the Attiny85 is a basic sketch to control the motor manually. The potentiometer will be use as speed control.
A demonstration can be seen on this video
The two i2c pins of the Attiny85 are available on the board to be controlled from an i2c master.
This is a sketch for the Attiny85 for speed and direction control. Commands are as follow
"a" for direction 1 - e.g. Master will issue Wire.write("a")
"b" for direction 2 - e.g. Master will issue Wire.write("b")
"delay:" for speed control - e.g. Master will issue Wire.write("1500:")
":" for stopping the motor - e.g. Master will issue Wire.write(":")
Delay must be a number followed by a ":" which is the stop character. This number is the delay in microseconds between each steps.