coverting old Crio code to new Crio?

What does it take to convert code from the original crio to the new crio II?

We would be using this years imaging tool and C++ libraries.

If you have the old code all you would have to do is load the code in Wind River and reimage the Crio. After you reimage it just build and download your code.

To code, there isn’t any noticeable difference between the two cRIO models.
The newer model has more memory, some additional NI services are available, etc., so going backwards might present some limitations, but not going from the 8-slot to the 4-slot.

Depending on the vintage of the code there will be API changes and calling argument differences that may need upgrading.

The code isn’t any different, and if you’re only deploying code and not debugging it, there isn’t any difference. The only difference is if you’re debugging code, you have to set up your target with a different image file, and your debug setup is similarly different.

just so that I understand:

Our practice bot is running the old crio and the competition bot is running the newer version. From what I am hearing you say, there isn’t anything we need to do to the code we developing to transfer it from the practice bot to the one in the bag? We have taken great pains to keep all the I/O and motor connections the same in both. I would just hate to run into something really, really silly on Thursday.

That’s a direct transfer. No special conditions to running the same code on each machine.

Awesome. Just what I wanted to hear. :slight_smile:

You have to define a different target for workbench to connect to to download, run or debug your program. See the “Getting Started With C” guide, page 33. The difference is the kernal image file:

  1. Select a Kernel Image file by making sure the “File” radio button is highlighted and clicking
    Browse. The file is located in the WindRiver install directory in the WPILib top level directory called
    “C:\WindRiver\WPILib\”. Select the file that matches your cRIO version, either cRIOFRC_vxWorks
    (8-slot cRIO FRC) or cRIOFRCII_vxWorks (4-slot cRIO FRCII).