PB_Mode Sequence

Question for others: What is the correct sequence for the Comp_Mode and Auton_Mode? We thaught it should have been:

Comp_Mode = 1, Auton_Mode = 0 => disabled, Human Mode
Comp_Mode = 0, Auton_Mode = 1 => Autonomous Mode
Comp_Mode = 0, Auton_Mode = 0 => Manual Mode
Comp_Mode = 1, Auton_Mode = 0 => End of Match

Further the sequence would be Auton_Mode would be set to 1 before or at the same time as Comp_Mode = 0. We found at the Pitt comp that Comp_Mode went to 0 prior to Auton_Mode going to 1. We had to add commands to enable auto mode from Manual Mode. Has anyone else found this problem?

Dave

This was in one of the team updates. Basically, your code should be based off of Auton_mode, not comp_mode.

Yes, but it did not give the exact sequence. We believe the sequence to be:

Comp_Mode Auton_Mode
1 0
0 0
0 1
0 0
1 0

While smother control would be:

Comp_Mode Auton_Mode
1 0
0 1
0 0
1 0

This would keep from entering Manual mode prior to Autonomous mode. Using multiple program slots requires additional switching that should be unnecessary. We set program slot 0 for disable mode, selection of which autonomous mode to operate in and then run the proper autonomous slot. Each autonomous program then runs the manual slot when autonomous mode is cleared. The sequence that is being used by first now requires going from autonomous slot to manual slot and back to autonomous slot. I am trying to check with others to verify that the above sequence that we are seeing is what FIRST is using and if so to ask FIRST to provide a more concise sequence in the future.

Dave

Based on our experience, I agree that comp_mode is going low for at least one cycle before auton_mode is going high.

We used slot 0 to set up a master variable list, initialize the relay outputs, and initialize the master uP. After that it just sat in a loop until either comp_mode and auton_mode were low, or auton_mode went high. The problem we had was that comp_mode went low before auton_mode, which ran the teleoperation code instead of one of the autonomous programs.

For the first few matches it just sat there and we couldn’t figure out what was wrong. After I moved the autonomous selection stuff to the OI program it worked fine.