You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: source/docs/contributing/frc-docs/style-guide.rst
+4-4Lines changed: 4 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,7 +8,7 @@ This document contains the various MD and RST/Sphinx specific guidelines for the
8
8
9
9
Use only lowercase alphanumeric characters and ``-`` (minus) symbol.
10
10
11
-
For documents that will have an identical software/hardware name, append "Hardware" or "Software" to the end of the document name. IE, ``ultrasonics-hardware.rst``
11
+
For documents that will have an identical software/hardware name, append "Hardware" or "Software" to the end of the document name. IE, ``encoders-hardware.rst``
12
12
13
13
Suffix filenames with the ``.rst`` extension.
14
14
@@ -181,13 +181,13 @@ Internal Links will be auto-generated based on the ReStructuredText filename and
181
181
182
182
For example, here are several ways to link to sections and documents.
183
183
184
-
Use this format to reference a document section. You must use the absolute path of the document. ``:ref:`docs/software/hardware-apis/sensors/ultrasonics-software:Analog ultrasonics``` renders to :ref:`docs/software/hardware-apis/sensors/ultrasonics-software:Analog ultrasonics`.
184
+
Use this format to reference a document section. You must use the absolute path of the document. ``:ref:`docs/software/hardware/sensors/encoders-hardware:Quadrature Encoders``` renders to :ref:`docs/software/hardware/sensors/encoders-hardware:Quadrature Encoders`.
185
185
186
186
Use this format to reference a section of the same document. Note the single underscore. ```Images`_`` renders to `Images`_.
187
187
188
-
Use this format to reference the top-level of a document. You can use relative paths ``:doc:`build-instructions``` renders to :doc:`build-instructions` Or to use absolute paths, put a forward slash at the beginning of the path ``:doc:`/docs/software/hardware-apis/sensors/ultrasonics-software``` renders to :doc:`/docs/software/hardware-apis/sensors/ultrasonics-software`. Note that the text rendered is the main section title of the target page regardless of the target filename.
188
+
Use this format to reference the top-level of a document. You can use relative paths ``:doc:`build-instructions``` renders to :doc:`build-instructions` Or to use absolute paths, put a forward slash at the beginning of the path ``:doc:`/docs/software/hardware-apis/sensors/encoders-software``` renders to :doc:`/docs/software/hardware-apis/sensors/encoders-software`. Note that the text rendered is the main section title of the target page regardless of the target filename.
189
189
190
-
When using ``:ref:`` or ``:doc:`` you may customize the displayed text by surrounding the actual link with angle brackets ``<>`` and adding the custom text between the first backtick ````` and the first angle bracket ``<``. For example ``:ref:`custom text <docs/software/hardware-apis/sensors/ultrasonics-software:Analog ultrasonics>``` renders to :ref:`custom text <docs/software/hardware-apis/sensors/ultrasonics-software:Analog ultrasonics>`.
190
+
When using ``:ref:`` or ``:doc:`` you may customize the displayed text by surrounding the actual link with angle brackets ``<>`` and adding the custom text between the first backtick ````` and the first angle bracket ``<``. For example ``:ref:`custom text <docs/software/hardware/sensors/encoders-hardware:Quadrature Encoders>``` renders to :ref:`custom text <docs/software/hardware/sensors/encoders-hardware:Quadrature Encoders>`.
Copy file name to clipboardExpand all lines: source/docs/controls-overviews/control-system-software.rst
+1-64Lines changed: 1 addition & 64 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -10,13 +10,6 @@ The primary supported OS for FRC components is Windows. All required FRC softwar
10
10
11
11
Many of the tools for C++/Java/Python programming are also supported and tested on macOS and Linux. Teams programming in C++/Java/Python should be able to develop using these systems, using a Windows system for the Windows-only operations such as the Driver Station and roboRIO Imaging Tool.
LabVIEW FRC, based on a recent version of LabVIEW Professional, is one of the three officially supported languages for programming an FRC robot. LabVIEW is a graphical, dataflow-driven language. LabVIEW programs consist of a collection of icons, called VIs, wired together with wires which pass data between the VIs. The LabVIEW FRC installer is distributed on a DVD found in the Kickoff Kit of Parts and is also available for download. A guide to getting started with the LabVIEW FRC software, including installation instructions can be found :ref:`here <docs/zero-to-robot/step-2/labview-setup:Installing LabVIEW for FRC (LabVIEW only)>`.
@@ -40,20 +33,6 @@ This is the only software allowed to be used for the purpose of controlling the
40
33
41
34
The LabVIEW Dashboard is automatically launched by the FRC Driver Station by default. The purpose of the Dashboard is to provide feedback about the operation of the robot using tabbed display with a variety of built in features. More information about the FRC Default Dashboard software can be found :ref:`here <docs/software/dashboards/labview-dashboard/driver-station-labview-dashboard:FRC LabVIEW Dashboard>`.
SmartDashboard allows you to view your robot data by automatically creating customizable indicators specifically for each piece of data sent from your robot. Additional documentation on SmartDashboard can be found :ref:`here <docs/software/dashboards/smartdashboard/index:SmartDashboard>`.
:alt:Shuffleboard with 3 widgets from their NetworkTables entries added.
54
-
55
-
Shuffleboard has the same features as SmartDashboard. It also improves on the setup and visualization of your data with new features and a modern design at the cost of being less resource efficient. Additional documentation on Shuffleboard can be found :ref:`here <docs/software/dashboards/shuffleboard/index:Shuffleboard>`.
@@ -75,55 +54,20 @@ AdvantageScope is a data visualization tool for :ref:`NetworkTables <docs/softwa
75
54
76
55
Elastic is a simple and modern dashboard made by Team 353. It is meant to serve as a dashboard for competition but can also be used for testing. It was built with the goal of being a drag & drop dashboard with an easy setup and elegant UI designed for a high pressure competition environment. For more information see the :doc:`Elastic section </docs/software/dashboards/elastic>`.
LiveWindow is a feature of SmartDashboard and Shuffleboard, designed for use with the Test Mode of the Driver Station. LiveWindow allows the user to see feedback from sensors on the robot and control actuators independent of the written user code. More information about LiveWindow can be found :ref:`here <docs/software/dashboards/smartdashboard/test-mode-and-live-window/index:SmartDashboard: Test Mode and Live Window>`.
:alt:roboRIO Imaging Tool after it has found a connected roboRIO.
89
-
90
-
This tool is used to format and setup a roboRIO for use in FRC. Installation instructions can be found :ref:`here <docs/zero-to-robot/step-2/frc-game-tools:Installing the FRC Game Tools>`. Additional instructions on imaging your roboRIO using this tool can be found :doc:`here </docs/zero-to-robot/step-3/imaging-your-roborio>`.
:alt:Driver Station Log Viewer showing a logged practice session.
96
61
97
62
The FRC Driver Station Log Viewer is used to view logs created by the FRC Driver Station. These logs contain a variety of information important for understanding what happened during a practice session or FRC match. More information about the FRC Driver Station Log Viewer and understanding the logs can be found :ref:`here <docs/software/driverstation/driver-station-log-viewer:Driver Station Log File Viewer>`
:alt:RobotBuilder building a robot with two subsystems.
103
-
104
-
RobotBuilder is a tool designed to aid in setup and structuring of a Command Based robot project for C++ or Java (Python not currently supported). RobotBuilder allows you to enter in the various components of your robot subsystems and operator interface and define what your commands are in a graphical tree structure. RobotBuilder will then generate structural template code to get you started. More information about RobotBuilder can be found :ref:`here <docs/software/wpilib-tools/robotbuilder/index:RobotBuilder>`. More information about the Command Based programming architecture can be found :ref:`here <docs/software/commandbased/index:Command-Based Programming>`.
:alt:The Simulation GUI similar to Glass but also has Joysticks and control over the robot state and a few other features.
110
68
111
69
Robot Simulation offers a way for Java, C++, and Python teams to verify their actual robot code is working in a simulated environment. This simulation can be launched directly from VS Code and includes a 2D field that users can visualize their robot's movement on. For more information see the :ref:`Robot Simulation section <docs/software/wpilib-tools/robot-simulation/introduction:Introduction to Robot Simulation>`.
The FRC Robot Simulator is a component of the LabVIEW programming environment that allows you to operate a predefined robot in a simulated environment to test code and/or Driver Station functions. Information on using the FRC Robot Simulator can be found [here](https://forums.ni.com/t5/FIRST-Robotics-Competition/LabVIEW-Tutorial-10-Robot-Simulation/ta-p/3739702?profile.language=en) or by opening the Robot Simulation Readme.html file in the LabVIEW Project Explorer.
:alt:PathWeaver UI with a project for FRC Deep Space plotting a trajectory to the back of the rocket.
124
-
125
-
PathWeaver allows teams to quickly generate and configure paths for advanced autonomous routines for differential drivetrains. These paths have smooth curves allowing the team to quickly navigate their robot between points on the field. For more information see the :ref:`PathWeaver section <docs/software/pathplanning/pathweaver/introduction:Introduction to PathWeaver>`.
:alt:OutlineViewer with the preferences dialog box.
138
82
139
-
OutlineViewer is a utility used to view, modify and add to all of the contents of the NetworkTables for debugging purposes. LabVIEW teams can use the Variables tab of the LabVIEW Dashboard to accomplish this functionality. For more information see the :ref:`Outline Viewer section <docs/software/wpilib-tools/outlineviewer/index:OutlineViewer>`.
The roboRIO Team Number Setter is a cross-platform utility that can be used to set the team number on the roboRIO. It is an alternative to the roboRIO imaging tool for setting the team number. For more information see the :ref:`roboRIO Team Number Setter section <docs/software/wpilib-tools/roborio-team-number-setter/index:roboRIO Team Number Setter>`.
83
+
OutlineViewer is a utility used to view, modify and add to all of the contents of the NetworkTables for debugging purposes. For more information see the :ref:`Outline Viewer section <docs/software/wpilib-tools/outlineviewer/index:OutlineViewer>`.
Copy file name to clipboardExpand all lines: source/docs/hardware/sensors/analog-inputs-hardware.rst
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,7 +6,7 @@ An [analog signal](https://en.wikipedia.org/wiki/Analog_signal) is a signal whos
6
6
7
7
In practice, there is no way to measure a "true" analog signal with a digital device such as a computer (like the roboRIO). Accordingly, the analog inputs are actually measured as a 12-bit digital signal - however, this is quite a high resolution [1]_.
8
8
9
-
Analog inputs are typically (but not always!) used for sensors whose measurements vary continuously over a range, such as :doc:`ultrasonic rangefinders <ultrasonics-hardware>` and :doc:`potentiometers <analog-potentiometers-hardware>`, as they can communicate by outputting a voltage proportional to their measurements.
9
+
Analog inputs are typically (but not always!) used for sensors whose measurements vary continuously over a range, such as :doc:`potentiometers <analog-potentiometers-hardware>`, as they can communicate by outputting a voltage proportional to their measurements.
Copy file name to clipboardExpand all lines: source/docs/hardware/sensors/lidar.rst
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,7 @@
4
4
5
5
LIDAR (light detection and ranging) sensors are a variety of rangefinder seeing increasing use in FRC\ |reg|.
6
6
7
-
LIDAR sensors work quite similarly to :doc:`ultrasonics <ultrasonics-hardware>`, but use light instead of sound. A laser is pulsed, and the sensor measures the time until the pulse bounces back.
7
+
LIDAR sensors work by emitting a laser pulse and measuring the time until the pulse bounces back. From the measured time and the speed of light, it is possible to calculate the distance to the target.
Copy file name to clipboardExpand all lines: source/docs/software/advanced-controls/state-space/state-space-debugging.rst
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,7 +9,7 @@ One of the most common causes of bugs with state-space controllers is signs bein
9
9
10
10
## The Importance of Graphs
11
11
12
-
Reliable data of the :term:`system's <system>` :term:`state`\s, :term:`input`\s and :term:`output`\s over time is important when debugging state-space controllers and observers. One common approach is to send this data over NetworkTables and use tools such as :ref:`Shuffleboard <docs/software/dashboards/shuffleboard/index:Shuffleboard>`, which allow us to both graph the data in real-time as well as save it to a CSV file for plotting later with tools such as Google Sheets, Excel or Python.
12
+
Reliable data of the :term:`system's <system>` :term:`state`\s, :term:`input`\s and :term:`output`\s over time is important when debugging state-space controllers and observers. One common approach is to send this data over NetworkTables and use tools like :doc:`/docs/software/dashboards/advantagescope`, to graph the data in real-time. :doc:`DataLog </docs/software/telemetry/datalog>` is also frequently used to save the data for later analysis, and can be exported using AdvantageScope to a CSV file for plotting later with tools such as Google Sheets, Excel or Python.
13
13
14
14
.. note:: By default, NetworkTables is limited to a 10hz update rate. For testing, this can be bypassed with the following code snippet to submit data at up to 100hz. This code should be run periodically to forcibly publish new data.
Copy file name to clipboardExpand all lines: source/docs/software/advanced-controls/trajectories/troubleshooting.rst
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -47,7 +47,7 @@ Poor trajectory tracking performance can be difficult to troubleshoot. Although
47
47
48
48
Because it can be so hard to locate the layer of the trajectory generator and followers that is misbehaving, a systematic, layer-by-layer approach is recommended for general poor tracking performance (e.g. the robot is off by few feet or more than twenty degrees). The below steps are listed in the order that you should do them in; it is important to follow this order so that you can isolate the effects of different steps from each other.
49
49
50
-
.. note:: The below examples put diagnostic values onto :term:`NetworkTables`. The easiest way to graph these values is to :ref:`use Shuffleboard's graphing capabilities <docs/software/dashboards/shuffleboard/getting-started/shuffleboard-graphs:Working With Graphs>`.
50
+
.. note:: The below examples put diagnostic values onto :term:`NetworkTables`. The easiest way to graph these values is to :doc:`use AdvantageScope's graphing capabilities </docs/software/dashboards/advantagescope>`.
51
51
52
52
### Verify Odometry
53
53
If your odometry is bad, then your Ramsete controller may misbehave, because it modifies your robot's target velocities based on where your odometry thinks the robot is.
@@ -134,7 +134,7 @@ If your feedforwards are bad then the P controllers for each side of the robot w
134
134
);
135
135
```
136
136
137
-
3. Finally, we need to log desired wheel velocity and actual wheel velocity (you should put actual and desired velocities on the same graph if you're using Shuffleboard, or if your graphing software has that capability):
137
+
3. Finally, we need to log desired wheel velocity and actual wheel velocity (you should put actual and desired velocities on the same graph if you're using AdvantageScope, or if your graphing software has that capability):
Copy file name to clipboardExpand all lines: source/docs/software/advanced-gradlerio/gradlew-tasks.rst
+1-3Lines changed: 1 addition & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -23,9 +23,7 @@ This article aims to highlight the gradle commands supported by the WPILib team
23
23
24
24
## GradleRIO tasks
25
25
26
-
``./gradlew $TOOL$`` - Runs the tool ``$TOOL$`` (Replace ``$TOOL$`` with the name of the tool. IE, Glass, Shuffleboard, etc)
27
-
28
-
``./gradlew $TOOL$Install`` - Installs the java tool ``$TOOL$`` (Replace ``$TOOL$`` with the name of the tool. IE, Shuffleboard, SmartDashboard, etc)
26
+
``./gradlew $TOOL$`` - Runs the tool ``$TOOL$`` (Replace ``$TOOL$`` with the name of the tool. IE, Glass, OutlineViewer, etc)
29
27
30
28
``./gradlew InstallAllTools`` - Installs all available tools. This excludes the development environment such as Visual Studio Code. It's the users requirement to ensure the required dependencies (Java) is installed. Only recommended for advanced users!
Copy file name to clipboardExpand all lines: source/docs/software/can-devices/can-addressing.rst
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -178,7 +178,7 @@ For CAN Nodes to be accepted for use in the FRC System, they must:
178
178
179
179
- Support the minimum Broadcast message requirements as detailed in the Broadcast Messages section.
180
180
- If controlling actuators, utilize a scheme to assure that the robot is issuing commands, is enabled, and is still present.
181
-
- Provide software library support for LabVIEW, C++, and Java or arrange with *FIRST*\ |reg| or FIRST's Control System Partners to provide such interfaces.
181
+
- Provide software library support for C++, and Java or arrange with *FIRST*\ |reg| or FIRST's Control System Partners to provide such interfaces.
0 commit comments