Help A Brotha Out. Error 44002 and 44004.

Quest: Req. lvl 53

Hey can some wonderful human being help us with our current predicament. We are experiencing error codes 44002 and 44004. Our code seems to be experiencing problems with the cRIO’s config files, causing a lot of stuff to randomly crash. We tried re-imaging the cRIO, but that FAILEEDDD. Help us out please!!!1

Warning <Code> 44002 occurred at Ping Results: link-bad, DS radio(.4)-bad, robot radio(.1)-bad, cRIO(.2)-bad, FMS-bad Driver Station
<time>1/30/2014 1:45:09 PM<unique#>51
FRC: Driver Station ping status has changed.
Warning <Code> 44004 occurred at Driver Station
<time>1/30/2014 1:45:07 PM<unique#>50
FRC: The Driver Station has lost communication with the robot.
Warning <Code> 44002 occurred at Ping Results: link-GOOD, DS radio(.4)-bad, robot radio(.1)-GOOD, cRIO(.2)-GOOD, FMS-bad Driver Station
<time>1/30/2014 1:45:03 PM<unique#>49
FRC: Driver Station ping status has changed.

Rewards:
450 xp
20 gold
Leather Cap of Invisibility

Our programs (many) errors in NetBeans (java):

ant -f “C:\Users\NRHS Skynet\Desktop\New Folder\RobotTemplate” deploy run
clean:
Deleting directory C:\Users\NRHS Skynet\Desktop\New Folder\RobotTemplate\build
Created dir: C:\Users\NRHS Skynet\Desktop\New Folder\RobotTemplate\build
Created dir: C:\Users\NRHS Skynet\Desktop\New Folder\RobotTemplate\build\classes
[crio-compile] ./src, C:/Users/NRHS Skynet/sunspotfrcsdk\lib\wpilibj.jar;C:/Users/NRHS Skynet/sunspotfrcsdk\lib
etworktables-crio.jar, C:/Users/NRHS Skynet/sunspotfrcsdk\lib\squawk.jar -> ./build/classes
Compiling 1 source file to C:\Users\NRHS Skynet\Desktop\New Folder\RobotTemplate\build\classes
compile:
preverify:
Created dir: C:\Users\NRHS Skynet\Desktop\New Folder\RobotTemplate\build\preverify
Created dir: C:\Users\NRHS Skynet\Desktop\New Folder\RobotTemplate\build\preverify.raw.util
[crio-preverify] ./build/classes, , C:/Users/NRHS Skynet/sunspotfrcsdk\lib\wpilibj.jar;C:/Users/NRHS Skynet/sunspotfrcsdk\lib
etworktables-crio.jar, C:/Users/NRHS Skynet/sunspotfrcsdk\lib\squawk.jar -> ./build/preverify
Expanding: C:\Users\NRHS Skynet\sunspotfrcsdk\lib\wpilibj.jar into C:\Users\NRHS Skynet\Desktop\New Folder\RobotTemplate\build\preverify
Expanding: C:\Users\NRHS Skynet\sunspotfrcsdk\lib
etworktables-crio.jar into C:\Users\NRHS Skynet\Desktop\New Folder\RobotTemplate\build\preverify
jar:
[crio-jar] ./build/preverify, ./resources -> ./build/app.jar
Building jar: C:\Users\NRHS Skynet\Desktop\New Folder\RobotTemplate\build\app.jar
suite:
Created dir: C:\Users\NRHS Skynet\Desktop\New Folder\RobotTemplate\build\suite
[crio-suite] ./build/app.jar -> ./build/suite/image
CompilerOracle: exclude com/sun/squawk/Method.getParameterTypes
CompilerOracle: exclude com/sun/squawk/SymbolParser.getSignatureTypeAt
CompilerOracle: exclude com/sun/squawk/SymbolParser.stripMethods
[translating suite image [closed: false, parent: squawk] …]

Excluding compile: com.sun.squawk.Method::getParameterTypes

Excluding compile: com.sun.squawk.SymbolParser::getSignatureTypeAt

