

The Tic T500, manufactured by Pololu, is a compact and high-performance stepper motor driver designed to simplify the control of stepper motors in a wide range of applications. It supports adjustable current control, microstepping, and operates over a broad voltage range, making it versatile and reliable for projects requiring precise motor control. The Tic T500 is particularly well-suited for robotics, CNC machines, 3D printers, and other motion control systems.








The following table outlines the key technical details of the Tic T500:
| Parameter | Value |
|---|---|
| Input Voltage Range | 4.5 V to 35 V |
| Maximum Continuous Current | 1.5 A per phase (without additional cooling) |
| Microstepping Modes | Full-step, half-step, 1/4-step, 1/8-step, 1/16-step, 1/32-step |
| Control Interfaces | USB, TTL serial, I²C, analog voltage, RC hobby servo pulses |
| Logic Voltage | 3.3 V or 5 V (compatible with most microcontrollers, including Arduino) |
| Dimensions | 1.2" × 0.6" × 0.2" (30 mm × 16 mm × 5 mm) |
| Operating Temperature Range | -40°C to +85°C |
The Tic T500 features a variety of pins for power, motor control, and communication. The table below describes the key pins:
| Pin Name | Type | Description |
|---|---|---|
| VIN | Power Input | Main power supply input (4.5 V to 35 V). |
| GND | Power Ground | Ground connection for power and logic. |
| A1, A2 | Motor Output | Outputs for one coil of the stepper motor. |
| B1, B2 | Motor Output | Outputs for the other coil of the stepper motor. |
| TX | Serial Output | Transmit pin for TTL serial communication. |
| RX | Serial Input | Receive pin for TTL serial communication. |
| SCL | I²C Clock | Clock line for I²C communication. |
| SDA | I²C Data | Data line for I²C communication. |
| RC | Input | Input for RC hobby servo pulses. |
| AN | Input | Analog voltage input for speed or position control. |
| USB | Communication | USB interface for configuration and control. |
| RESET | Input | Resets the Tic T500 when pulled low. |
The following example demonstrates how to control the Tic T500 using an Arduino UNO via TTL serial communication.
#include <SoftwareSerial.h>
// Define the Arduino pins connected to the Tic T500
#define TIC_RX_PIN 10 // Arduino pin connected to Tic TX
#define TIC_TX_PIN 11 // Arduino pin connected to Tic RX
// Create a SoftwareSerial object for communication with the Tic T500
SoftwareSerial ticSerial(TIC_RX_PIN, TIC_TX_PIN);
void setup() {
// Start serial communication with the Tic T500
ticSerial.begin(9600);
// Set the stepper motor target position
setTargetPosition(2000); // Move to position 2000
}
void loop() {
// Add your main code here (e.g., update position or speed dynamically)
}
// Function to send a "Set Target Position" command to the Tic T500
void setTargetPosition(int32_t targetPosition) {
ticSerial.write(0xE0); // Command byte for "Set Target Position"
ticSerial.write((uint8_t)(targetPosition & 0xFF)); // Lowest byte
ticSerial.write((uint8_t)((targetPosition >> 8) & 0xFF)); // Second byte
ticSerial.write((uint8_t)((targetPosition >> 16) & 0xFF)); // Third byte
ticSerial.write((uint8_t)((targetPosition >> 24) & 0xFF)); // Highest byte
}
Motor Not Moving:
Overheating:
Communication Errors:
Motor Vibrates but Does Not Rotate:
Q: Can I use the Tic T500 with a 12 V power supply?
A: Yes, the Tic T500 supports input voltages from 4.5 V to 35 V, so a 12 V power supply is suitable.
Q: How do I reset the Tic T500?
A: Pull the RESET pin low to reset the Tic T500. Alternatively, you can use the reset option in the Tic Control Center software.
Q: What is the maximum step rate supported by the Tic T500?
A: The Tic T500 supports step rates up to 50,000 steps per second, depending on the microstepping mode and motor.
Q: Can I control multiple Tic T500s with one Arduino?
A: Yes, you can control multiple Tic T500s using unique addresses for I²C or separate serial connections.