Arduino Jaguar

This page has details on running a USFIRST FRC jaguar from an Arduino
The Adaptor Board is available at:
First step involved speed control via the serial link.

#include <avr/interrupt.h>
const int jagsigpin = 9; //pwm connection on pin 9
const int jagpwrpin = 7;//using pin 7 as the pwm power reference
const int jaggndpin = 8;//using pin 8 as the pwm ground reference
const int ledpin = 13;//using the standard LED as a status indicator
const int buffsize = 3;//determining the digits buffer size

char mybuffer[buffsize]; //declare an array to take input from the serial
int value = 47;// decimal 47 corresponds with the pwm midpoint
int minvalue = 20;// decimal 20 corresponds with the pwm full reverse
int maxvalue = 74; //decimal 74 corresponds with the pwm full forward

boolean ledstatus = LOW; //initialize the LED status
void setup()
  //set the PWM frequency to be 122Hz
  TCCR1B = TCCR1B & 0b11111000 | 0x04;

 //setup the pins to be used with the PWM
  pinMode(jagsigpin, OUTPUT);
  pinMode(jagpwrpin, OUTPUT);
  pinMode(jaggndpin, OUTPUT);

//setup the LED status pin
  pinMode(ledpin, OUTPUT);

//define the pwm reference voltages

//start the serial interface... 9600 is arbitrary

//set the pwm to midscale so the jaguar starts in a friendly state

void loop(){

//wait for there to be something on the serial interface

   // give time for the rest of the digits to come across
  // 8bit characters (chars) come across the serial interface, each one is an ascii value
  // group these characters into a char array for processing
    for(int i =0; i<buffsize; i=i+1){
      mybuffer[i] =;

  //use the c function "atoi" to convert the char array to a integer value
    value = atoi(mybuffer);   

  // print the value to the console

  //write the pwm value
  //toggle the indicator
    ledstatus = ~ledstatus;



Changing the Arduino PWM frequency

Page 5, Table 4 has the PWM timing information

Autoramp mode was necessary to not trip the overcurrent protection on my bench power supplies
Check out Q7 for Details on enabling: