Skip to content

Commit eb05669

Browse files
authored
Merge pull request #340 from acharraggi/update-esd-page
Update Alt text for the ESD mitigation page. Update pages to mention possible ESD on USB 2.0 ports with webcams, use USB 3.0 port instead.
2 parents 09c32c1 + 2410344 commit eb05669

File tree

13 files changed

+289
-116
lines changed

13 files changed

+289
-116
lines changed

docs/source/apriltag/vision_portal/visionportal_webcams/visionportal-webcams.rst

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,25 +6,32 @@ This is a short list of common webcams that are known to work with the
66
and the
77
:ref:`FTC Camera Controls <apriltag/vision_portal/visionportal_camera_controls/visionportal-camera-controls:visionportal camera controls>`.
88

9-
VisionPortal is a comprehensive new interface for FTC vision processing,
10-
including AprilTag and TensorFlow Object Detection (TFOD).
9+
VisionPortal is a comprehensive interface for FTC vision processing.
10+
Example use cases for a webcam are:
11+
12+
- :doc:`detecting <../../../apriltag/understanding_apriltag_detection_values/understanding-apriltag-detection-values>` an AprilTag,
13+
- determining where the robot is :doc:`located <../../../apriltag/vision_portal/apriltag_localization/apriltag-localization>` on the field,
14+
- using OpenCV to :doc:`detect colors or shapes <../../../color_processing/index>` of game elements.
1115

1216
Many more webcams can work with the FTC VisionPortal; this is a short
1317
list of models with built-in calibrations suitable for AprilTag
1418
:ref:`pose estimation <apriltag/vision_portal/apriltag_pose/apriltag-pose:aprilTag pose>`.
1519

20+
.. _logitech_c270_label:
21+
1622
Logitech C270
1723
-------------
1824

1925
.. figure:: images/010-C270.png
2026
:align: center
2127
:width: 55%
28+
:class: no-scaled-link
2229
:alt: C270 Camera
2330

2431
Logitech C270 Camera
2532

2633
The `Logitech C270 <https://www.logitech.com/en-us/products/webcams/c270-hd-webcam.960-000694.html>`__
27-
is available at the FIRST Storefront for new FTC teams, and at many
34+
is available at the *FIRST* Storefront for new FTC teams, and at many
2835
online retailers.
2936

3037
**FTC Hot Take:**
@@ -45,12 +52,15 @@ The FTC SDK provides **built-in calibration values** for the FTC
4552
VisionPortal default resolution of 640x480, and no others. Learn more at
4653
:ref:`AprilTag Camera Calibration <apriltag/vision_portal/apriltag_camera_calibration/apriltag-camera-calibration:apriltag camera calibration>`.
4754

55+
.. _logitech_c310_label:
56+
4857
Logitech C310
4958
-------------
5059

5160
.. figure:: images/030-C310.png
5261
:align: center
5362
:width: 55%
63+
:class: no-scaled-link
5464
:alt: C310 Camera
5565

5666
Logitech C310 Camera
@@ -77,12 +87,15 @@ The FTC SDK provides **built-in calibration values** for the FTC
7787
VisionPortal default resolution of 640x480, and for 640x360. Learn more at
7888
:ref:`AprilTag Camera Calibration <apriltag/vision_portal/apriltag_camera_calibration/apriltag-camera-calibration:apriltag camera calibration>`.
7989

90+
.. _logitech_c920_label:
91+
8092
Logitech C920
8193
-------------
8294

8395
.. figure:: images/020-C920.png
8496
:align: center
8597
:width: 55%
98+
:class: no-scaled-link
8699
:alt: C920 Camera
87100

88101
Logitech C920 Camera
@@ -119,6 +132,7 @@ Microsoft LifeCam HD-3000 v1/v2
119132
.. figure:: images/040-LifeCam-3000.png
120133
:align: center
121134
:width: 55%
135+
:class: no-scaled-link
122136
:alt: LifeCam-3000 Camera
123137

124138
Microsoft LifeCam HD-3000 v1/v2
@@ -184,6 +198,7 @@ Arducam Global Shutter 120 FPS
184198
.. figure:: images/050-Arducam.png
185199
:align: center
186200
:width: 55%
201+
:class: no-scaled-link
187202
:alt: Arducam GS 120 Camera
188203

189204
Arducam GS 120 Camera

docs/source/control_hard_compon/rc_components/hub/ports/ch-ports.rst

