.out file not building!

We have been using windriver fine this whole season, when suddenly, our .out files stopped getting updated. No matter how many times we rebuilt the code, or restarted windriver, they still won’t build. Has anybody else had this problem, and how did you fix it?

Thanks in advance for any help!

have you changed the name of your code

ex. simple_robot -> 2011_team_3038

if so you have to open windriver go to windows on the top menu bar, preferences, first deployment and make sure you file path is directing to the write .out file

no, we haven’t changed the name of the code, and the .out file path is correct. When building, it doesn’t update the .out file. The only solution we have seen is to restart windriver. The very first day of the build season that solved the problem, and it hasn’t come up since. Now it isn’t working.

ok… we have found a solution, but uncovered more problems.

first, we build the project. It does not create the .out file.

To solve this, we then rebuild the project (actually using “rebuild”) and it then correctly updates the .out file.

When we deploy the code, it appears as if it is being deployed properly. The transferring file bar goes all the way across. There are no errors at this point.

At this point, we reboot the robot. We have tried doing this both via the classmate rebooting the crio, and a manual reboot of the robot by resetting its power.

Then, we reestablish comms with the robot, only to see that the new code is not on the robot.

We have tried re-imaging the robot, and then repeating the above steps, all of them working fine. Now, instead of still having the same old code on the robot, we have no code on the robot. We are unable to get any code onto the robot.

We have tried deploying code from another computer as well, and it didn’t solve the problem.

Before re-imaging the crio, we tried undeploying code from the robot, but it would not work.

We are using windriver.

you have to go to preferences and fine the path to your .out file

read this

We said that we did that in our post above. We double checked it, and the path is properly set.

We followed that guide, and everything that it said to do, we have already done and tried multiple times. We have also gone through this and we still haven’t come across a solution to our problem.

when you build are you getting any errors?

negative, ghostrider.

ok so you build it and you get no errors right?

so what is the problem?

yes, we get no errors. We don’t know what the problem is. We are wondering if somebody does, and can help us resolve it.

can you deploy it to the robot?

yes

so then what is the problem???

are you changing something in the wpilib that is not changing when you download it to the robot or what is wrong

does that help?

we are not changing it

Please read the entire thread…

Rosemount: Could you please post your source code? We have found WindRiver and vxWorks can do some odd things, sometimes an obscure runtime error will make the illusion of it uploading but older code is ran.

EDIT: You are doing Undeploy -> Deploy -> Reboot robot correct?

have you reimaged your crio?
have you updated windriver?
on the crio are all dongles off but counsel out?
have you done a clean build?
do you have anything in your code that is not hooked up to the robot?
ex: sensor, encoder…

That is correct. The first time we do it, a window opens and closes immediately, so we cannot read it. If we do that again, is says “Unable to delete the UserProgram from the robot.”

posting source in a second.

In an attempt to fix our problems we have created a new project and widdled our code down to the essentials.

RJoystick is just a subclass of Joystick.
Our ZomBDashboard was working before we ran into these issues.


#include "WPILib.h"
#include "ZomBDashboard.h"
#include "RJoystick.h"

/**
 * This is a demo program showing the use of the RobotBase class.
 * The SimpleRobot class is the base of a robot application that will automatically call your
 * Autonomous and OperatorControl methods at the right time as controlled by the switches on
 * the driver station or the field controls.
 */ 
class RobotDemo : public SimpleRobot
{
	RobotDrive 		myRobot; // robot drive system
	RJoystick 		leftstick; // only joystick
	RJoystick	 	rightstick;
	ZomBDashboard 	zomb;
	Jaguar 			winch_motor;
	Compressor 		compressor;

public:
	RobotDemo(void):
		myRobot(1, 2),	// these must be initialized in the same order
		leftstick(1),		// as they are declared above.
		rightstick(2),
		zomb(ZomBDashboard::GetInstance(TCP)),
		winch_motor(3),
		compressor(5,4)
	{
		myRobot.SetExpiration(0.1);
	}

	/**
	 * Drive left & right motors for 2 seconds then stop
	 */
	void Autonomous(void)
	{
		myRobot.SetSafetyEnabled(false);
		myRobot.Drive(0.1, 0.0); 	// drive forwards half speed
		Wait(2.0); 				//    for 2 seconds
		myRobot.Drive(0.0, 0.0); 	// stop robot
	}

	/**
	 * Runs the motors with arcade steering. 
	 */
	void OperatorControl(void)
	{
		myRobot.SetSafetyEnabled(true);
		while (IsOperatorControl())
		{
			compressor.Start();
			leftstick.UpdateButtonStates();
			rightstick.UpdateButtonStates();
			myRobot.TankDrive(leftstick, rightstick);
			
			if(zomb.CanSend())
			{
				zomb.Add("leftStickAxis", leftstick.GetY());
				zomb.Add("rightStickAxis", rightstick.GetY());
				zomb.Add("testtext", "RWRRSARSR");
				zomb.Send();
				
			}
			
			
			Wait(0.02);//Min time to wait is 0.005
		}
	}
};

START_ROBOT_CLASS(RobotDemo);