diff --git a/docs/source/docs/quick-start/arducam-cameras.md b/docs/source/docs/camera-specific-configuration/arducam-cameras.md similarity index 100% rename from docs/source/docs/quick-start/arducam-cameras.md rename to docs/source/docs/camera-specific-configuration/arducam-cameras.md diff --git a/docs/source/docs/hardware/images/bootConfigTxt.png b/docs/source/docs/camera-specific-configuration/images/bootConfigTxt.png similarity index 100% rename from docs/source/docs/hardware/images/bootConfigTxt.png rename to docs/source/docs/camera-specific-configuration/images/bootConfigTxt.png diff --git a/docs/source/docs/quick-start/images/setArducamModel.png b/docs/source/docs/camera-specific-configuration/images/setArducamModel.png similarity index 100% rename from docs/source/docs/quick-start/images/setArducamModel.png rename to docs/source/docs/camera-specific-configuration/images/setArducamModel.png diff --git a/docs/source/docs/camera-specific-configuration/index.md b/docs/source/docs/camera-specific-configuration/index.md new file mode 100644 index 0000000000..4881a5720f --- /dev/null +++ b/docs/source/docs/camera-specific-configuration/index.md @@ -0,0 +1,8 @@ +# Camera-Specifc Configuration + +```{toctree} +:maxdepth: 2 + +arducam-cameras +picamconfig +``` diff --git a/docs/source/docs/hardware/picamconfig.md b/docs/source/docs/camera-specific-configuration/picamconfig.md similarity index 99% rename from docs/source/docs/hardware/picamconfig.md rename to docs/source/docs/camera-specific-configuration/picamconfig.md index 1177887fca..1ae2b7d5df 100644 --- a/docs/source/docs/hardware/picamconfig.md +++ b/docs/source/docs/camera-specific-configuration/picamconfig.md @@ -23,6 +23,7 @@ Windows may report "There is a problem with this drive". This should be ignored. Locate `config.txt` in the folder, and open it with your favorite text editor. ```{image} images/bootConfigTxt.png + ``` Within the file, find this block of text: diff --git a/docs/source/docs/hardware/index.md b/docs/source/docs/hardware/index.md index bb4a1a99f7..8e71484cd5 100644 --- a/docs/source/docs/hardware/index.md +++ b/docs/source/docs/hardware/index.md @@ -4,6 +4,5 @@ :maxdepth: 2 selecting-hardware -picamconfig customhardware ``` diff --git a/docs/source/docs/quick-start/camera-matching.md b/docs/source/docs/quick-start/camera-matching.md new file mode 100644 index 0000000000..1a5b6797f0 --- /dev/null +++ b/docs/source/docs/quick-start/camera-matching.md @@ -0,0 +1,41 @@ +# Camera Matching + +## Activating and Deactivating Cameras + +When you first plug in a camera, it will be detected and added to the list of cameras with the "Unassigned" status, as shown below. You can press the "Activate" button to enable PhotonVision to use the camera. + +```{image} images/camera-matching/unassigned-camera.png +:scale: 50% +``` + +If a camera has been activated in the past, it will be listed as "Deactivated" in the camera list. You can press the "Activate" button to enable PhotonVision to use the camera. + +```{image} images/camera-matching/deactivated-camera.png +:scale: 50% +``` + +Once a camera is activated, it will be listed as "Active" in the camera list. You can press the "Deactivate" button to stop PhotonVision from using the camera. + +```{image} images/camera-matching/activated-camera.png +:scale: 50% +``` + +## Deleting Cameras + +If you want to remove a camera from the list, you can press the delete button. This will clear all settings for that particular camera, including the calibration data and any other settings you have configured. It is recommended to make a backup of the camera's settings before deleting it, as this action cannot be undone. + +## Matching Cameras + +When you plug in a camera, PhotonVision will attempt to match it to a previously configured camera based on the physical USB port it is connected to. If you plug another camera into that port, the cameras will have a "Camera Mismatch" status, indicating that the camera is not recognized as the one that was previously configured. + +Additionally, pressing on the Details button will show you the details of the camera mismatch, allowing you to compare the current camera with the previously configured camera. + +```{image} images/camera-matching/camera-mismatch-details.png +:scale: 50% +``` + +```{note} +Camera matching is based on the USB ports on the device. If you unplug a camera and plug it into a different port, PhotonVision will attempt to use settings from the camera that was previously configured in that port, causing unexpected behavior. +``` + +To resolve the camera mismatch, you should ensure each camera is plugged into the same port that you configured it in. diff --git a/docs/source/docs/quick-start/common-setups.md b/docs/source/docs/quick-start/common-setups.md index 590a0c7497..7d6ffaf602 100644 --- a/docs/source/docs/quick-start/common-setups.md +++ b/docs/source/docs/quick-start/common-setups.md @@ -34,7 +34,7 @@ Innomaker and Arducam are common manufacturers of hardware designed specifically - Driver Camera - OV9281 - OV9782 - - Pi Camera Module V1 {ref}`(More setup info)` + - Pi Camera Module V1 {ref}`(More setup info)` Feel free to get started with any color webcam you have sitting around. diff --git a/docs/source/docs/quick-start/images/camera-matching/activated-camera.png b/docs/source/docs/quick-start/images/camera-matching/activated-camera.png new file mode 100644 index 0000000000..c490eb22da Binary files /dev/null and b/docs/source/docs/quick-start/images/camera-matching/activated-camera.png differ diff --git a/docs/source/docs/quick-start/images/camera-matching/camera-mismatch-details.png b/docs/source/docs/quick-start/images/camera-matching/camera-mismatch-details.png new file mode 100644 index 0000000000..10c0e14435 Binary files /dev/null and b/docs/source/docs/quick-start/images/camera-matching/camera-mismatch-details.png differ diff --git a/docs/source/docs/quick-start/images/camera-matching/deactivated-camera.png b/docs/source/docs/quick-start/images/camera-matching/deactivated-camera.png new file mode 100644 index 0000000000..85d750f7ce Binary files /dev/null and b/docs/source/docs/quick-start/images/camera-matching/deactivated-camera.png differ diff --git a/docs/source/docs/quick-start/images/camera-matching/unassigned-camera.png b/docs/source/docs/quick-start/images/camera-matching/unassigned-camera.png new file mode 100644 index 0000000000..a3ec1cbc23 Binary files /dev/null and b/docs/source/docs/quick-start/images/camera-matching/unassigned-camera.png differ diff --git a/docs/source/docs/quick-start/index.md b/docs/source/docs/quick-start/index.md index e9cce5df11..4b9a97e3d9 100644 --- a/docs/source/docs/quick-start/index.md +++ b/docs/source/docs/quick-start/index.md @@ -7,7 +7,7 @@ common-setups quick-install wiring networking -arducam-cameras +camera-matching camera-calibration quick-configure ``` diff --git a/docs/source/docs/troubleshooting/camera-troubleshooting.md b/docs/source/docs/troubleshooting/camera-troubleshooting.md index 6ec73b82f2..955a45671a 100644 --- a/docs/source/docs/troubleshooting/camera-troubleshooting.md +++ b/docs/source/docs/troubleshooting/camera-troubleshooting.md @@ -2,7 +2,7 @@ ## Pi Cameras -If you haven't yet, please refer to {ref}`the Pi CSI Camera Configuration page ` for information on updating {code}`config.txt` for your use case. If you've tried that, and things still aren't working, restart PhotonVision using the restart button in the settings tab, and press tilde (\`) in the web UI once connection is restored. This should show the most recent boot log. +If you haven't yet, please refer to {ref}`the Pi CSI Camera Configuration page ` for information on updating {code}`config.txt` for your use case. If you've tried that, and things still aren't working, restart PhotonVision using the restart button in the settings tab, and press tilde (\`) in the web UI once connection is restored. This should show the most recent boot log. | | Expected output | Bad | | ------------------------------- | ----------------------------------------------------- | ---------------------------------- | @@ -12,7 +12,7 @@ If you haven't yet, please refer to {ref}`the Pi CSI Camera Configuration page < If the driver isn't loaded, you may be using a non-official Pi image, or an image not new enough. Try updating to the most recent image available (one released for 2023) -- if that doesn't resolve the problem, {ref}`contact us` with your settings ZIP file and Pi version/camera version/config.txt file used. -If the camera is not detected, the most likely cause is either a config.txt file incorrectly set-up, or a ribbon cable attached backwards. Review the {ref}`picam configuration page `, and verify the ribbon cable is properly oriented at both ends, and that it is _fully_ inserted into the FFC connector. Then, {ref}`contact us` with your settings ZIP file and Pi version/camera version/config.txt file used. +If the camera is not detected, the most likely cause is either a config.txt file incorrectly set-up, or a ribbon cable attached backwards. Review the {ref}`picam configuration page `, and verify the ribbon cable is properly oriented at both ends, and that it is _fully_ inserted into the FFC connector. Then, {ref}`contact us` with your settings ZIP file and Pi version/camera version/config.txt file used. ## USB cameras @@ -27,7 +27,7 @@ USB cameras supported by CSCore require no libcamera driver initialization to wo On Linux devices (including Raspberry Pi), PhotonVision uses WPILib's CSCore to interact with video devices, which internally uses Video4Linux (v4l2). CSCore, and therefore Photon, requires that cameras attached have good v4l drivers for proper functionality. These should be built into the Linux kernel, and do not need to be installed manually. Valid picamera setup (from /boot/config.txt) can also be determined using these steps. The list-devices command will show all valid video devices detected, and list-formats the list of "video modes" each camera can be in. -- For picams: edit the config.txt file as described in the {ref}`picam configuration page ` +- For picams: edit the config.txt file as described in the {ref}`picam configuration page ` - SSH into your Pi: {code}`ssh pi@photonvision.local` and enter the username "pi" & password "raspberry" - run {code}`v4l2-ctl --list-devices` and {code}`v4l2-ctl --list-formats` diff --git a/docs/source/index.md b/docs/source/index.md index a8bbdc6de2..6a6d01a4b5 100644 --- a/docs/source/index.md +++ b/docs/source/index.md @@ -91,6 +91,7 @@ docs/description docs/quick-start/index docs/hardware/index docs/advanced-installation/index +docs/camera-specific-configuration/index ``` ```{toctree}