Lines changed: 45 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -3,39 +3,63 @@ Control Hub Ports
33

44
.. figure:: images/CH-HUB.png
55
:align: center
6-
:alt: Control Hub
6+
:alt: REV Control Hub
77

8-
REV Control Hub (REV-31-1595)
8+
Part number REV-31-1595
99

1010
.. include:: std-ports.rst
1111

1212

1313
.. figure:: images/CH-HUB-FRONT.png
1414
:align: center
15-
:alt: Control Hub Ports
15+
:alt: The ports from left to right are: USB 2.0, USB 3.0, USB C, USB Mini (below the USB C port), HDMI, and Micro SD.
1616

1717
Control Hub Front Ports
1818

19+
USB Ports
20+
---------
1921

20-
USB-A Ports
21-
-----------
22+
Universal Serial Bus (USB) is an industry standard that allows data exchange and delivery of power between many types of electronics.
23+
The control hub has four USB ports described below.
2224

23-
A Control Hub has both a USB 2.0 and 3.0 Type-A female port. This is primarily
24-
used for connecting UVC Cameras in acccordance with ``<RE14>``.
25+
USB 2.0 and USB 3.0 refer to the USB specifications that relate to data exchange rate and power delivery.
2526

26-
USB-B Port
27-
----------
27+
USB Type-A and USB-C and USB Mini-B refer to the type of connector.
2828

29-
On a Control Hub, the USB-mini-B port is used only to communicate directly to
30-
the I/O system. In this case, it is only for the purpose of uploading firmware
31-
to the device.
29+
- USB Type-A is a larger rectangular connector.
30+
- USB-C is a smaller oval connector.
31+
- USB Mini-B is a smaller rectangular connector with a beveled edge.
32+
33+
USB 2.0
34+
^^^^^^^
35+
36+
This is a female USB Type-A port that implements USB 2.0 and can be used for connecting USB devices as allowed for in the Competition Manual.
37+
38+
.. warning:: An electrostatic discharge (ESD) event on the USB 2.0 port on the Control Hub can cause Wi-Fi disconnects.
39+
40+
The REV Control Hub has a
41+
`known ESD issue <https://docs.revrobotics.com/duo-control/troubleshooting-the-control-system/troubleshooting-the-control-system#esd-mitigation-techniques>`_
42+
with devices plugged into the USB 2.0 port.
43+
Using the USB 2.0 Port may cause ESD to affect your Control Hub's Wi-Fi Chip (causing Wi-Fi disconnects with the driver hub).
44+
Ensure that you plug USB devices, such as a Camera, into the USB 3.0 Port on your Control Hub.
45+
46+
USB 3.0
47+
^^^^^^^
3248

33-
USB-C Ports
34-
-----------
49+
This is a female USB Type-A port that implements USB 3.0 and is primarily used for connecting USB video device class (UVC) cameras (webcams).
3550

36-
A Control Hub has a USB-C port. This is primarily used for connecting to a
37-
laptop for loading the SDK but can also be used with a UVC Camera in
38-
acccordance with ``<RE14>``.
51+
USB C
52+
^^^^^
53+
54+
A Control Hub has a female USB-C port that implements USB 2.0. This is primarily used for connecting to a
55+
laptop for loading the SDK but can also be used with a UVC Camera.
56+
57+
MINI USB
58+
^^^^^^^^
59+
60+
This is a female USB Mini-B port that implements USB 2.0. It is used only to communicate directly to
61+
the I/O system. In this case, it is only for the purpose of uploading firmware
62+
to the device.
3963

4064
HDMI
4165
-----
@@ -44,3 +68,7 @@ The Control Hub lacks a display of its own even though it is a fully-fledged
4468
Android device. The Control Hub has an HDMI port that provides video output for
4569
the device; this HDMI port can be used to connect to an external display.
4670

71+
MICRO SD
72+
--------
73+
74+
This is a port for a Micro SD memory card. It is not normally used.
271 KB
Loading

docs/source/control_hard_compon/rc_components/hub/ports/std-ports.rst

Lines changed: 19 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,19 @@ Battery Ports
55
**Never** connect a battery charger directly to the battery port. This will
66
void your warranty and fry your hub.
77

