Chief Delphi

Chief Delphi (http://www.chiefdelphi.com/forums/index.php)
-   Java (http://www.chiefdelphi.com/forums/forumdisplay.php?f=184)
-   -   roboRIO not found (http://www.chiefdelphi.com/forums/showthread.php?t=132298)

JohnGilb 06-01-2015 23:37

roboRIO not found
 
I've been having some trouble programming/debugging the RoboRIO. This is the tail end of the output I see in the console when attempting to deploy:

Code:

get-target-ip:
    [echo] Trying Target: roboRIO-488.local
Unknown host: roboRIO-488.local
    [echo]  roboRIO not found via mDNS, falling back to static USB
    [echo] roboRIO not found via USB, falling back to static address of 10.4.88.2

BUILD FAILED
C:\Users\John\wpilib\java\current\ant\build.xml:45: Assertion failed boolean test.
roboRIO not found, please check that the roboRIO is connected, imaged and that the team number is set properly in Eclipse

I can ping roboRIO-488.local successfully. I can also read the files on the roboRIO via FTP.

In Window->Preferences->WPILib Preferences, my team number is set to 488.

The roboRIO has been imaged with the v23 image (and I can confirm with the tool). I can also see and operate the robot via the Driver Station.

By plugging in the USB cable, I am able to program the robot. Also, the debug environment seems to only try connecting to roborio-488.local, and doesn't work via USB.

Any idea what's going on?

Team3266Spencer 07-01-2015 00:00

Re: roboRIO not found
 
Did you install Java on the rRIO?

JohnGilb 07-01-2015 11:47

Re: roboRIO not found
 
Yes, using the JVM Wizard from FIRST.

JohnGilb 08-01-2015 20:10

Re: roboRIO not found
 
I did a little experiment.

First, using cmd.exe, I pinged roboRIO-488.local:

Code:

C:\Users\John>ping roboRIO-488.local -4

Pinging roboRIO-488.local [169.254.82.206] with 32 bytes of data:
Reply from 169.254.82.206: bytes=32 time=1ms TTL=64

Then I went into C:\users\john\wpilib\java\current\ant\build.xml, and modified this:
Code:

<property name="target" value="roboRIO-${team-number}.local" />
into this:
Code:

<property name="target" value="169.254.82.206" />
I was able to deploy code successfully.

The question is... why is Eclipse unable to resolve roboRIO-488.local, while Windows (via cmd and explorer) can resolve it easily?

Joe Ross 08-01-2015 20:18

Re: roboRIO not found
 
Quote:

Originally Posted by JohnGilb (Post 1424599)
The question is... why is Eclipse unable to resolve roboRIO-488.local, while Windows (via cmd and explorer) can resolve it easily?

Typically this is due to a firewall only blocking certain applications.

JohnGilb 08-01-2015 20:33

Re: roboRIO not found
 
Good thinking... though I already tried disabling the Windows Firewall entirely, to no effect.

Plus, Eclipse has no issue connecting to the roboRIO, as long as I refer to it by IP and not by its mDNS address (roboRIO-488.local).

JohnGilb 08-01-2015 20:46

Re: roboRIO not found
 
As a workaround...

Is it possible to modify the WPI plugin to get the debug command to use an IP address target instead of the "roboRio-488.local" address? And if so, how?

JohnGilb 08-01-2015 21:27

Re: roboRIO not found
 
Well, instead of modifying the plugins, I decided to modify my machine.

I edited my hosts file (C:\Windows\System32\drivers\etc\hosts) to include this line:

Code:

169.254.82.206 roboRIO-488.local
This allows deployment and debugging without modification of build scripts or anything... but is obviously somewhat fragile. Hopefully I can root cause the actual issue in the meantime.

fsilberberg 08-01-2015 22:15

Quote:

Originally Posted by JohnGilb (Post 1424626)
As a workaround...

Is it possible to modify the WPI plugin to get the debug command to use an IP address target instead of the "roboRio-488.local" address? And if so, how?

This would be possible by modifying the ant script in the ~/wpilib/java/current/ant/ directory, but that'll run into the same issue as a hosts workaround, which is that the roboRIO ip could change. As it is, we default to mdns, but fall back to static USB and old-style 10.te.am.2 if mdns isn't found.

JohnGilb 08-01-2015 23:35

Re: roboRIO not found
 
The problem I had there is while I could edit the ant script to deploy code, it seemed like Eclipse would always attempt to connect to "roboRio-488.local" when opening the connection to the remote debugger.

Is there a way to mess with that?

fsilberberg 09-01-2015 00:10

Re: roboRIO not found
 
Well, you could theoretically make a new ant run config that runs the debug-deploy target, and a new remote debug configuration that connects to the remote jvm session. I haven't tried it, but I just went and looked at the plugin source, and I think these are the parameters you'll need to set:
Connection Type: Standard (Socket Attach)
Host: <YOUR IP HERE>
Port: 8348
No guarantees that these are the actual correct parameters, as I didn't write any part of the plugin, but if I'm reading it correctly, then that's what you're looking for. If you're interested in taking a look yourself (if that doesn't work), then visit https://usfirst.collab.net/sf/projects/wpilib/ and follow the instructions to look at the source. The particular file I'm pulling this info from is eclipse-plugins/<long package name>.java/src/main/java/<more packages>/launching/JavaLaunchShortcut.java, in the getRemoteDebugConfig method. Hope that helps.

fredghostkyle 10-01-2015 23:45

Re: roboRIO not found
 
Have you tried roborio-0488.local?

JohnGilb 11-01-2015 13:49

Re: roboRIO not found
 
That address does not resolve for me. Interesting idea, though. =]

nickmcski 11-01-2015 14:00

Re: roboRIO not found
 
Quote:

Originally Posted by JohnGilb (Post 1426261)
That address does not resolve for me. Interesting idea, though. =]

What OS are you running?

JohnGilb 11-01-2015 15:59

Re: roboRIO not found
 
Windows 7.


All times are GMT -5. The time now is 10:34.

Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi