public class team4692robot extends SimpleRobot
{
RobotDrive drive = new RobotDrive(1, 2);
Joystick left = new Joystick(1);
Joystick right = new Joystick(2);
public void autonomous()
{
int autotimer=0;
while(true && isAutonomous() && isEnabled())
{
if(autotimer<100)
{
drive.tankDrive(.4, -.4);
}
else
{
drive.tankDrive(0, 0);
}
autotimer++;
Timer.delay(.005);
}
}
/**
* This function is called once each time the robot enters operator control.
*/
public void operatorControl()
{
while(true && isOperatorControl() && isEnabled())
{
double leftpow=left.getY(); double rightpow=right.getY();
double powermod=.25;
if(left.getTrigger())
{
powermod+=.25;
}
if(right.getTrigger())
{
powermod+=.5;
}
leftpow*=powermod; rightpow*=powermod;
drive.tankDrive(leftpow, rightpow);
Timer.delay(.005);
}
}
public void test()
{
}
Here is code: (deleted commented stuff.) (I’m fairly certain this is the same code that I posted, but I uncommented and recommented stuff so it may have changed. I was running this code. There is more complicated stuff commented out, but not to bad, just commented stuff out that wasn’t actually connected to the digital sidecar/whatnot yet.)
package edu.wpi.first.wpilibj.templates;
import edu.wpi.first.wpilibj.SimpleRobot;
import edu.wpi.first.wpilibj.RobotDrive;
import edu.wpi.first.wpilibj.Timer;
import edu.wpi.first.wpilibj.Joystick;
public class team4692robot extends SimpleRobot
{
RobotDrive drive = new RobotDrive(1, 2);
Joystick left = new Joystick(1);
Joystick right = new Joystick(2);
public void autonomous()
{
int autotimer=0;
while(true && isAutonomous() && isEnabled())
{
if(autotimer<100)
{
drive.tankDrive(.4, -.4);
}
else
{
drive.tankDrive(0, 0);
}
autotimer++;
Timer.delay(.005);
}
}
public void operatorControl()
{
while(true && isOperatorControl() && isEnabled())
{
double leftpow=left.getY(); double rightpow=right.getY();
double powermod=.25;
if(left.getTrigger())
{
powermod+=.25;
}
if(right.getTrigger())
{
powermod+=.5;
}
leftpow*=powermod; rightpow*=powermod;
drive.tankDrive(leftpow, rightpow);
Timer.delay(.005);
}
}
public void test()
{
}
}
I don’t see anything wrong with the code that would cause that message to be printed. RobotDrive requires the motors to be update every 0.1 seconds (expirationTime) before the robot safety code will stop them.
Make sure that the correct project is loaded in the robot.
How many times are you seeing the message appear in the Diagnostics window? If it is constant/appearing many times it’s something to worry about. If you see it happen only once or twice when the robot is transitioning between states I wouldn’t worry about it.
public void robotInit()
{
drive.setSafetyEnabled(false);
Watchdog.getInstance().kill();
}
Changed nothing, except the timeout messege didn’t display
EDIT: We appear to be having ping problems. Robot Radio and Crio are fine. other stuff is bad. (forgot what exactly was bad, but their were two things.)
EDIT: Found this error:
Warning <Code> 44002 occurred at Ping Results: link-bad, DS radio(.4)-bad, robot radio(.1)-bad, cRIO(.2)-bad, FMS-bad Driver Station
We are attempting to switch out digital sidecars to see if that is the problem.