TREX + Arduino Problem

Can communicate but don’t get any motor LED response

Blue solid, red solid and green flashing but no motor LED activity

all jumpers removed except +=Vcc, and mix

Problem is likely with the code but the code is real simple and should work…

[code]
// Included for serial communication
#include <SoftwareSerial.h>

// Define pins you’re using for serial communication
// Do not use pins 0 or 1 as they are reserved for
// standard I/O and programming
#define TXPIN 4
#define RXPIN 5

// Create an instance of the software serial
// communication object. This represents the
// interface with the TReX Jr device
SoftwareSerial pololu(RXPIN, TXPIN);

// Main application entry point
void setup()
{
// Define the appropriate input/output pins
pinMode(RXPIN, INPUT);
pinMode(TXPIN, OUTPUT);

// Begin communicating with the pololu interface
Serial.begin(9600);
pololu.begin(19200);
delay(5);
}

// Main application loop
void loop()
{
// Loop through 127 to 0, forward
for(int i = 127; i >= 0; i–)
{
// Say that we are setting our speed
Serial.print("Setting speed 0 to: ");
Serial.println(i, DEC);

// Set speed to motor 0 and forward
SetSpeed(0, true, i);
delay(100);

// Say that we are setting our speed
Serial.print("Setting speed 1 to: ");
Serial.println(i, DEC);

// Set speed to motor 0 and forward
SetSpeed(1, true, i);
delay(10);

}

// Loop through 0 to 127, backward
for(int i = 0; i < 128; i++)
{
// Say that we are setting our speed
Serial.print("Setting speed 0 to: ");
Serial.println(i, DEC);

// Set speed to motor 0 and forward
SetSpeed(0, true, i);
delay(100);

// Say that we are setting our speed
Serial.print("Setting speed 1 to: ");
Serial.println(i, DEC);

// Set speed to motor 0 and forward
SetSpeed(1, true, i);
delay(100);

}
}

// Set the motor index, direction, and speed
// Motor index should either be a 0 or 1
// Direction should be either true for forward or false for backwards
// Speed should range between 0 and 127 (inclusivly)
void SetSpeed(int MotorIndex, boolean Forward, int Speed)
{
// Validate motor index
if(MotorIndex < 0 || MotorIndex > 2)
return;

// Validate speed
if(Speed < 0)
Speed = 0;
else if(Speed > 127)
Speed = 127;

// Send the “set” command based on the motor
// Note that we do not accelerate to the
// speed, we just instantly set it
unsigned char SendByte = 0;
if(MotorIndex == 0)
SendByte = 0xC2;
else if(MotorIndex == 1)
SendByte = 0xCA;
else if(MotorIndex == 2)
SendByte = 0xF0;

// If we go backwards, the commands are the same
// but minus one
if(!Forward)
SendByte–;

// Send the set speed command byte
//pololu.write(SendByte);
pololu.write(SendByte);

// Send the speed data byte
pololu.write(Speed);
}[/code]

i fixed it. it wasn’t getting 6v or more like it needed.

Hi, John.

I am glad your setup is working now; thanks for letting us know how you fixed it!

- Ryan