Skip to content
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
3 changes: 2 additions & 1 deletion docs/source/docs/additional-resources/best-practices.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,11 @@
- Some time before the competition, lock down the version you are using and do not upgrade unless you encounter a critical bug.
- Have a copy of the installation image for the version you are using on your programming laptop, in case re-imaging (without internet) is needed.
- Extensively test at your home setup. Practice tuning from scratch under different lighting conditions.
- Confirm you have followed all the recommendations under the {ref}`Networking<docs/quick-start/networking:Networking>` documentation (network switch and static IP).
- Confirm you have followed all the recommendations under the {ref}`Networking<docs/getting-started/networking:Networking>` documentation (network switch and static IP).
- Only use high quality ethernet cables that have been rigorously tested.

## Camera Streaming

- All camera streams are published under the NetworkTables table `CameraPublisher`.
- The only subtable under `CameraPublisher` that will work for viewing a driver mode camera stream is the one that contains `Output` in the name.
- To view a camera stream in a dashboard, drag the correct subtable from the NetworkTables tree into your dashboard.
Expand Down
6 changes: 1 addition & 5 deletions docs/source/docs/advanced-installation/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,17 +2,13 @@

This page will help you install PhotonVision on non-supported coprocessor.

## Step 1: Software Install

This section will walk you through how to install PhotonVision on your coprocessor. Your coprocessor is the device that has the camera and you are using to detect targets (ex. if you are using a Limelight / Raspberry Pi, that is your coprocessor and you should follow those instructions).

:::{warning}
You only need to install PhotonVision on the coprocessor/device that is being used to detect targets, you do NOT need to install it on the device you use to view the webdashboard. All you need to view the webdashboard is for a device to be on the same network as your vision coprocessor and an internet browser.
:::

```{toctree}
:maxdepth: 3

sw_install/index
prerelease-software
other-operating-systems/index
```
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Software Installation
# Other Operating Systems

## Desktop Environments

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ $ sudo reboot now
Your co-processor will require an Internet connection for this process to work correctly.
:::

For installation on any other co-processors, we recommend reading the {ref}`advanced command line documentation <docs/advanced-installation/sw_install/advanced-cmd:Advanced Command Line Usage>`.
For installation on any other co-processors, we recommend reading the {ref}`advanced command line documentation <docs/advanced-installation/other-operating-systems/advanced-cmd:Advanced Command Line Usage>`.

## Updating PhotonVision

Expand Down
2 changes: 2 additions & 0 deletions docs/source/docs/camera-specific-configuration/index.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
# Camera-Specifc Configuration

Do you have an Arducam or Pi Camera Module? This section contains information on how to configure these cameras for use with PhotonVision. If not, you may skip to {ref}`docs/getting-started/camera-matching:Camera Matching`.

```{toctree}
:maxdepth: 2

Expand Down
23 changes: 23 additions & 0 deletions docs/source/docs/getting-started/configuration.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Configuration

## Settings to configure

### Team Number

In order for PhotonVision to connect to NetworkTables it needs to know your team number. You can configure this in the Settings page.

```{image} images/editTeamNumber.png
:align: center
```

### Camera Nickname

You **must** set the nickname of your cameras in PhotonVision to ensure that every camera has a unique name. This is how you will identify cameras in robot code. The camera can be nicknamed using the edit button next to the camera name in the upper right of the Dashboard page.

```{image} images/editCameraName.png
:align: center
```

## Configure Pipelines

After you set up your cameras, you should follow the guides at {ref}`docs/pipelines/about-pipelines:About Pipelines` to configure the vision processing pipelines you want to use.
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Common Hardware Setups
# Hardware Setups

PhotonVision requires dedicated hardware, above and beyond a roboRIO. This page lists hardware that is frequently used with PhotonVision.

Expand Down Expand Up @@ -26,9 +26,11 @@ Industrial grade SD cards from major manufacturers are recommended for robotics
Innomaker and Arducam are common manufacturers of hardware designed specifically for vision processing.

- AprilTag Detection

- OV9281

- Object Detection

- OV9782

- Driver Camera
Expand All @@ -43,4 +45,4 @@ Feel free to get started with any color webcam you have sitting around.
- Pololu S13V30F5 Regulator
- Redux Robotics Zinc-V Regulator

See {ref}`(Selecting Hardware)<docs/hardware/selecting-hardware:Selecting Hardware>` for info on why these are recommended.
For PhotonVision support on other hardware not listed above, refer to the {ref}`(Other Hardware)<docs/hardware/other-hardware:Other Hardware>` page for recommended specs.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -1,14 +1,12 @@
# Quick Install
# Installation

## Install the latest image of photonvision for your coprocessor
## Install the latest image of PhotonVision for your coprocessor

- For the supported coprocessors
- RPI 3,4,5
- Orange Pi 5
- Limelight

For installing on non-supported devices {ref}`see. <docs/advanced-installation/sw_install/index:Software Installation>`

[Download the latest preconfigured image of photonvision for your coprocessor](https://github.com/PhotonVision/photonvision/releases/latest)

| Coprocessor | Image filename | Jar |
Expand All @@ -31,3 +29,5 @@ Unless otherwise noted in release notes or if updating from the prior years vers
:::{note}
Limelight 2, 2+, and 3 will need a [custom hardware config file](https://github.com/PhotonVision/photonvision/tree/main/docs/source/docs/advanced-installation/sw_install/files) for lighting to work. Currently only limelight 2 and 2+ files are available.
:::

For installation on other coprocessors, refer to the {ref}`docs/advanced-installation/index:Advanced Installation` page.
6 changes: 3 additions & 3 deletions docs/source/docs/hardware/index.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# Hardware Selection
# Hardware

```{toctree}
:maxdepth: 2

