Driver Station/RoboRIO communication issues

We’ve been having a couple different communications issues. The first one is that whenever we turn off the robot and turn it back on the laptop has to be restarted in order for the Driver Station program to connect again. It seems to be an mDNS issue because when this happens the Wi-Fi still connects and I am able to ping 10.55.17.2 (roborio IP) but am unable to ping roborio-5517-frc.local (it does work once I restart the computer, though). I am worried this might be an issue at our week 2 competition.

The second issue we discovered today at the Kettering practice/demo event: when connected it would keep momentarily dropping communication (“No Robot Communication”) and then reconnecting – whether it was disabled or enabled. In one of the matches our robot dropped comms and reconnected and then drove forward very fast by itself as if the joystick values queued up and then all fired at once when it reconnected. It hit the castle wall of the opposing alliance pretty hard. We definitely do not want that to happen at our actual competitions.

This event didn’t have an FMS so everyone was connecting directly from their driver station to the robot, so this problem may have been due to all the robot Wi-Fi networks in the small area. I’m not sure though.

This year seems really bad for communications for us. Last year we barely had any problems and had everything up and running fine. I really don’t know if it is to do with the RoboRIO/radio or the PC but this does worry me quite a bit.

Has anyone else had these issues and solved them? I don’t have access to our robot right now and it is bagged again, so won’t be able to test anything right now. But we will be using part of our 6 hour unbag time next week for cleaning up some wiring, finish programming, and fixing issues, so I will be able to try any solutions/suggestions then.

Thanks.

When your PC won’t reconnect instead of rebooting your PC, the consensus is to Disable/Enable your network adaptor.
What OS are you using?

The radio dropping in and out was probably due to a crowded 2.4GHz band or the particular automatic channel selection being too busy.
The real field is much better at coordinating robot channels, or asking the venues to turn off the access points or 5GHz bands in the area.

Based on your robot’s over response you may want to tinker with the motor safety margin and how your code sets motors only when new driver packets come in.

Ah, ok. We will try disabling/enabling the network adaptor when it happens again. We are using Windows 10. I wonder if there is a way to prevent it from happening? It happens on all of the Windows 10 laptops we have tried which leads me to believe it’s a Windows 10 issue. I did notice my Mac doesn’t have the issue - Eclipse is able to connect and deploy code again after restarting the robot without having to change settings or restart the computer.

Our Windows 7 Classmate we got in the KOP last year won’t even connect to the radio at all so we had to switch to another laptop.

The radio dropping in and out was probably due to a crowded 2.4GHz band or the particular automatic channel selection being too busy.
The real field is much better at coordinating robot channels, or asking the venues to turn off the access points or 5GHz bands in the area.

Yeah, I figured it was probably due to all the robot networks in the area.

Based on your robot’s over response you may want to tinker with the motor safety margin and how your code sets motors only when new driver packets come it.

I will look into the code. What do you mean by motor safety margin? (I know how to enable motor safety, actually I think it actually may be disabled for RobotDrive motors which may be the issue.) And I’m not sure how to make it set the motors only when new driver packets come in - or is that what motor safety does?

Thank you for the suggestions!

Windows 10 has introduced several new networking issues.
It can be difficult to find and shutdown all the firewall options and network “helpers”.

I’d suggest taking your old Classmate to your competition and asking the CSA there to take a look at getting it working.

How you handle the Motor Safety will depend on the language you use.
There will be a call to set the interval, but by default it’ll be 0.1 sec.
How the motor safety works is simply if subsequent Set motor calls aren’t made within that 0.1 sec, then the PWM output automatically gets set to neutral.
If your code just calls the Set Motor constantly no matter what, then it’ll defeat the purpose of the safety.