Recent Updates
-
Updated on: Dec 16, 2014
Axis M1013 Camera Compatibility
It has come to our attention that the Axis M1011 camera has been discontinued and superseded by the Axis M1013 camera. This document details any differences or issues we are aware of between the two cameras when used with WPILib and the provided sample vision programs.
Manual Vision Processing -
Updated on: Dec 16, 2014
FRC Driver Station Errors/Warnings
In an effort to provide both Teams and Volunteers (FTAs/CSAs/etc.) more information to use when diagnosing robot problems, a number of Warning and Error messages have been added to the Driver Station. These messages are displayed in the DS diagnostics tab when they occur and are also included in the DS Log Files that can be viewed with the Log File Viewer. This document discusses the messages produced by the DS (messages produced by WPILib can also appear in this box and the DS Logs).
Manual FRC Driver Station -
Updated on: Dec 10, 2014
Updating CAN Jaguar Firmware
To use CAN Jaguars with the 2015 Control system, teams will have to update them to the latest version of the firmware. The recommended method to do so is by using the serial interface and the BDC-Comm software tool.
Manual Control System Hardware -
Updated on: Nov 04, 2014
The new SmartDashboard (SFX)
We have a new SmartDashboard that uses the more modern JavaFX for it's user interface. This has the promise of much richer user interfaces since it allows the widgets to have style sheets applied to them and the library is much newer. The new dashboard requires a current version of Oracle Java 7 (minimum release 7u6) to be installed on your system to get JavaFX.
Manual SmartDashboard -
Updated on: Oct 24, 2014
Verifying SmartDashboard is working
Manual SmartDashboard -
Updated on: Oct 24, 2014
Enabling Test mode (LiveWindow)
You may add code to your program to display values for your sensors and actuators while the robot is in Test mode. This can be selected from the Driver Station whenever the robot is not on the field. The code to display these values is automatically generated by RobotBuilder and is described in the next article. Test mode is designed to verify the correct operation of the sensors and actuators on a robot. In addition it can be used for obtaining setpoints from sensors such as potentiometers and for tuning PID loops in your code.
Manual SmartDashboard -
Updated on: Oct 24, 2014
Setting SFX to Launch with the DS
The C++ and Java Dashboard buttons in the Driver Station link to the previously existing SmartDashboard for the 2015 season. This article details how to set up the DS to launch SFX instead.
Manual SmartDashboard -
Updated on: Oct 24, 2014
Creating a custom control using FXML
sfx comes with a palette of built-in controls that feature a wide range of use cases. But sometimes you would like to further customize your robot dashboard with controls that you create yourself. There are two strategies for creating custom controls, either:
- FXML - a XML-based markup language for describing your own controls using a declarative language without needing programming
- Java-based controls can have more complex requirements and behaviors
In this lesson we'll look at creating FXML-based controls. For creating Java controls, see the Java tutorial.
Manual SmartDashboard -
Updated on: Oct 24, 2014
Creating a custom control using Java
sfx comes with a palette of built-in controls that feature a wide range of use cases. But sometimes you would like to further customize your robot dashboard with controls that you create yourself. There are two strategies for creating custom controls, either:
- FXML - a XML-based markup language for describing your own controls using a declarative language without needing programming
- Java-based controls can have more complex requirements and behaviors
In this lesson we'll look at creating Java-based controls. For FXML controls see the FXML tutorial.
Manual SmartDashboard -
Updated on: Oct 24, 2014
Stale data and SmartDashboard
SmartDashboard uses NetworkTables for communicating values between the robot and the driver station laptop. Network Tables acts as a distributed table of name and value pairs. If a name/value pair is added to either the client (laptop) or server (robot) it is replicated to the other. If a name/value pair is deleted from, say, the robot but the SmartDashboard or OutlineViewer are still running, then when the robot is restarted, the old values will still appear in the SmartDashboard and OutlineViewer because they never stopped running and continue to have those values in their tables. When the robot restarts, those old values will be replicated to the robot.
To ensure that the SmartDashboard and OutlineViewer are showing exactly the same values, it is necessary to restart all of them at the same time. That way, old values that one is holding won't get replicated to the others.
This usually isn't a problem if the program isn't constantly changing, but if the program is in development and the set of keys being added to NetworkTables is constantly changing, then it might be necessary to do the restart of everything to accurately see what is current.
Manual SmartDashboard
