Trouble flashing cRIO

I’ve been trying for the past hour or so, following the directions of different people when others’ didn’t work, but every time the cRIO keeps giving me this error when I try to flash it, sometimes the IP changes but the error is the same.

The cRIO is connected with a regular ethernet cable. Any tips for me to get this to get working? Thanks.

I believe you should be using a crossover ethernet cable.

Also, make sure you have set the IP of your computer you are flashing from properly with the correct subnet mask

Read the control systems manuals found here, http://usfirst.org/roboticsprograms/frc/content.aspx?id=10934 for more information on setting your IP correctly.

I believe the correct subnet mask is 255.0.0.0, which is not the 255.255.255.0 that most people are familiar with.

We are getting the EXACT same error, except we had it set to LabVIEW.
We spent 5 hours working on it before spending 2 hours on the phone with NI, and still can’t fix it. NI was able to replicate the problem by setting an invalid IP address (not close to correct), but the problem stopped when the IP error was fixed.

We tried using the Classmate as well as my laptop, running Vista 32 bit. We thought that the cRio was rebooting when loading code, but found through ping that it was still running. We have tried using the Safe Mode and reformatting, setting Reset IP and trying again, and trying No Code and trying again. The NI guy asked us to try just about every network configuration, from crossover cable to full wireless system, with static and dynamic IP addresses on the two computers.

The NI guy was going to talk to the author of the cRio imaging tool, when he got in today and call us back.

I’m glad to know its no just us…

Network config:
The subnet mask is 255.0.0.0, the IP is 10.xx.yy.5 for the DS, 10.xx.yy.6 for the dev laptop, and 10.xx.yy.2 for the crio.
For us that’s 10.00.33.5, 10.00.33.6, and 10.00.33.2
Crossover cable

Still nothing?
Try turning on the Safe Mode DIP switch, rebooting the cRio, and running the tool again. It will ask you to reformat, say yes. After it is done, turn the DIP switch off and reboot the cRio. Run the tool again. the IP of the cRio should be 0.0.0.0 and there should be no name. Set the Team ID, and a name, and try it again. If it fails again, the IP will be correct and the name will be “temp”. If you get an error 56 when imaging after reformatting, you’ve got the same problem as us.

Do you have another laptop to use?

Hey all, fellow team member of OP here.

We got our problem fixed earlier today. Used a regular ethernet cable instead of a crossover, and used my laptop to flash the cRIO. Set the IP (in Windows 7 this is your IPv4 address, not IPv6; this may or may not apply to Vista aswell) to 10.xx.xx.6, where x’s are team number.

Thanks for the help :smiley:

We have already exhausted all networking possibilities and tried three different programming computers. NI tech support needs to ask the engineer who wrote the FRC cRio imaging tool to find out the cause. I am wondering, has anyone else had problems flashing the cRio that weren’t caused by invalid IP addresses? That could indicate a bug in the imaging tool. If no one else is having these problems, then this is probably a fried cRio.

We will try our 2009 cRio after the 2009 bot is finished with a demo on Friday.

I believe that using a regular ethernet cable instead of a crossover cable is the correct way to go. The crossover is not needed when flashing the cRIO.

Unless you are connecting directly from the laptop to the cRio, no router in between. Then you need a crossover cable.

Unless the laptop has, and most modern machines do, automatic polarity correction.

Meaning a crossover cable or a normal cable will work. Crossover cable is better in case the laptop dosen’t.

There are people reading these forums who don’t know some computers will silently accommodate either cable.
If some know enough to even vaguely understand the difference between a normal cable and a crossover cable, and they read that you MUST use a crossover cable, yet they know that they used a normal cable and it worked, then they are confused.
I just like to provide, when I can, information that might enable those confused people to say “Ah, that’s why I was able to get away with doing so-and-so when everyone said it wouldn’t work unless I did such-and-such”.

I know this thread began over 2 weeks ago and the OP may no longer be having this particular problem.

However, I’ve just gone through the re-imaging process several times and I see why so many people have been having trouble with it.

You should not direct connect (crossover cable or not) your PC to the cRio when re-imaging.
Use cable instead of wireless, but use a switch or hub between the cRio and the PC.
The reason is the cRio is rebooted several times during the imaging process.
Each time the cRio reboots, it has the potential to disrupt link status on your PC LAN connection.
The time it takes your PC to recover from the lost link status, and the extent to which that makes your PC unable to communicate with the cRio is more or less – depending on your machine.

