User Manual

1. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.a. Micro Maestro Pinout and Components . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.b. Mini Maestro Pinout and Components . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.c. Indicator LEDs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.d. Supported Operating Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2. Contacting Pololu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3. Getting Started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.a. Installing Windows Drivers and Software . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.b. Installing Linux Drivers and Software . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.c. Using the Maestro without USB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
4. Using the Maestro Control Center . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
4.a. Status and Real-time Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
4.b. Channel Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
4.c. Sequencer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
4.d. Entering a Script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
4.e. Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.f. Upgrading Firmware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
4.f.1. Hard Bootloader Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
5. Serial Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
5.a. Serial Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
5.b. TTL Serial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
5.c. Command Protocols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
5.d. Cyclic Redundancy Check (CRC) Error Detection . . . . . . . . . . . . . . . . . . . . 51
5.e. Serial Servo Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
5.f. Serial Script Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
5.g. Daisy Chaining . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
5.h. Serial Example Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
5.h.1. Cross-platform C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
5.h.2. Windows C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
5.h.3. PIC18F4550 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
5.h.4. Bash script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
5.h.5. Arduino library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
6. The Maestro Scripting Language . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
6.a. Maestro Script Language Basics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
6.b. Command Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
6.c. Example Scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
6.d. Script Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
7. Wiring Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
Pololu Maestro Servo Controller User’s Guide © 2001–2017 Pololu Corporation
Page 2 of 99