Recent Updates

  • Updated on: Jul 31, 2018

    Driver Station Log File Viewer

    In an effort to provide information to aid in debugging, the FRC Driver Station creates log files of important diagnostic data while running. These logs can be reviewed later using the FRC Driver Station Log Viewer. The Log Viewer can be found via the shortcut installed in the Start menu or in the FRC Driver Station folder in Program Files.

  • Manual FRC 2019 Beta
  • Updated on: Jul 25, 2018

    Alpha Test Info

    Manual FRC 2019 Beta
  • Updated on: Jun 17, 2018

    Scheduling commands

  • Updated on: Jun 17, 2018

    Scheduling commands

    Commands are scheduled to run based on a number of factors such as triggers, default commands when no other running commands require a subsystem, a prior command in a group finishes, button presses, autonomous period starting, etc. Although many commands may be running virtually at the same time, there is only a single thread (the main robot thread). This is to reduce the complexity of synchronization between threads. There are threads that run in the system for systems like PID loops, communications, etc. but those are all self contained with very little interaction requiring complex synchronization. This makes the system much more robust and predictable.

    This is accomplished by a class called Scheduler. It has a run() method that is called periodically (typically every 20ms in response to a driver station update) that tries to make progress on every command that is currently running. This is done by calling the execute() method on the command followed by the isFinished() method. If isFinished() returns true, the command is marked to be removed from execution  on the next pass through the scheduler. So if there are a number of commands all scheduled to run at the same time, then every time the Scheduler.run() method is called, each of the active commands execute() and isFinished() methods are called. This has the same effect as using multiple threads.

  • Updated on: Jun 14, 2018

    FRC CAN Addressing

  • Updated on: Jun 14, 2018

    WPILib Drive classes: Drivetrain types