Maestro User Manual
1. Overview  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  3
1.a. Micro Maestro Pinout and Components  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  7
1.b. Mini Maestro Pinout and Components  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  9
1.c. Indicator LEDs  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.d. Supported Operating Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2. Contacting Pololu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
3. Getting Started  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.a. Installing Windows Drivers and Software  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.b. Installing Linux Drivers and Software  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.c. Using the Maestro without USB  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4. Using the Maestro Control Center  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
4.a. Status and Real-time Control  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
4.b. Errors  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
4.c. Sequencer  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
4.d. Entering a Script  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
4.e. Channel Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
4.f. Upgrading Firmware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
4.f.1. Hard Bootloader Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
5. Serial Interface  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
5.a. Serial Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
5.b. TTL Serial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
5.c. Command Protocols  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
5.d. Cyclic Redundancy Check (CRC) Error Detection  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
5.e. Serial Servo Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
5.f. Serial Script Commands  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
5.g. Daisy Chaining  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
5.h. Serial Example Code  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
5.h.1. Cross-platform C  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
5.h.2. Windows C  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
5.h.3. PIC18F4550  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
5.h.4. Bash script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
6. The Maestro Scripting Language . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
6.a. Maestro Script Language Basics  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
6.b. Command Reference  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
6.c. Example Scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
6.d. Script Specifications  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
7. Wiring Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
7.a. Powering the Maestro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
7.b. Attaching Servos and Peripherals  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
7.c. Connecting to a Microcontroller  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
8. Writing PC Software to Control the Maestro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
9. Maestro Settings Limitations  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
10. Related Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Pololu Maestro Servo Controller User's Guide © 2001–2014 Pololu Corporation
Page 2 of 73