[Including resource: META-INF/MANIFEST.MF]
[Including resource: META-INF/maven/edu.wpi.first.wpilib.networktables.java/NetworkTablesAzalea/pom.properties]
[Including resource: META-INF/maven/edu.wpi.first.wpilib.networktables.java/NetworkTablesAzalea/pom.xml]
Romizer processed 388 classes and generated 4 files.
Expanding: C:\Users\NRHS Skynet\Desktop\New Folder\RobotTemplate\build\app.jar into C:\Users\NRHS Skynet\Desktop\New Folder\RobotTemplate\build\suite
Moving 1 file to C:\Users\NRHS Skynet\Desktop\New Folder\RobotTemplate\build\suite
Moving 1 file to C:\Users\NRHS Skynet\Desktop\New Folder\RobotTemplate\build\suite
Moving 1 file to C:\Users\NRHS Skynet\Desktop\New Folder\RobotTemplate\build\suite
Deleting: C:\Users\NRHS Skynet\Desktop\New Folder\RobotTemplate\image.suite.api
deploy:
[crio-configure] Configuration files not included in this version of the sdk
[crio-configure] Checking that crio is configured for Java
Host OS: Windows 7 6.1, 6.1
Host JVM: Java HotSpot™ 64-Bit Server VM 24.45-b08
Target IP: 10.52.2.2
Network interfaces on host:
Realtek PCIe GBE Family Controller: address: 10.52.2.5 netmask: 255.0.0.0 <— on robot’s subnet
Intel® Centrino® Advanced-N 6230: address: 10.251.20.251 netmask: 255.255.255.254
Connecting FTP @10.52.2.2
C:\Users\NRHS Skynet\sunspotfrcsdk\build.xml:79: The following error occurred while executing this line:
C:\Users\NRHS Skynet\sunspotfrcsdk\ant\configure.xml:41:
java.net.SocketException: Software caused connection abort: recv failed
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:152)
at java.net.SocketInputStream.read(SocketInputStream.java:122)
at sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:283)
at sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:325)
at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:177)
at java.io.InputStreamReader.read(InputStreamReader.java:184)
at java.io.BufferedReader.fill(BufferedReader.java:154)
at java.io.BufferedReader.read(BufferedReader.java:175)
at org.apache.commons.net.io.CRLFLineReader.readLine(CRLFLineReader.java:58)
at org.apache.commons.net.ftp.FTP.__getReply(FTP.java:314)
at org.apache.commons.net.ftp.FTP.__getReply(FTP.java:294)
at org.apache.commons.net.ftp.FTP.sendCommand(FTP.java:483)
at org.apache.commons.net.ftp.FTP.sendCommand(FTP.java:608)
at org.apache.commons.net.ftp.FTP.port(FTP.java:932)
at org.apache.commons.net.ftp.FTPClient.openDataConnection(FTPClient.java:812)
at org.apache.commons.net.ftp.FTPClient._retrieveFile(FTPClient.java:1854)
at org.apache.commons.net.ftp.FTPClient.retrieveFile(FTPClient.java:1845)
at com.sun.spot.sdk.tool.ftp.UpgradeTask.checkVersion(Unknown Source)
at com.sun.spot.sdk.tool.ftp.UpgradeTask.execute(Unknown Source)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)
at sun.reflect.GeneratedMethodAccessor39.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.taskdefs.Sequential.execute(Sequential.java:68)
at net.sf.antcontrib.logic.Switch$Case.execute(Switch.java:171)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
at org.apache.tools.ant.Task.perform(Task.java:348)
at net.sf.antcontrib.logic.Switch.execute(Switch.java:138)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)
at sun.reflect.GeneratedMethodAccessor39.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.taskdefs.Sequential.execute(Sequential.java:68)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)
at sun.reflect.GeneratedMethodAccessor39.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.taskdefs.MacroInstance.execute(MacroInstance.java:396)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)
at sun.reflect.GeneratedMethodAccessor39.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.Target.execute(Target.java:435)
at org.apache.tools.ant.Target.performTasks(Target.java:456)
at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1393)
at org.apache.tools.ant.Project.executeTarget(Project.java:1364)
at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
at org.apache.tools.ant.Project.executeTargets(Project.java:1248)
at org.apache.tools.ant.module.bridge.impl.BridgeImpl.run(BridgeImpl.java:283)
at org.apache.tools.ant.module.run.TargetExecutor.run(TargetExecutor.java:541)
at org.netbeans.core.execution.RunClassThread.run(RunClassThread.java:153)
BUILD FAILED (total time: 8 seconds)

I’d just like to note that your IP address seems to be set incorrectly if you are using Wi-Fi to connect to the robot.

The adapter in use should have an IP address of something like 10.52.02.XX (where XX is a number like 05 or 12) and a subnet mask of 255.0.0.0. Your configuration currently seems to be for team 25120 on your wireless card.

You should also disable the network adapter that isn’t currently in use when connected to the robot.

Not a programmer, but use “[code*] / */code]” tags like this:

"

"

bleghasdf

 "*/code]" to make it less of an eyesore on people browsing the thread.

These errors all indicate a network connection problem, not a cRIO config issue.

The IP address looks ok, I don’t think he’s trying to use the wireless interface.

Network interfaces on host:
Realtek PCIe GBE Family Controller: address: 10.52.2.5 netmask: 255.0.0.0 <— on robot’s subnet
Intel® Centrino® Advanced-N 6230: address: 10.251.20.251 netmask: 255.255.255.254
Connecting FTP @10.52.2.2

The fact that they’re both on the 10.x.x.x network might cause an issue depending on the netmasks/routing. I agree with the suggestion to start by disabling the interface you are not using (looks like wireless?) and see if that improves things.