8-
These `XT-30 <https://docs.revrobotics.com/duo-control/control-system-overview/cables-and-connectors/xt-30-power-cable>`_
8+
The yellow `XT30 <https://docs.revrobotics.com/duo-control/control-system-overview/cables-and-connectors/xt-30-power-cable>`_
99
connectors are used to power your REV Hub as well as all the devices connected to it.
10-
As the connector is known for its fragility it is highly recommended you be careful when using it.
11-
It is also recommended that you expand your connector prongs periodically. For more information on this
12-
process please watch this `video <https://www.youtube.com/watch?v=UYXTiSeVmB0>`_. While this video features an XT60, a larger version
13-
of the XT-30, and a drone the advice is much the same. This port may also be used
14-
to connect a grounding strap. For more information on legal grounding straps see ``<RE15>``,
15-
:ref:`Game Manual Part 1 <manuals/game_manuals/game_manuals:game manuals>`. For more information on this port please see
10+
For more information on these ports please see the
1611
`REV Documentation <https://docs.revrobotics.com/duo-control/control-system-overview/control-hub-basics#input-power-specifications>`_.
12+
One of these ports may also be used to connect a grounding strap. For more information on legal grounding straps see
13+
the Power Distribution section of the `Competition Manual <https://ftc-resources.firstinspires.org/file/ftc/game/manual>`_.
14+
15+
As the XT30 connector is known for its fragility it is highly recommended you be careful when using it.
16+
It is also recommended that you expand your connector prongs periodically.
17+
REV has a `troubleshooting article <https://docs.revrobotics.com/duo-control/troubleshooting-the-control-system/control-hub-troubleshooting#xt30-pins-are-compressed>`_
18+
specific to expanding the pins on the XT30 connector.
19+
For more information on this process please watch this `YouTube video <https://www.youtube.com/watch?v=UYXTiSeVmB0>`_.
20+
While this video features an XT60 connector, a larger version of the XT30, and a drone, the advice is much the same.
1721

1822
Motor Ports
1923
-------------
@@ -45,19 +49,20 @@ Servo Ports
4549

4650
These 0.1” Header pins are used to power and control your servos. There are 6 ports on each hub and they are numbered from 0-5.
4751
Be mindful of matching the polarity of the device attached to this port as it is possible to flip the connector.
48-
For increasing the power supplied to these servos it is possible to use a Servo Power Module that is in compliance with
49-
``<RE05>``, :ref:`Game Manual Part 1 <manuals/game_manuals/game_manuals:game manuals>`. For more information on this port
52+
For increasing the power supplied to these servos it is possible to use a Servo Power Module.
53+
See the Motors & Actuators section of the `Competition Manual <https://ftc-resources.firstinspires.org/file/ftc/game/manual>`_ for approved servo power devices.
54+
For more information on this port
5055
please see `REV Servo Port Documentation <https://docs.revrobotics.com/duo-control/control-system-overview/control-hub-basics#servo-port-specifications>`_.
5156

5257
+5V Power Ports
5358
---------------
5459

5560
These 0.1” Header pins are used to power and control various appliances. There
5661
are two ports on each hub. These connectors can be used for a limited range of
57-
applications in FIRST Tech Challenge, such as powering powered USB hubs. For more
62+
applications in *FIRST* Tech Challenge, such as powering powered USB hubs. For more
5863
information on this port please see
5964
`REV +5V Power Port Documentation <https://docs.revrobotics.com/duo-control/control-system-overview/control-hub-basics#id-5v-power-port-specifications>`_ and
60-
:ref:`Game Manual Part 1 <manuals/game_manuals/game_manuals:game manuals>`.
65+
the Power Distribution section of the `Competition Manual <https://ftc-resources.firstinspires.org/file/ftc/game/manual>`_.
6166

6267
Analog Ports
6368
--------------
@@ -87,8 +92,8 @@ I2C Ports
8792

8893
These 4-pin `JST-PH <https://docs.revrobotics.com/duo-control/control-system-overview/cables-and-connectors/jst-ph-sensors-and-rs485>`_
8994
style connectors are used for connecting I2C sensors. Each port is a single I2C bus where multiple sensors can be
90-
attached. Using sensors with identical addresses on the same bus can cause problems. The range of I2C sensors that can be connected is limited
91-
by :ref:`Game Manual Part 1 <manuals/game_manuals/game_manuals:game manuals>`. While it is possible to use a large range of
95+
attached. Using sensors with identical addresses on the same bus can cause problems.
96+
While it is possible to use a large range of
9297
sensors, the vast majority of I2C sensors do not have drivers built into the SDK. It is possible to use community drivers
9398
or create your own. For more information on this port please see
9499
`REV I2C Port Documentation <https://docs.revrobotics.com/duo-control/control-system-overview/control-hub-basics#i2c-port-specifications>`_.
@@ -106,5 +111,5 @@ UART
106111
-----
107112

