GAUPS 1.1 Instructions
GAUPS is derived from Bart Dring's open-source Buildlog.net Arduino-compatible Stepper Motor Driver Shield rev 3. Thank you, Bart!
GAUPS is open-source hardware, released under the Creative Commons Attribution-ShareAlike 4.0 License. KiCAD files will be available here soon.
It's easiest to assemble the board in the order of component height, leaving the tallest last. For the parts with long leads, trim them as soon as you've soldered them (do not trim the Arduino headers, obviously). The instructions assume the board is held with the driver labels ("X AXIS" etc) the right way up, as shown.
|Warning:||Please pay attention to driver orientation! A driver inserted backwards will be destroyed instantly when the power is turned on.|
Driver pin VMOT (motor supply voltage) is marked with an arrow on the silkscreen (please note that this is different from the beta version). The motor outputs (1A, 1B, 2A, 2B) face the respective screw terminals. The electrolytic capacitor is near the VMOT pin, and the yellow ceramic capacitor is near the VDD pin. The digital inputs are toward the middle of the board.
|Warning:||Two drivers (X and Y) are oriented one way, the other two (Z and A) the other way.|
|Warning:||Adjust the motor current before applying power for the first time. The trimpots on the drivers do not come pre-set to any particular position. Please turn them down (almost all the way anti-clockwise) before applying power. Once you've applied power, increase the current carefully. On some Pololu drivers, the range of the trimpot exceeds the allowable value for the driver chip, and turning it too far clockwise can cause the chip to explode.|
Dual-Y or 4-Axis Operation
For Dual-Y operation, the A driver takes the same control signals (STEP and DIR) as the Y driver, acting as a second Y driver instead of a fourth independent axis. This is the default configuration, and you don't need to do anything to use it.
For 4-axis operation (or spindle relay in the A axis slot, instead of a driver), STEP and DIR for the A driver come from Arduino pins D12 and D13. In both columns, cut the trace joining the top and middle pad, and bridge the middle and bottom pad with solder.
It is unlikely that you will need to change from the default configuration. As of yet, GRBL supports only three axes, and spindle control relays in the form of Pololu-compatible modules are very rare.
By default, the board uses the IOREF pin available on all R3 Arduino boards. The Arduino connects IOREF to either 5 V or 3.3 V, depending on which supply voltage it uses. For example, an Arduino Uno connects IOREF to 5 V, while an Arduino Due connects it to 3.3 V.
For older Arduino boards that do not have an IOREF pin, you will have to bridge one of the 3.3 V or 5 V solder bridges on the back of the board, as applicable. To avoid disasters if the GAUPS is later plugged into an R3 Arduino, also cut the trace across the IOREF solder bridge.
Since the R3 design has been the standard Arduino for a number of years, it is unlikely that you will need to make any changes.
DIP switches are OFF to the left (the side of the switch with the numbers), ON to the right (the side labelled "ON").
Microstepping is controlled independently for each of the four drivers. Each driver has three switches associated with it. The silkscreen shows which switches apply to which driver.
|SW1 switch||A4988 and DRV8825||A4988||DRV8825||DRV8834|
|X axis||Y axis||Z axis||A axis||Pin name||1 ×||2 ×||4 ×||8 ×||16 ×||16 ×||32 ×||Pin name||2 ×||4 ×||16 ×||32 ×|
For instance, to set a DRV8825 driver on the Z axis to 8 × microstepping, set switches 7 on, 8 on, 9 off. In the Dual Y configuration, it's simplest to use the same type of driver and motor for both the Y axes (Y and A), and use the same microstepping configuration for both (switches 1–3 same as switches 4–6).
Note that it is not possible to select all microstepping combinations for the DRV8834 low-voltage stepper motor driver (1 × and 8 × would require pin M0 to be held low).
To make a GAUPS behave exactly like a gShield (or an older grblShield with the Z-axis hack), so that one can use the same settings for GRBL, set X and Y to 8 × microstepping, and Z to 2 ×:
This depends on the software you run on the Arduino.
The motor screw terminals are connected to the driver outputs nearest to them, in the same order.
The motor power supply input is P5, the two bottom screw terminals in the block of ten on the left side of the board. Positive is next to the X axis motor terminals, negative at the bottom edge of the board. Please note that this is different from the beta version. The polarity is marked on the silkscreen on the back of the board (there was no room on the front).
|Warning:||Do not make or break any connections while the board or the Arduino are powered. There is a high risk of destroying the drivers and/or the Arduino.|
This image (click on it to enlarge) shows an example configuration:
- Four drivers and four motors
- Dual-Y (two Y motors, each with its own driver)
- Pololu DRV8825 purple high-current drivers (note that other driver modules may have the trimpot in a different location, so do not use it to decide the driver module orientation. Always check the pin labels).
Note that the microstepping is not configured: the DIP switch is in its factory default configuration, corresponding to full stepping on all axes (not recommended).
Also, when using GRBL 0.8 or 0.9 with the "invert mask" set to 0, any Pololu drivers, and the motors we carry in our store, wired as shown, for a move in the positive direction of each axis, the motors turn as follows (as viewed looking into the shaft):
|Axis||Motor||Axis Positive Direction||Motor Direction|
|Y||Left (Y driver)||Toward the back||Counter-clockwise|
|Right (A driver)||Clockwise|
This is the standard direction of travel for a dual-motor dual-Y drive eShapeoko with any of the standard eShapeoko belt configurations (teeth down, belt going under the idler wheels and over the belt pulley). This is also valid for a Shapeoko with any of the belt mods that have the belt facing teeth down. For the original Shapeoko configuration (belt teeth up, going over the idler wheels and under the belt pulley) and any other teeth up configuration, reverse the direction of X and Y motors (by reversing the connections, black–green–blue–red instead of red–blue–green–black).
Note that not all motors from all manufacturers turn in the same direction when wired the same, although this seems to be the most common case. If your motor has different color wires, always determine the correct pairing before wiring the motors, to avoid damage to the drivers. Any configuration will work, as long as the wires in each pair are next to each other (pins 1 and 2 one pair, pins 3 and 4 another pair).
Also note that driver modules other than Pololu A4988 and DRV8825 may turn the motors in the opposite direction, too, and the direction can also be changed in firmware.
The choice of voltage depends on the driver modules. The kit of parts, as supplied, has capacitors rated at 35 V, so that's the maximum voltage. However, an alternative is supplied, with capacitors rated for 50 V. To keep the same form factor, these capacitors are smaller (22 µF instead of 47 µF).
With A4988 drivers, the maximum voltage is 35 V, but EMF induced in the motor during braking can raise the supply voltage, so we do not recommend using more than 30 V. The DRV8825 drivers are rated to 45 V, but, for the same reason, we do not recommend more than 40 V (provided that you are using capacitors rated 50 V or more).
A4988 and DRV8825 both work from 12 V, but the most popular voltage for them is 24 V. 19 V is also popular, because it's the typical voltage of a laptop power supply, and many people have one of those lying around.
The DRV8834 driver operates from 2.5 V to 10.8 V, so it's ideal for low-voltage applications.
|PCB||1||GAUPS 1.1 PCB, dual-side 1.6 mm FR4, 2 oz copper, through-plated, ENIG, RoHS||Amber Spyglass Ltd||—|
|R1||1||Resistor, 10 kΩ 0.125 W, metal film||Multicomp||MF12 10K|
|C1–C4||4||Aluminium electrolytic capacitor, 47 µF 35 V, long life (5000 hours @ 105°C),
radial, 2.5 mm lead spacing, ∅ 8 mm, 5 mm tall
|C5–C8||4||Ceramic capacitor, 100 nF 50 V, X7R dielectric, 0.2" lead spacing||Multicomp||MCRR50104X7RK0050|
|SW1||1||Low-profile 12-way DIP switch, 0.1" pitch, 0.3" wide||Multicomp *||MCEI-12|
|SW2||1||Tactile switch, 6 mm||Panasonic||EVQPVG05K|
|U1–U4||8||8-way single-row female 0.1" pitch header, straight||Multicomp *||2212S-08SG-85|
|J1, J3||2||8-way single-row long pin (15 mm) female 0.1" pitch headers, straight||Samtec *||SSQ-108-04-F-S|
|J2||1||6-way single-row long pin (15 mm) female 0.1" pitch headers, straight||Samtec *||SSQ-106-04-F-S|
|J4||1||10-way single-row long pin (15 mm) female 0.1" pitch headers, straight||Samtec *||SSQ-110-04-F-S|
|P1–P4||4||4-way side-entry PCB screw terminal, 5 mm pitch||Camden Boss||CTB5202/4|
|P5||1||2-way side-entry PCB screw terminal, 5 mm pitch||Camden Boss||CTB5202/2|
For most components, numerous equivalent parts exist from various manufacturers. The given manufacturers and part numbers are just examples of compatible parts. However, except where marked with an asterisk, the supplied parts in our kit are exactly those listed here (those with an asterisk are generic equivalents). This is especially important for the long-life electrolytic capacitors of the correct form factor, and for the good quality screw terminals. Also important are the long (15 mm pins) Arduino headers; the typical Arduino headers with 10–12 mm pins are not tall enough for the solder joints on the back of the shield to clear the Arduino USB connector, and insulation is required.
We reserve the right to substitute parts without notice.