diff --git a/README.md b/README.md index 6e5fed2..8867af4 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,91 @@ # step32 ESP32 development board with stepper motor driver + +# Pin assignment + +## A4988 Stepper Driver + +| GPIO | Signal | +| ---- | ------ | +| 12 | ~RESET | +| 13 | ~ENABLE | +| 14 | ~SLEEP | +| 16 | MS1 | +| 17 | MS2 | +| 18 | MS3 | +| 19 | DIR | +| 23 | STEP | +| 25 | DAC | + +### Microstepping + +| Resolution | MS1 | MS2 | MS3 | +| ---------- | --- | --- | --- | +| Full Step | 0 | 0 | 0 | +| Half Step | 1 | 0 | 0 | +| Quarter Step | 0 | 1 | 0 | +| Eigth Step | 1 | 1 | 0 | +| Sixteenth Step | 1 | 1 | 1 | + +### Current limiting + +The DAC pin is used to set the current limit. + +The current limit is 15/23 of the DAC voltage. + +| Current limit | DAC voltage | +| ------------- | ----------- | +| 1A | 1.533V | +| 1.5A | 2.300V | +| 2A | 3.066V | + +The DAC output is not optional. It must be set correctly for the stepper driver to function. + + +## I2C Expansion + +| GPIO | Signal | +| ---- | ------ | +| 21 | SDA | +| 22 | SCL | + +The I2C bus is terminated on this board. If not desired, remove R5 and R6, next to the I2C connectors. + +## End stops + +| GPIO | Signal | +| ---- | ------ | +| 34 | END1 | +| 35 | END2 | + +Note that these pins can be configured either as analogue or as digital inputs, depending on the type of end stops required. + +## LED + +| GPIO | Signal | +| ---- | ------ | +| 2 | LED | + +# Motor connection + +There are two connectors for the stepper motor. Only one should be used at a time. They correspond to the two most common ways of connecting bipolar stepper motor coils to a 4-pin header. The coil assignment is marked on the silkscreen by each connector for convenience. + +# Heat sink + +The A4988 can operate at low currents without a heat sink. At higher currents (greater than 1 amp) a heat sink may be required. + +# Dimensions and mounting + +The PCB is 55mm wide and 64mm high, excluding the antenna. The antenna sticks out by around 6mm. + +The mounting holes are 47mm apart horizontally and 53mm apart vertically. They are inset 4mm from the sides and from the bottom edge. They are sized to accept M3 screws. + +# Power supply + +This board can be powered either from an external 12 volt supply (2.5mm barrel jack), in which case a buck converter generates 3.3 volts for the ESP32, or directly from USB, in which case a linear regulator generates the 3.3 volt supply. + +The motor can not be powered from USB. Only the low voltage circuit will be energised when powered by USB. + +While the motor power is labelled as 12 volts, it should operate anywhere between 7 and 20 volts. Do not exceed 20 volts. +