View Single Post
  #4   Spotlight this post!  
Unread 25-04-2016, 18:01
jalozinski jalozinski is offline
Registered User
FRC #4787
 
Join Date: Jan 2014
Location: Chicago
Posts: 17
jalozinski is an unknown quantity at this point
Re: RoboRIO DNS server malfunctioning?

Quote:
Originally Posted by Mark McLeod View Post
It sounds like you might have a few crossed settings, but what you have sounds like it's working just as it should.
When using DHCP your roboRIO should not be 10.47.87.2, because the DHCP range gives addresses only in the .20 to .199 range. So, when you had that 10.47.87.59 address, that was correct (expect it to change from run to run though). For a list of expected IPs see http://wpilib.screenstepslive.com/s/...rio-networking

If the DS Comms light is green, but the robot code light is red, then almost certainly your code is crashing just after being started. The Comms light means the roboRIO FRC system code is responding, the Robot Code light means the user code is responding.
A red Comms light on the roboRIO confirms your user code isn't talking to the DS, but the rest of it is talking.

Sometimes an easy way to tell that your code is crashing is to open the DS Log File Viewer and see if a new log gets created every few seconds. A new log gets created when your code starts, and the system this year automatically restarts the user code whenever it crashes, so you'll see new logs started everytime the code crashes and gets restarted.
You can get more crash information by trying to start your FRCUserProgram.jar from an ssh command line directly on the roboRIO.
To test with I'd recommend that you create a new project that does nothing or simply drives without any extra code for anything else.

Aside from that, on the Driver Station Setup tab click on the down arrow next to your team number to see what roboRIOs it has detected and choose it if it's been found.
You can also just type an IP address into the box where the team number usually goes. (But that really isn't the problem if the Comms light is green)

Your two robot issue is solved by giving one of your robots a different SSID with all the other regular settings expected, e.g., same team number. You do that by using the radio setup tool, then browsing into one of the radios (or both of them), going to the wireless setup page and changing the SSID (we usually make it the team # and robot year-doing it now avoids any conflicts with next year's robot).
The login is root/root, then on the OpenMesh look at Network/WiFi/radio0/ESSID
Then make your laptop only connect to the corresponding robot wireless, don't let your laptops default to connecting to both SSIDs.
Thanks for your help!

I set the roboRIO back to DHCP. It turns out it had been set to use .lan instead of .local when it deals out names. Both the DS and building to the robot are working right now.

Just as you predicted, the code is crashing every time it runs, based on the log viewer. I fixed one thing that was throwing exceptions, but I'm getting a new one, and why it's broken is kind of enigmatic to me:

Code:
java: /home/fred/first/wpilib/allwpilib/wpilibj/src/athena/cpp/lib/FRCNetworkCommunicationsLibrary.cpp:103: 
void Java_edu_wpi_first_wpilibj_communication_FRCNetworkCommunicatinsLibrary_FRCNetworkCommunicatinReserve(JNIEnv*, jclass): Assertion '1==rv' failed.
Aborted
Looking at the source code it's referencing, it seems like the backing library to the FRC-NCLib is literally failing to initialize. I don't know where to go from here. I thought it might have to do with running it through SSH, but building with eclipse doesn't fix the issue. It's still crashing every time it initializes.

Last edited by jalozinski : 25-04-2016 at 18:10.
Reply With Quote