In my case, this morning, my laptop would not successfully image the cRio with a direct cable connection. After putting a switch in between, it worked first time. The switch prevents my wired port from losing link status when the cRio boots and that made all the difference.

Our team also had a very difficult time reimaging the cRIO. The strategy that worked for us was to set the cRIO into Safe mode, cycle power, reformat using the Image app, exit Safe mode, cycle power, then Image it fully to v19 C++. That worked from the Classmate, on which we installed the complete suite of FRC software. We also have a laptop and it didn’t work from that at all, so that needs all the FRC software uninstalled and reinstalled.

Note - disable Windows Firewall and UAC. Both have the potential to silently interfere with the software installation and Imaging process so it might fail and you aren’t sure why.

You should not have had to try all those things.
By breaking down the individual steps of the process, you alter the timing of steps and you can certainly arrive at an accidental success.
I noted no fewer than 4, and maybe up to 6, reboots of the cRio while trying to image it.
Each time (when direct cable connected) my laptop noted the link loss and went into fairly lengthy recovery.
Ethernet hubs are very cheap and I’d hazard a guess that most teams have a couple of them that they haven’t even used in quite a while.
I’m convinced that using a hub or switch between any PC and the cRio will eliminate all the try this (I call it voodoo because you might as well sacrifice a chicken too while you’re at it) and try that.

Note - disable Windows Firewall and UAC. Both have the potential to silently interfere with the software installation and Imaging process so it might fail and you aren’t sure why.

That is good advice.

EDIT: I do not endorse sacrificing chickens, but I do like KFC original recipe.

I second gvarndell’s advice,

However I’ll throw into the mix that the Classmate PC’s LAN connector seems to play nice when link is lost and regained during a cRIO reboot. Your own laptop or desktop’s mileage may vary. Our team exclusively re-images our cRIO using the Classmate PC via a direct crossover cable.

In another thread, I mentioned that our team has had issues relating to the supplied gaskets and/or debris causing intermittent communications problems with the cRIO.

We installed the cRIO gaskets included in this year’s kit, and could no longer reflash our cRIO. We removed them, and we were able to reflash again. It was very bizarre, because our cRIO was otherwise clean inside. I suppose it shows foreign objects can influence communications quite a bit.

Given the nature of last years game and the amount of static electricity that was generated, it might be wise to do a little house cleaning on the inside of the cRIO by dusting them off with some compressed air.

I do think you have highlighted a potential problem for those using a direct wired connection. I guess it depends on if the laptop ethernet is dropping connection and then is recovering quickly enough, so it would be a YMMV thing and some laptops would not have a problem, and some would. We’ve been using the same laptop and connection all along, until the cRIO started rufusing to accept a new Image.

gvarndell,

We have not had problems re-flashing the cRio until v20 of the image. Now, no matter what we try it will not re-flash (however, we have not tried the safe mode format yet). We have tried direct connection with multiple computers with both a normal and crossover cable and have also used the supplied N-router as a switch between the programming computer and cRio. Interestingly enough, the FRCLabVIEWUpdate2.1for2010.zip update does not seem to re-install itself and I can’t find any place to uninstall it. None of the program files (shortcuts, exes, etc) are updated and if I delete the zipped image of the cRio down in the NI installation folder on the computer, it will not replace the deleted file (again suggesting it is not reinstalling). Also, it won’t install the older version - FRCLabVIEWUpdate2.0for2010.zip - either. I can’t get the v19 image back.

  • Bryce

P.S. Really, NI? You don’t allow for REINSTALLATION!? The only solution I can see at this point is to completely uninstall and re-install LabView and then the updates. That’s if formatting in safe mode won’t work.

Bryscus,

I too had problems reflashing v20. I kept getting the “check your subnet error”. My team had the luxury of having 2 cRios, so I loaded v20 on the 2009 cRio, and it took the first time. If you use wireshark or another network protocol analyzer and only see UDP packets then it will fail. The actual transfer seemed like FTP. After verifying that that one accepted and worked, I did the following the stubborn one.

I turned the cRio off. I then switched it to safe mode. You can’t image in safe mode, but you can reformat it. So I reformatted it, and once it completed I powered it down. Switch it back to normal mode, then power it up. I then reimaged it normally. I’m not sure, but it might be worth noting that the time after the reformat I forgot to set a team number, so it was on 0. I don’t think it matters but it is exactly what I did. I then reimaged it with the correct team number.

Before you do these steps remember, if the cRio doesn’t take the image after the reformat then it will not run your code. If possible have a computer read the console output, sometimes you find a really helpful clue.