Our code should not have been preempting anything else due to usage, as the only relevant running tasks were the FRC_UserProgram Task and the SHS_Autonomous Task, (Our separately-tasked autonomous,) neither of which should have been doing much. The Autonomous spends most of it's time on
calls, and the AutonomousPeriodic function was empty.
Taking a look at the log file now, we were using about 7-10% of the CPU during autonomous runs. (Screenshot attached)
My theory stands that it's got something to do with the workings of
Code:
void FRC_NetworkCommunication_JaguarCANDriver_sendMessage ( uint32_t messageID, const uint8_t *data, uint8_t dataSize, int32_t *status );
Although perhaps something is interrupting it improperly somehow. I do know that VxWorks can be tricky with ISRs, although that sounds like a bit of a long-shot.