SparkFun Servo Trigger - Continuous Rotation

The SparkFun Continuous Rotation (CR) Servo Trigger is a small robotics board that simplifies the control of hobby RC servo motors. When an external switch or logic signal changes state, the CR Servo Trigger is able to tell an attached servo motor to move from position A to position B. To use the CR Servo Trigger, you simply connect a hobby servo and a switch, then use the on-board potentiometers to adjust the start/stop positions and the transition time. You can use a hobby servo in your projects without having to do any programming!

When we introduced the original Servo Trigger, we mentioned that it could be reprogrammed to be more useful with continuous rotation servo motors. But reprogramming the firmware is somewhat tedious, and users asked for a Servo Trigger preprogrammed with the continuous rotation logic. With this little board you will be provided an easy way to deploy continuous rotation servos into your projects!

The heart of the CR Servo Trigger is an Atmel ATtiny84 microcontroller, running a small program that implements the servo control features designed for continuous rotation servos. On board each of these CR Servo Triggers you will find three potentiometers: “A” sets the position the servo sits in while the switch is open, “B” sets the position the servo moves to when the switch is closed, and “T” sets the time it takes to get from A to B and back.

Compared with a servo motor, the CR Servo Trigger board draws very little current, roughly 5mA at 5V. Be sure to note that if you’re using the CR Servo Trigger to control your motor, the absolute maximum supply voltage that should be applied is 5.5 VDC. Additionally, the SparkFun CR Servo Trigger is designed to make it easy to daisy chain boards – you can simply connect the VCC and GND pads on adjacent boards to each other.

Note: This idea originally came from our friend in the Oakland area, CTP. If you see him, please give him a high-five for us.

SparkFun CR Servo Trigger Hookup Guide

  • Recommended Voltage: 5VDC
  • Max Voltage: 5.5VDC
  • Current Draw: 5mA
  • Control Continuous Rotation Servos
  • Three Control Settings
    • A - sets the position the servo sits in while the switch is open
    • B - sets the position the servo moves to when the switch is closed
    • C - sets the time it takes to get from A to B and back
  • Easy Control with Potentiometers
  • Configurable Input Polarity
  • Configurable Response Mode
  • Compatible with Analog Servos
  • ISP Header Pins Available for Reprogram

SparkFun Servo Trigger - Continuous Rotation Product Help and Resources

Continuous Rotation Servo Trigger Hookup Guide

May 26, 2016

How to use the SparkFun Continuous Rotation Servo Trigger with continuous rotation servos, without any programming!

Servo Trigger Programming Guide

May 26, 2016

Looking under the hood of the Servo Trigger -- using the development environment and some finer details of the firmware.

Core Skill: Soldering

This skill defines how difficult the soldering is on a particular product. It might be a couple simple solder joints, or require special reflow tools.

1 Soldering

Skill Level: Noob - Some basic soldering is required, but it is limited to a just a few pins, basic through-hole soldering, and couple (if any) polarized components. A basic soldering iron is all you should need.
See all skill levels


Core Skill: Robotics

This skill concerns mechanical and robotics knowledge. You may need to know how mechanical parts interact, how motors work, or how to use motor drivers and controllers.

2 Robotics

Skill Level: Rookie - You will be required to know some basics about motors, basic motor drivers and how simple robotic motion can be accomplished.
See all skill levels


Core Skill: DIY

Whether it's for assembling a kit, hacking an enclosure, or creating your own parts; the DIY skill is all about knowing how to use tools and the techniques associated with them.

1 DIY

Skill Level: Noob - Basic assembly is required. You may need to provide your own basic tools like a screwdriver, hammer or scissors. Power tools or custom parts are not required. Instructions will be included and easy to follow. Sewing may be required, but only with included patterns.
See all skill levels


Core Skill: Programming

If a board needs code or communicates somehow, you're going to need to know how to program or interface with it. The programming skill is all about communication and code.

2 Programming

Skill Level: Rookie - You will need a better fundamental understand of what code is, and how it works. You will be using beginner-level software and development tools like Arduino. You will be dealing directly with code, but numerous examples and libraries are available. Sensors or shields will communicate with serial or TTL.
See all skill levels


Core Skill: Electrical Prototyping

If it requires power, you need to know how much, what all the pins do, and how to hook it up. You may need to reference datasheets, schematics, and know the ins and outs of electronics.

2 Electrical Prototyping

Skill Level: Rookie - You may be required to know a bit more about the component, such as orientation, or how to hook it up, in addition to power requirements. You will need to understand polarized components.
See all skill levels


Customer Comments

  • Experimenting with this product, I discovered that it only moves about half of the range on the servos I have. Looking at the github code and testing with writeMicroseconds(), I discovered that the firmware was compiled with the SAFERANGE flag, setting the pulsewidth range of 1000 to 2000 microseconds. This seems a bit restrictive considering that the arduino defaults on its servo library are 544-2400. So be aware that if you want more range you’ll need to recompile and reload the firmware.

    see: https://github.com/sparkfun/Servo_Trigger/Firmware/ServoTrigger/ServoTrigger.c

  • I need to be able to update position commands to a continuous rotation RC servo via software. It’s surprising to me that a commercial solution (with position feedback) doesn’t seem to exist. I have experience with steppers and DC motors as well, but I prefer a servo due to compact packaging and absolute position feedback built-in.

    It seems like this board is great if your desired position (or two) rarely change, as it’s updated by potentiometer. I suppose I could replace the board pots with a voltage command, but I’d prefer not to as this will eventually be part of a STEM package for kids and the rest of the project is complex enough.

    Anybody got any ideas or solutions? Maybe a simple absolute encoder add-on for a servo (which I haven’t found)? I only need ~1° accuracy, and max rotation speed is ~1RPM.

    Thanks, -Bryan

    • An Arduino or the Red card clone by Sparkfun, or a Pololu controler, can be used for your purpose. I have worked with continuous rotation servos myself. It was for a project of a CNC stand. Unfortunately, I did not find any servo having a 1 degree acuracy, even digital ones which are more expensive and precise than analog ones. Instead, I plan to replace them with stepper motors. It is said they have that kind of accuracy, and I see that everybody uses them for CNC machines.

      Edit : if you use servos with feedback, then they must be the servos that are not the standard ones for hobbyists (5 or 6 volts, weight 10 to 50 grams, and are linked with 3 leads only), but the ones working with 7.4 V or 11V or more and 5 leads.

Customer Reviews

No reviews yet.