I am confused about pre_auton function. What exactly can I do in that function? Right now I need my arm to raise little as soon as the competition starts. But that will make my robot higher than 18". So can I raise them in pre_auton function or do I need to do it in auton function?
Things like clearing encoders, calibrating sensors and positioning arms are perfect for the pre_auton section. That said, since it will cause your robot to expand past 18 inches, I would definitely recommend moving that bit of code to your autonomous portion. It would be far better to use the first few seconds of the autonomous mode for the arm than to potentially get disqualified for the match.