We aren’t using wifi, we’re using a local area connection. We have an ethernet cable directly connected to the modem which is connected to the cRIO. I thought I had set up the IP address correctly, I did it according to the guide.

Right, but you have a second network connection through wifi, probably to a school network or something else. Disable your wireless card while using the wired interface.

If disabling the wireless doesn’t help, I would try bypassing the modem (it’s actually just a wireless bridge, not really a modem). Plug the Ethernet cable directly from the laptop into the cRIO. It’s also worth trying a different cable. A bad/loose cable could produce these symptoms.

Okay, since disabling the wireless didn’t help, I’ll try exactly that. Thanks for the help so far everyone.

 Realtek PCIe GBE Family Controller:  address: 10.52.2.2 netmask: 255.255.255.0 <--- on robot's subnet
Connecting FTP @10.52.2.2
C:\Users\NRHS Skynet\sunspotfrcsdk\build.xml:79: The following error occurred while executing this line:
C:\Users\NRHS Skynet\sunspotfrcsdk\ant\configure.xml:41: 
java.net.ConnectException: Connection refused: connect

So I’m pretty sure I have the IP set correctly, and I disabled the other network. Now it appears that I just can’t connect to the FTP. Any idea what would be causing this? Is our setup not correct?

You indicated in the original message that you tried imaging the cRIO and it failed. Have you been able to successfully image it since then? If not, I would try that first.

We had imaged it earlier and when I went to check on it, it appears that I can’t connect to the cRIO anymore. I’m going to figure out why now.

Do you have a firewall or antivirus program that is blocking the connection?

It looks like you changed your computer’s IP to 10.52.2.2, which is the cRIO’s IP address, which is making FTP try to connect to itself. The IP was correct before. Your computer’s IP should be 10.52.2.5 if you’re running the FRC Driver Station.

Also, your netmask should be 255.0.0.0 though it may technically work if it’s 255.255.255.0.

Ah okay, good news. We fixed the connection issue with our cRIO and rebooted our computer and everything was working. We were able to load our code on to the robot and enable Operation modes in the FRC Driver Station. Unfortunately, nothing is happening. We have the “Hello World” program from the guide written in Netbeans and the motors are not turning.

package edu.wpi.first.wpilibj.templates;
http://www.chiefdelphi.com/forums/editpost.php?do=editpost&p=1334953
import edu.wpi.first.wpilibj.SimpleRobot;
import edu.wpi.first.wpilibj.Joystick;
import edu.wpi.first.wpilibj.Timer;
import edu.wpi.first.wpilibj.RobotDrive;

public class RobotTemplate extends SimpleRobot {
    
    RobotDrive chassis = new RobotDrive(1, 2);
    Joystick leftStick = new Joystick(1);
    Joystick rightStick = new Joystick(2);
 
    /**
     * This function is called once each time the robot enters autonomous mode.
     */
    public void autonomous() {
      chassis.setSafetyEnabled(false);
      chassis.drive(-0.5, 0.0);
      Timer.delay(2.0);
      chassis.drive(0.0, 0.0);
    }

    /**
     * This function is called once each time the robot enters operator control.
     */
    public void operatorControl() {
        chassis.setSafetyEnabled(true);
        while(isOperatorControl() && isEnabled()){
            chassis.tankDrive(leftStick, rightStick);
            Timer.delay(0.01);
        }
    }
    

At least we have made some progress and cleaned up our wires.

The motors are put into the correct ports, in case you were wondering.

EDIT: after attempting to debug, it seems that the robot isn’t ever reaching the code that tell the motors to turn the wheels

What mode are you placing the robot in through the driverstation to run your test, Autonomous Teleop Practice or Test?

We have tried all of them and receive the same result of nothing.

I would recommend simplifying the operator control for now.

I have never used the Timer function in teleop, so this timer may be throwing your code off, but if the code is not being reached, make sure the conditions of the while loop are being satisfied. Or you could just remove the while loop entirely and see how that works.

This may or may not work for SimpleRobot, as I always use IterativeRobot.

Does the operatorControl() function run periodically?

I know you’ve corrected the IP address problem, but I wanted to point out that those codes aren’t actually errors. They’re only warnings, and in many cases they just verify that the network connection is functioning as expected. (In your specific case, they actually verify that there is no network connection at all.)

So now you’re getting no response from your motors? That could be the fault of a great many things. To start narrowing them down, look at some of the many status lights on your robot. When you’re trying to move the motors, what are the lights on your motor controllers doing? What is the big orange Robot Signal Light doing?

I’m thinking that no functions are ever reached. I removed both the timer and the while loop, both getting no results. I got this message in the console: [cRIO] Default disabled() method running, consider providing your own. I created a disabled() method in the code and I still received the same message.

Also my Jaguar motors just constantly blink yellow and my Robot Signal Light continuously blinks when the driver station is off, but it starts to change its blink pattern when I change the operation modes in the driver station.