108113
This connector is used only for **Developer** (non end user) debugging. Its use is not supported
109-
by FIRST.
114+
by *FIRST*.
110115

Lines changed: 24 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,56 +1,65 @@
11
UVC Webcam
22
===========
33

4+
A webcam is a device that provides visual images of the surrounding environment.
5+
UVC, or USB Video Class, is a standard that allows USB devices, like webcams and digital cameras, to stream video to computers without needing special drivers.
6+
For use as part of *FIRST* Tech Challenge teams must use a commercially available off-the-shelf (COTS)
7+
USB Video Class `(UVC) <https://www.usb.org/document-library/video-class-v15-document-set>`_
8+
compatible camera. This device can be connected directly to
9+
the REV Control Hub or to the Robot Control system via a USB hub.
10+
411
.. grid:: 1 2 2 2
512
:gutter: 2
613

714
.. grid-item-card::
815
:class-header: sd-bg-dark font-weight-bold sd-text-white
916
:class-body: sd-text-left body
1017

11-
Logitech C270
18+
Budget Webcam
1219

1320
^^^
1421

1522
.. figure:: images/C270.jpg
1623
:align: center
1724
:width: 50 %
18-
:alt: C270
25+
:class: no-scaled-link
26+
:alt: Example budget UVC webcam
1927

2028
+++
2129

22-
Logitech C270
30+
:ref:`logitech_c270_label`
2331

2432
.. grid-item-card::
2533
:class-header: sd-bg-dark font-weight-bold sd-text-white
2634
:class-body: sd-text-left body
2735

28-
Logitech C920
36+
Mid-range Webcam
2937

3038
^^^
3139

3240
.. figure:: images/C920.jpg
3341
:align: center
3442
:width: 50 %
35-
:alt: C920
43+
:class: no-scaled-link
44+
:alt: Example mid-range UVC webcam
3645

3746
+++
3847

39-
Logitech C920
48+
:ref:`logitech_c920_label`
49+
50+
Webcams are intended to be used in computer vision related tasks.
51+
Example use cases for a webcam are:
4052

41-
A webcam is a device that provides visual images of the surrounding
42-
environment. For use as part of *FIRST* Tech Challenge teams must use a COTS
43-
`UVC <https://www.usb.org/document-library/video-class-v15-document-set>`_
44-
(USB Video Class) Compatible Camera. This device can be connected directly to
45-
the REV Control Hub or to the Robot Control system via a powered USB hub
46-
``<RE14>``. This device is intended to be used in vision related tasks. An
47-
example use case of a webcam is reading the state of the barcode after
48-
randomization, a vision task in *Freight Frenzy*, 2021-2022.
53+
- :doc:`detecting <../../../apriltag/understanding_apriltag_detection_values/understanding-apriltag-detection-values>` an AprilTag,
54+
- determining where the robot is :doc:`located <../../../apriltag/vision_portal/apriltag_localization/apriltag-localization>` on the field,
55+
- using OpenCV to :doc:`detect colors or shapes <../../../color_processing/index>` of game elements.
4956

5057
Additional Resources
5158
--------------------
5259

60+
- A :doc:`list of webcams <../../../apriltag/vision_portal/visionportal_webcams/visionportal-webcams>` known to be compatible with VisionPortal.
5361
- :ref:`Connecting UVC Camera via Powered USB Hub <hardware_and_software_configuration/configuring/configuring_uvc_camera/configuring-uvc-camera:configuring an external uvc camera and a powered usb hub>`
5462
- :ref:`Connecting UVC Camera directly to REV Control Hub <hardware_and_software_configuration/configuring/configuring_external_webcam/configuring-external-webcam:configuring an external webcam with a control hub>`
55-
- :ref:`USB Port Overview <control_hard_compon/rc_components/hub/ports/ch-ports:USB-A Ports>`
63+
- :ref:`USB Port Overview <control_hard_compon/rc_components/hub/ports/ch-ports:USB Ports>`
5664
- :ref:`Vision in FIRST Tech Challenge <programming_resources/index:vision programming>`
65+

0 commit comments

Comments
 (0)