Skip to content

Oxford Comma #3037

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 5 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ The project homepage contains a README file. Throughout the beta, the README sec

1. Code - The Code tab will take you to the README with Beta announcements as well as allow you to access file releases using the "Releases" section on the right hand side of the screen.
2. Issues - The Issues tab is where the bug tracker for the project is located.
3. Discussions - The Discussions tab contains a forum which allows teams to post questions or discussions about the Beta test, software or documentation. Task reports should also be posted here.
3. Discussions - The Discussions tab contains a forum which allows teams to post questions or discussions about the Beta test, software, or documentation. Task reports should also be posted here.

To create your team's task report, make issue reports, or interact with discussions, you'll need to sign in to GitHub.
Near the top right corner of the page, click "Sign in", or "Sign up" if you don't already have an account, and follow the directions.
4 changes: 2 additions & 2 deletions source/docs/beta/tasks/beta-task-overview.rst
Original file line number Diff line number Diff line change
Expand Up @@ -23,10 +23,10 @@ The purpose of Task 1 is to complete installation of the new Control System soft
Task 2 - Basic Benchtop Test (Targeted Completion 11/4/2024)
------------------------------------------------------------

The purpose of Task 2 is to get the base new Control System software set up and running. This helps minimize complexity to ease debugging of any issues that do occur. In this task you will set up the development environment for your programming language, configure the roboRIO, load and debug a simple program. This Task consists of 2 Objectives:
The purpose of Task 2 is to get the base new Control System software set up and running. This helps minimize complexity to ease debugging of any issues that do occur. In this task you will set up the development environment for your programming language, configure the roboRIO, load, and debug a simple program. This Task consists of 2 Objectives:

1. Configure the roboRIO
2. Create, Build and Load Default Program
2. Create, Build, and Load Default Program

Task 3 - Port Previous Robot Code (Targeted Completion 11/18/2024)
------------------------------------------------------------------
Expand Down
2 changes: 1 addition & 1 deletion source/docs/beta/tasks/international-team-note.rst
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ A number of our international teams may have access to computers with foreign la
Tasks
-----

If you have access to a computer with a foreign language version of Windows, it would be helpful to our Beta Test effort to utilize that machine as part of your Beta testing. Specifically, try testing each of the unique software aspects (installation, imaging the roboRIO, running the DS, creating projects, building and downloading code, debugging code, programming a radio, etc.).
If you have access to a computer with a foreign language version of Windows, it would be helpful to our Beta Test effort to utilize that machine as part of your Beta testing. Specifically, try testing each of the unique software aspects (installation, imaging the roboRIO, running the DS, creating projects, building, and downloading code, debugging code, programming a radio, etc.).

Feedback
---------
Expand Down
4 changes: 2 additions & 2 deletions source/docs/beta/tasks/task-2-configure-and-benchtop.rst
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ Task 2: Configure roboRIO & Benchtop Test
Task:

1. Image and configure your roboRIO controller.
2. Create, build, load and run a basic robot program (template of your choosing) on the roboRIO benchtop setup.
2. Create, build, load, and run a basic robot program (template of your choosing) on the roboRIO benchtop setup.

Overview
--------
Expand All @@ -15,7 +15,7 @@ Before using the roboRIO controller with the Beta software, it must be imaged wi

.. note:: The image version in the documentation may not be updated yet. You should use the latest image available after installing the latest Beta Update.

Next verify the ability to create and download a basic robot program from the chosen template in the assigned programming language. This will verify that the development environment is set up correctly and working properly before moving on to a more complex system. For this task you should create, build and download a basic program to the roboRIO to run at startup, then verify that you are able to communicate with and enable the program using the Driver Station. Instructions can be found on the :ref:`docs/zero-to-robot/step-4/index:Step 4: Programming your Robot` page.
Next verify the ability to create and download a basic robot program from the chosen template in the assigned programming language. This will verify that the development environment is set up correctly and working properly before moving on to a more complex system. For this task you should create, build, and download a basic program to the roboRIO to run at startup, then verify that you are able to communicate with and enable the program using the Driver Station. Instructions can be found on the :ref:`docs/zero-to-robot/step-4/index:Step 4: Programming your Robot` page.

