From one of the FIRST updates I got the listing of the bit states in the PB_MODE byte for each phase of the competition. They indicated that the OI would be sending data to the robot up until the start of the human player period. Since the OI is supposed to talk to the RC during that time, we moved the program selection switch from the RC to the OI to save space.
There is a BCD thumbwheel switch (0-9) that the flight crew will use to select the autonomous program. We have a local variable storing the number, updating it only when comp_mode = 1 and auton_mode = 0. I’m assuming that during the 10 seconds the human players are on the field the OI will be sending the data to the RC, but the flight crew will have to be behind the line.
Can anyone who may be using the same method and tried it over the weekend let me know if it worked? Thanks
Team 122 did something very similar to this at the VCU regional in Richmond this past weekend. Since comp_mode is 1 before the match and after the match, we used this fact to set our program (that it is 1 after the match was inconsequential to us). When the operator would put down the board, she would hit the sensor override switch to “tell” the program that it was time to pick an autonomous program. Next we used the joystick to pick the from 0-8 – since we have nine to choose from, this is the easist to do without adding any more switches to the program. And when the joystick is in the right position, the sensor override switch was hit back to its previous state, and the choice was then “locked.”
Yes, the crew must be behind the line during the 10 seconds, but it worked great for us to just choose while we were setting the control board up. We used this method, and we had no problems with it … (I suppose I should note that we had no problems with the selection code; now as to what was actually chosen, that’s another story! Anyway, that’s fixed now.)