
9. Command reference
This section describes each of the commands supported by the Motoron Motor Controllers and how
they are encoded as bytes on the I²C interface.
Each command begins with a byte called the command byte that has its most-significant bit set to 1.
The command byte marks the start of the command and also indicates which command to execute.
Some commands require additional bytes after the command byte, which are called data bytes and
have their most-significant bits equal to 0. Unless you have disabled CRC for commands, the final
byte of each command must be a CRC byte, which is calculated from the bytes came before it, as
described in
.
In the tables below that are labeled “Command encoding” and “Response encoding”, each cell of a
table represents a single byte. CRC bytes are not shown in these tables, but each command requires
a CRC byte at the end by default, and each response contains a CRC byte at the end by default.
Numbers prefixed with “0x” are written in hexadecimal notation (base 16) and numbers prefixed with
“0b” are written in binary notation. Numbers with these prefixes are written with their most significant
digits first, just like regular decimal numbers.
The term “bit 0” refers to the least significant bit of a variable (the bit that contributes a value of 1 to
the variable when it is set). Accordingly, the other bits of a variable are numbered in order from least
significant to most significant.
For a reference implementation of the Motoron’s command protocol, see the
[https://github.com/pololu/motoron-arduino]
or the
[https://github.com/pololu/motoron-
.
List of commands
•
•
•
•
•
•
•
•
•
•
Pololu Motoron Motor Controller User’s Guide
© 2001–2022 Pololu Corporation
9. Command reference
Page 51 of 67