Desired Feedback
----------------
Expand Down
2 changes: 1 addition & 1 deletion source/docs/contributing/wpilib/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ This is a list of links to the various documentation for the [allwpilib](https:/

## Quick Start

Below is a list of instructions that guide you through cloning, building, publishing and using local allwpilib binaries in a robot project. This quick start is not intended as a replacement for the information that is further listed in this document.
Below is a list of instructions that guide you through cloning, building, publishing, and using local allwpilib binaries in a robot project. This quick start is not intended as a replacement for the information that is further listed in this document.

* Clone the repository with ``git clone https://github.com/wpilibsuite/allwpilib.git``
* Build the repository with ``./gradlew build`` or ``./gradlew build --build-cache`` if you have an internet connection
Expand Down
8 changes: 4 additions & 4 deletions source/docs/controls-overviews/control-system-hardware.rst
Original file line number Diff line number Diff line change
Expand Up @@ -170,7 +170,7 @@ There are a variety of different :ref:`motor controllers <docs/software/hardware
:alt: SPARK MAX Motor Controller
:width: 400

The [SPARK MAX Motor Controller](https://www.revrobotics.com/rev-11-2158/) is an advanced brushed and brushless DC motor controller from REV Robotics. When using CAN bus or USB control, the SPARK MAX uses input from limit switches, encoders, and other sensors, including the integrated encoder of the REV NEO Brushless Motor, to perform advanced control modes. The SPARK MAX can be controlled over PWM, CAN or USB (for configuration/testing only). For more information, see the [SPARK MAX Documentation](https://docs.revrobotics.com/brushless/spark-max/overview).
The [SPARK MAX Motor Controller](https://www.revrobotics.com/rev-11-2158/) is an advanced brushed and brushless DC motor controller from REV Robotics. When using CAN bus or USB control, the SPARK MAX uses input from limit switches, encoders, and other sensors, including the integrated encoder of the REV NEO Brushless Motor, to perform advanced control modes. The SPARK MAX can be controlled over PWM, CAN, or USB (for configuration/testing only). For more information, see the [SPARK MAX Documentation](https://docs.revrobotics.com/brushless/spark-max/overview).

### TalonFX Motor Controller

Expand Down Expand Up @@ -222,7 +222,7 @@ The [Victor SP Motor Controller](https://web.archive.org/web/20220926211100/http
:alt: SPARK Flex Motor Controller
:width: 400

The [SPARK Flex Motor Controller](https://www.revrobotics.com/rev-11-2159/) is a smart brushed and brushless DC motor controller from Rev Robotics. It is designed for semi-permanent docking to NEO Vortex brushless motors, but can be used with other brushed and brushless motors through the use of an adapter dock. When using CAN bus or USB control, the SPARK Flex uses input from limit switches, encoders, and other sensors, including the integrated encoder of NEO Vortex, Neo 1.0/1.1 and NEO 550 brushless motors, to perform advanced control modes. The SPARK Flex can be controlled over PWM, CAN or USB (for configuration/testing only). For more information, see the [SPARK Flex Documentation](https://docs.revrobotics.com/brushless/spark-flex/overview).
The [SPARK Flex Motor Controller](https://www.revrobotics.com/rev-11-2159/) is a smart brushed and brushless DC motor controller from Rev Robotics. It is designed for semi-permanent docking to NEO Vortex brushless motors, but can be used with other brushed and brushless motors through the use of an adapter dock. When using CAN bus or USB control, the SPARK Flex uses input from limit switches, encoders, and other sensors, including the integrated encoder of NEO Vortex, Neo 1.0/1.1 and NEO 550 brushless motors, to perform advanced control modes. The SPARK Flex can be controlled over PWM, CAN, or USB (for configuration/testing only). For more information, see the [SPARK Flex Documentation](https://docs.revrobotics.com/brushless/spark-flex/overview).

### Talon Motor Controller

Expand Down Expand Up @@ -303,7 +303,7 @@ The [Talon FXS Motor Controller](https://store.ctr-electronics.com/products/talo
:alt: Koors 40 Brushed DC Motor Controller
:width: 400

The [Koors 40 Brushed DC Motor Controller](https://www.andymark.com/products/koors-40-brushed-dc-motor-controller) is an inexpensive PWM brushed DC motor controller from AndyMark with features such as Ground Loss Protection for PWM, Thermal and Overcurrent Protection, and Reverse Polarity Protection.
The [Koors 40 Brushed DC Motor Controller](https://www.andymark.com/products/koors-40-brushed-dc-motor-controller) is an inexpensive PWM brushed DC motor controller from AndyMark with features such as Ground Loss Protection for PWM, Thermal, and Overcurrent Protection, and Reverse Polarity Protection.

### SD540B and SD540C Motor Controllers

Expand Down Expand Up @@ -349,4 +349,4 @@ The Microsoft Lifecam HD3000 is a USB webcam that can be plugged directly into t

## Image Credits

Image of roboRIO courtesy of National Instruments. Image of DMC-60 courtesy of Digilent. Image of SD540 courtesy of Mindsensors. Images of Jaguar Motor Controller, Talon SRX, Victor 888, Victor SP, Victor SPX, and Spike H-Bridge Relay courtesy of VEX Robotics, Inc. Image of SPARK MAX, SPARK Flex, Servo Hub, ATO Breakers, Power Distribution Hub, and Pneumatic Hub courtesy of REV Robotics. Images of TalonFX, TalonFXS and Power Distribution Panel 2.0 courtesy of Cross The Road Electronics, LLC. Image of Thrifty Nova courtesy of The Thrifty Bot. Lifecam, PDP, PCM, SPARK, and VRM photos courtesy of *FIRST*\ |reg|. Image of the VH-109 radio courtesy of Vivid-Hosting. All other photos courtesy of AndyMark Inc.
Image of roboRIO courtesy of National Instruments. Image of DMC-60 courtesy of Digilent. Image of SD540 courtesy of Mindsensors. Images of Jaguar Motor Controller, Talon SRX, Victor 888, Victor SP, Victor SPX, and Spike H-Bridge Relay courtesy of VEX Robotics, Inc. Image of SPARK MAX, SPARK Flex, Servo Hub, ATO Breakers, Power Distribution Hub, and Pneumatic Hub courtesy of REV Robotics. Images of TalonFX, TalonFXS, and Power Distribution Panel 2.0 courtesy of Cross The Road Electronics, LLC. Image of Thrifty Nova courtesy of The Thrifty Bot. Lifecam, PDP, PCM, SPARK, and VRM photos courtesy of *FIRST*\ |reg|. Image of the VH-109 radio courtesy of Vivid-Hosting. All other photos courtesy of AndyMark Inc.
4 changes: 2 additions & 2 deletions source/docs/controls-overviews/control-system-software.rst
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ Shuffleboard has the same features as SmartDashboard. It also improves on the se
.. image:: images/control-system-software/glass.png
:alt: Glass connected and showing NetworkTables, a Field2D window, and a plot of a couple signals.

:ref:`Glass <docs/software/dashboards/glass/index:Glass>` is a Dashboard focused on being a programmer's tool for debugging. The primary advantages are the field view, pose visualization and advanced signal plotting tools.
:ref:`Glass <docs/software/dashboards/glass/index:Glass>` is a Dashboard focused on being a programmer's tool for debugging. The primary advantages are the field view, pose visualization, and advanced signal plotting tools.

### AdvantageScope

Expand Down Expand Up @@ -136,7 +136,7 @@ This tool helps teams automatically calculate constants that can be used to desc
.. image:: images/control-system-software/outline-viewer.png
:alt: OutlineViewer with the preferences dialog box.

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>`.
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>`.

## roboRIO Team Number Setter

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ Apply considerable force onto the battery cable at 90 degrees to try to move the
:alt: Disconnected battery of a robot mid match.
:width: 350

In almost every event we see at least one robot where a not properly secured battery connector (the large Anderson) comes apart and disconnects power from the robot. This has happened in championship matches on the Einstein and everywhere else. Its an easy to ensure that this doesn't happen to you by securing the two connectors by wrapping a tie wrap around the connection. 10 or 12 tie wraps for the peace of mind during an event is not a high price to pay to guarantee that you will not have the problem of this robot from an actual event after a bumpy ride over a defense. Also, secure your battery to the chassis with hook and loop tape or another method, especially in games with rough defense, obstacles or climbing.
In almost every event we see at least one robot where a not properly secured battery connector (the large Anderson) comes apart and disconnects power from the robot. This has happened in championship matches on the Einstein and everywhere else. Its an easy to ensure that this doesn't happen to you by securing the two connectors by wrapping a tie wrap around the connection. 10 or 12 tie wraps for the peace of mind during an event is not a high price to pay to guarantee that you will not have the problem of this robot from an actual event after a bumpy ride over a defense. Also, secure your battery to the chassis with hook and loop tape or another method, especially in games with rough defense, obstacles, or climbing.

## Securing the Battery Connector & Main Power Leads

Expand Down
2 changes: 1 addition & 1 deletion source/docs/hardware/hardware-basics/status-lights-ref.rst
Original file line number Diff line number Diff line change
Expand Up @@ -596,7 +596,7 @@ Each channel has a corresponding status LED that will indicate the sensed state
| Right/Forward Signal | Solid Green |
+-----------------------+----------------+

- 6V Power LED off, dim or flickering with power applied = Over-current shutdown
- 6V Power LED off, dim, or flickering with power applied = Over-current shutdown

## Spike relay configured as a motor, light, or solenoid switch

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ This page describes wiring pneumatics with the CTRE Pneumatic Control Module (PC

A single PCM will support most pneumatics applications, providing an output for the compressor, input for the pressure switch, and outputs for up to 8 solenoid channels (12V or 24V selectable). The module is connected to the roboRIO over the :term:`CAN` bus and powered via 12V from the PDP or PDH.

For complicated robot designs requiring more channels or multiple solenoid voltages, additional PCMs or PHs can be added to the control system.
For complicated robot designs requiring more channels or multiple solenoid voltages, additional PCMs, or PHs can be added to the control system.

## PCM Power and Control Wiring

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ This page describes wiring pneumatics with the REV Pneumatic Hub (:term:`PH`). F

A single PH will support most pneumatics applications, providing an output for the compressor, input for a pressure switch, and outputs for up to 16 solenoid channels (12V or 24V selectable). The module is connected to the roboRIO over the :term:`CAN` bus and powered via 12V from the PDP/PDH.

For complicated robot designs requiring more channels or multiple solenoid voltages, additional PHs or PCMs can be added to the control system.
For complicated robot designs requiring more channels or multiple solenoid voltages, additional PHs, or PCMs can be added to the control system.

## PCM Power and Control Wiring

Expand Down
4 changes: 2 additions & 2 deletions source/docs/hardware/sensors/gyros-hardware.rst
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

Gyroscopes (or "gyros", for short) are devices that measure rate-of-rotation. These are particularly useful for stabilizing robot driving, or for measuring heading or tilt by integrating (adding-up) the rate measurements to get a measurement of total angular displacement.

Several popular FRC\ |reg| devices known as :ref:`IMUs <docs/hardware/sensors/accelerometers-hardware:IMUs (Inertial Measurement Units)>` (Inertial Measurement Units) combine 3-axis gyros, accelerometers and other position sensors into one device. Some popular examples are:
Several popular FRC\ |reg| devices known as :ref:`IMUs <docs/hardware/sensors/accelerometers-hardware:IMUs (Inertial Measurement Units)>` (Inertial Measurement Units) combine 3-axis gyros, accelerometers, and other position sensors into one device. Some popular examples are:

- [Analog Devices ADIS16448 and ADIS 16470 IMUs](https://www.analog.com/en/landing-pages/001/first.html)
- [CTRE Pigeon IMU](https://store.ctr-electronics.com/gadgeteer-pigeon-imu/)
Expand Down Expand Up @@ -37,7 +37,7 @@ Three-axis gyros measure rotation rate around all three spatial axes (typically
The [Analog Devices ADIS16470 IMU Board for FIRST Robotics](https://www.analog.com/en/landing-pages/001/first.html) that has been in FIRST Choice in recent years is a commonly used three-axis gyro.

.. image:: images/gyros-hardware/drive-yaw-pitch-roll.svg
:alt: The 3 axis: yaw, pitch, and roll and how they relate to robot movement.
:alt: The 3 axis: yaw, pitch, and roll, and how they relate to robot movement.
:width: 400

.. note:: The coordinate system shown above is often used for three axis gyros, as it is a convention in avionics. Note that other coordinate systems are used in mathematics and referenced throughout WPILib. Please refer to the :ref:`Drive class axis diagram<docs/software/hardware-apis/motors/wpi-drive-classes:Axis Conventions>` for axis referenced in software.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# IP Configurations

This document describes the IP configuration used at events, both on the fields and in the pits, potential issues and workaround configurations.
This document describes the IP configuration used at events, both on the fields and in the pits, potential issues, and workaround configurations.

## TE.AM IP Address Notation

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ In the ``Maximum Box`` under ``Vertical Scale`` enter 524288 (this is 4 Megabits
.. image:: images/measuring-bandwidth-usage/graph.png
:alt: Observing the bandwidth usage on the chart screen.

You may now connect to your robot as normal over the selected interface (if you haven't done so already). The graph will show the total bandwidth usage of the connection, with the bandwidth cap at the top of the graph. The Last, Average, Min and Max values are also displayed at the bottom of the graph. Note that these values are in Bytes/Second meaning the cap is 524,288. With just the Driver Station open you should see a flat line at ~100000 Bytes/Second.
You may now connect to your robot as normal over the selected interface (if you haven't done so already). The graph will show the total bandwidth usage of the connection, with the bandwidth cap at the top of the graph. he Last, Average, Min, and Max values are also displayed at the bottom of the graph. Note that these values are in Bytes/Second meaning the cap is 524,288. With just the Driver Station open you should see a flat line at ~100000 Bytes/Second.

## Measuring Bandwidth Usage using Wireshark

Expand Down
Loading