Data Sheet

command offset length data 1 data 2 data 3 data 4
0xA1 0x0A 0x04
0xD2 0x02 0x96 0x49
Read value: 0x4996 02D2 = 1,234,567,890
Serial protocols
Like many other Pololu products, the Tic supports two different serial command protocols.
The compact protocol is the simpler of the two protocols; it is the protocol you should use if your
Tic is the only device connected to your serial line. The compact protocol command packet is simply
a command byte followed by any data bytes that the command requires. All of the examples above
use the compact protocol; here is the example for the “set step mode [https://www.pololu.com/docs/0J71/
8#cmd-set-step-mode]” command again (selecting 1/8 step mode):
command data
0x94 0x03
Notice that a command byte always has its most significant bit set (it is in the range 0x80 to 0xFF),
while a data byte sent to the Tic always has its most significant bit cleared (it is in the range 0x00 to
0x7F); this is why a 32-bit write command requires five bytes to represent a 32-bit number. Responses
from the Tic can contain data bytes of any value from 0x00 to 0xFF.
The Pololu protocol can be used in situations where you have multiple devices connected to your
serial line. This protocol is compatible with the serial protocol used by our other serial motor and
servo controllers. As such, you can daisy-chain a Tic on a single serial line along with our other
serial controllers (including additional Tics) and, using this protocol, send commands specifically to the
desired Tic without confusing the other devices on the line.
To use the Pololu protocol, you must transmit 0xAA (170 in decimal) as the first (command) byte,
followed by a device number data byte. The default device number for the Tic is 0x0E (14 in decimal),
but this is a setting you can change. (The device number is also used as the Tic’s I²C slave address.)
Any controller on the line whose device number matches the specified device number accepts the
command that follows; all other Pololu devices ignore the command. The remaining bytes in the
command packet are the same as the compact protocol command packet you would send, with one
key difference: the compact protocol command byte is now a data byte for the command 0xAA and
hence must have its most significant bit cleared. Therefore, the same “set step mode” command
from above, but using the Pololu protocol, looks like this:
Tic Stepper Motor Controller User’s Guide © 2001–2018 Pololu Corporation
9. Serial command encoding Page 137 of 150