selecting-hardware
customhardware
other-hardware
custom-hardware
```
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Selecting Hardware
# Other Hardware

:::{note}
See the {ref}`quick start guide<docs/quick-start/common-setups:Common Hardware Setups>`, for latest, specific recommendations on hardware to use for PhotonVision.
See the {ref}`quick start guide<docs/getting-started/hardware-setups:Hardware Setups>`, for latest, specific recommendations on hardware to use for PhotonVision.
:::

In order to use PhotonVision, you need a coprocessor and a camera. This page discusses the specifics of why that hardware is recommended.
Expand Down Expand Up @@ -51,7 +51,6 @@ Better storage space and read/write speed mostly matter if image capture is used

Industrial-grade SD cards are recommended for their stability under shock, vibration, variable voltage, and power-off. Raspberry Pi and Orange Pi coprocessors are generally robust against robot power interruptions, teams have anecdotally reported that Sandisk industrial SD cards reduce the chances of an unexpected settings or log file corruption on shutdown.


## Choosing a Camera

PhotonVision relies on [CSCore](https://github.com/wpilibsuite/allwpilib/tree/main/cscore) to detect and process cameras, so camera support is determined based off compatibility with CScore along with native support for the camera within your OS (ex. [V4L compatibility](https://en.wikipedia.org/wiki/Video4Linux)).
Expand All @@ -67,7 +66,6 @@ PhotonVision attempts to support most USB Cameras. Exceptions include:

Use caution when using multiple identical cameras, as only the physical USB port they are plugged into can differentiate them. PhotonVision provides a "strict matching" setting which can reduce errors related to identical cameras. Arducam has a [tool that allows for identical cameras to be renamed](https://docs.arducam.com/UVC-Camera/Serial-Number-Tool-Guide/) by their physical location or purpose.


### Cameras Attributes

For colored shape detection, any non-fisheye camera supported by PhotonVision will work.
Expand Down
13 changes: 0 additions & 13 deletions docs/source/docs/quick-start/index.md

This file was deleted.

57 changes: 0 additions & 57 deletions docs/source/docs/quick-start/quick-configure.md

This file was deleted.

2 changes: 1 addition & 1 deletion docs/source/docs/simulation/simulation-java.md
Original file line number Diff line number Diff line change
Expand Up @@ -244,7 +244,7 @@ A `PhotonCameraSim` can also draw and publish generated camera frames to a MJPEG
cameraSim.enableDrawWireframe(true);
```

These streams follow the port order mentioned in {ref}`docs/quick-start/networking:Camera Stream Ports`. For example, a single simulated camera will have its raw stream at `localhost:1181` and processed stream at `localhost:1182`, which can also be found in the CameraServer tab of Shuffleboard like a normal camera stream.
These streams follow the port order mentioned in {ref}`docs/getting-started/networking:Camera Stream Ports`. For example, a single simulated camera will have its raw stream at `localhost:1181` and processed stream at `localhost:1182`, which can also be found in the CameraServer tab of Shuffleboard like a normal camera stream.

:::{figure} images/SimExampleFrame.png
_A frame from the processed stream of a simulated camera viewing some 2023 AprilTags with the field wireframe enabled_
Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
# Networking Troubleshooting

Before reading further, ensure that you follow all the recommendations {ref}`in our networking section <docs/quick-start/networking:Physical Networking>`. You should follow these guidelines in order for PhotonVision to work properly; other networking setups are not officially supported.
Before reading further, ensure that you follow all the recommendations {ref}`in our networking section <docs/getting-started/networking:Physical Networking>`. You should follow these guidelines in order for PhotonVision to work properly; other networking setups are not officially supported.

## Checklist

A few issues make up the majority of support requests. Run through this checklist quickly to catch some common mistakes.

- Is your camera connected to the robot's radio through a {ref}`network switch <docs/quick-start/networking:Physical Networking>`?
- Is your camera connected to the robot's radio through a {ref}`network switch <docs/getting-started/networking:Physical Networking>`?
- Ethernet straight from a laptop to a coprocessor will not work (most likely), due to the unreliability of link-local connections.
- Even if there's a switch between your laptop and coprocessor, you'll still want a radio or router in the loop somehow.
- The FRC radio is the _only_ router we will officially support due to the innumerable variations between routers.
Expand Down
21 changes: 17 additions & 4 deletions docs/source/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ Welcome to the official documentation of PhotonVision! PhotonVision is the free,
.. grid:: 2

.. grid-item-card:: Quick Start
:link: docs/quick-start/index
:link: docs/getting-started/hardware-setups
:link-type: doc

Quick start to using Photonvision.
Expand Down Expand Up @@ -88,10 +88,14 @@ PhotonVision is licensed under the [GNU GPL v3](https://www.gnu.org/licenses/gpl
:maxdepth: 0

docs/description
docs/quick-start/index
docs/hardware/index
docs/advanced-installation/index
docs/getting-started/hardware-setups
docs/getting-started/installation
docs/getting-started/wiring
docs/getting-started/networking
docs/camera-specific-configuration/index
docs/getting-started/camera-matching
docs/getting-started/camera-calibration
docs/getting-started/configuration
```

```{toctree}
Expand All @@ -118,6 +122,15 @@ docs/integration/index
docs/examples/index
```

```{toctree}
:caption: Advanced Setup
:hidden: true
:maxdepth: 0

docs/hardware/index
docs/advanced-installation/index
```

```{toctree}
:caption: Additional Resources
:hidden: true
Expand Down
Loading