Wind River Workbench is a complete C/C++ Interactive Development Environment (IDE) that handles
all aspects of code development.
It will help you:
• Write the code for your robot with editors, syntax highlighting, formatting, auto-completion, etc.
• Compile the source code into binary object code for the cRIO PowerPC architecture.
• Debug and test code by downloading the code to the cRIO robot controller and enabling you to
step through line by line and examine variables of the running code.
• Deploy the program so that it will automatically start up when the robot is powered on.
You can even use Subversion, a popular source code repository server to manage your code and track
changes. This is especially useful if there is more than one person doing software development.
Setting up the environment
To use Workbench you need to configure it so that it knows about your robot and the programs that youwant to download to it. There are three areas that need to be set up.
1. The target remote system, which is the cRIO that you will use to download and debug your
programs.
2. The run or debug configuration that describes the program to be debugged and which remote
system you want to debug it on.
3. The FIRST Downloader settings that tell which program should be deployed onto the cRO when
you are ready to load it for a competition or operation without the laptop.
Creating a Remote System in Workbench
Workbench connects to your cRIO controller and can download and remotely debug programs running on it. In order to make that connection, Workbench needs to add your cRIO to its list of Remote Systems. Each entry in the list tells Workbench the network address of your cRIO and has a kernel file that is required for remote access.
To create the entry for your system do the following steps.
Note: the Reset connected target (reboot the server) option doesn’t
work reliably and other features seem to have issues unless the “Console
out” switch on the cRIO is set to on. Normally this switch enables the
console output for viewing with a serial port, but leaving it on even if
there is no serial cable connected improves the system reliability.