1. GMSL2-USB 3.0 Conversion Kit User Manual#

This manual is for users of TIER IV’s GMSL2-USB3.0 Conversion Kit. If you have any questions or issues that are not resolved by this manual, please contact the dealer you purchased from.

usbkit

1.1. Release Note#

Date

Description

Feb. 7, 2023.

Publication of the first edition

1.2. Introduction#

The GMSL2-USB3.0 Conversion Kit allows TIER IV Automotive HDR Camera C1/C2 (hereinafter referred to as C1 and C2 camera) cameras to be connected to a USB Type-C (3.0) port and captures video through UVC(USB Video Class). You can use C1 and C2 cameras in applications on a computer that does not have the GMSL interface.

1.3. Interface description#

product_outline

1.3.1. Camera Interface#

The connection interface between the camera and the kit is a 50-ohm coaxial cable with a Fakra plug (C code Blue) installed.

1.3.2. USB Type-C Interface#

The connection interface between the kit and the host is a USB Type-C support up to USB 3.0 Super Speed. Also, you can use industry-standard screw-locking or non-screw-locking USB Type-C cables.

1.3.3. IO Port (embedded RITS 4P connector)#

This is for the FSYNC signal(frame sync.) and External DC-IN power supply. This port uses the 4-P RITS Board Mount Headers(TE Connectivity 156994-4). The part number of the corresponding Plug connector is x-1473562-4. If you need to use this port, please prepare the cable yourself using the above plug.

Each pin is as follows:

ext_io_port

Port

Name

Description

1

External power supply

Supply voltage range: 9V ~ 12V( for C1/C2 Camera), Supply current required: > 1A. Note: This is an alternative option to supply power to camera externally when USB host can not provide enough power.

2

GND

3

GND

4

External FSYNC signal input (only for camera Trigger mode)

FSYNC can support with external output driving type for Push-pull or Open-Drain.

If FSYNC pair with external output driving of Push-Pull type: The input signal voltate: High level: 1.8V ~ 24V, and Low Level: < 0.2V.

If FSYNC pair with external output driving of Open-Drain type: Because the FSYNC internal has build-in a Pull-Up register, so external open-drain dricing do not need pull-up. The require of external device driving: The driving Low sink current : > 1mA, and Low Level: < 0.2V.

FSYNC Frequency: Depend on camera module frame rate support, such as <=30Hz for C1 camera, Fixed 10Hz C2 Camera.

FSYNC signal high level pulse width(T-pulse): 1ms < T-pulse < 30ms

1.3.4. Reset Button#

Push-and-release button for conversion kit reset.

1.3.5. Operation Mode Switch#

A slide switch for selecting the operation mode is provided. Slide it to the left for normal operation and to the right for firmware updates.

mode_sw


1.4. How to use#

Caution

Upon purchasing the kit, it will be set to C1 Free-run mode(freerun, 30fps).

To use C2 camera with this kit, you need to update the firmware. Please refer to the Change the camera mode for the details.

Also, with the C2 camera, because of the bandwidth limitation of USB3.0, the maximum frame rate is limited to 10fps and the readout speed from the image sensor is slower than the case of the GMSL connection. This may cause more rolling shutter effects.

Upon purchasing the kit, it will be set to C1 Free-run mode(freerun, 30fps). If you need to use it in this mode, please follow the instructions for Free-run mode. If you require a different mode, please refer to the Firmware List and Change the Camera Mode.

1.4.1. Firmware List#

Camera mode

Description

Image file

C1 Free-run mode (default mode)

For C1 camera, Free-run, 10,20,30FPS

C1_Free-run_v1.10a.img

C1 Hardware Trigger mode

For C1 camera, fsync trigger from IO port

C1_Trigger_v1.00b.img

C2 Free-run mode

For C2 Camera, Freerun, 10FPS

C2_Free-run_v1.00c.img

C2 Hardware Trigger mode

For C2 Camera, fsync trigger from IO port

C2_Trigger_v1.00d.img

Note

These image files are included in the CX3Update package.

1.4.2. Free-run mode#

Connect as shown in the following figure and instructions: connect

Please connect the camera to the conversion kit the Fakra cable, and then connect the host using a USB cable. If the order is reversed (connecting the host first with the USB cable before connecting the camera), you need to press the reset button. This Kit will be recognized as a UVC camera device when connected via USB. No driver installation is required to use the device as a UVC camera. After connecting, select “GMSL2-USB3.0 Conversion Kit” from the camera using the application and start using it.

If the camera device cannot be found, or if the image is not normal, please check the Trouble Shooting section for more information.

1.4.3. Trigger mode#

Connect the RITS connector with a cable and transmit signals in the same way as in Free-run mode. Please refer to the section on the IO Port embedded RITS 4P connector for the connector shape and the signals to be transmitted. Also, be aware that you must change the mode beforehand by updating the firmware.

connect

For C1 cameras, the exposure will start when the signal is transmitted and stops after the exposure time. For C2 cameras, the readout will start when the signal is transmitted and the exposure will starts before the time of exposure setting.

Regarding the use of the camera, other than the sending of the shutter timing, it is the same as the Free-run mode.

1.5. Usage examples in applications#

1.5.1. GStreamer#

This section describes video acquisition with GStreamer. The steps described in this item are for Ubuntu20.04.

First, install GStreamer and v4l-utils with the following command. If they are already installed, this item is not necessary to execute.

$ sudo apt install libgstreamer1.0-0 gstreamer1.0-tools
$ sudo apt install v4l-utils

Next, check the device name in the environment to be used. The following command displays the connected devices. If the device name is already known, this item is not necessary to execute.

v4l2-ctl  --list-devices

Below is an example of the output.

Integrated IR Camera: Integrate (usb-0000:00:14.0-12):
	/dev/video2
	/dev/video3

GMSL2-USB3.0 Conversion Kit (usb-0000:00:14.0-2):
	/dev/video4
	/dev/video5

Integrated Camera: Integrated C (usb-0000:00:14.0-8):
	/dev/video0
	/dev/video1

As the results vary depending on the environment used, please look for the item displayed as “GMSL2-USB3.0 Conversion Kit” and the device, “/dev/video4”, on top of it. Then, run GStreamer with the following command.

gst-launch-1.0 v4l2src io-mode=0 device=/dev/video4 do-timestamp=true ! 'video/x-raw, width=1920, height=1280, framerate=30/1, format=UYVY' ! videoscale ! xvimagesink sync=false

Additionally, the framerate can be set in 3 patterns at 10/20/30 fps during this time. To set the framerate to 10 fps, execute it as follows.

gst-launch-1.0 v4l2src io-mode=0 device=/dev/video4 do-timestamp=true ! 'video/x-raw, width=1920, height=1280, framerate=10/1, format=UYVY' ! videoscale ! xvimagesink sync=false

1.5.2. ROS2#

We will explain the usage of two types of nodes, the “usb_cam” node and the “v4l2 camera” node that target the ROS2 Galactic distribution. But if the node supports the UVC format with UYVY color, video can be acquired. Please install ROS2 Galactic in advance by referring to the official website or others.

1.5.2.1. usb_cam node#

Please clone and build the usb_cam node from the following repository, and refer to the README of the repository for the build instructions.

usb_cam node repository: https://github.com/tier4/usb_cam

Please execute with the following command after the build is completed.

ros2 run usb_cam usb_cam_node_exe --ros-args \
  -p video_device:=/dev/video0 \
  -p framerate:=30.0 \
  -p pixel_format:=uyvy \
  -p image_width:=1920 \
  -p image_height:=1280

1.5.2.2. v4l2_camera#

Please clone and build the v4l2_camera node from the following repository, and refer to the README of the repository for the build instructions.

v4l2_camera node repository: https://github.com/tier4/ros2_v4l2_camera

Please execute with the following command after the build is completed.

ros2 run v4l2_camera v4l2_camera_node --ros-args \
  -p video_device:=/dev/video0 \
  -p pixel_format:=UYVY \
  -p image_size:=[1920,1280]

1.6. Troubleshooting#

If the image cannot be obtained, please refer to the following for reference. If you cannot resolve the problem, please contact the purchasing agent or TIER IV support.

1.6.1. If the device is not found in the application#

  • Please check if the ModeSwitch is sliding to the left.

  • Please press the Reset button and check if the device is displayed.

  • Please change the USB cable connection destination port and check if the device is displayed.

  • Please make sure the USB cable is compatible with USB 3.0 Super Speed or higher. There is also a possibility of cable compatibility issues, so if the problem is not resolved with a cable that meets the specifications, please try another cable.

    Hint

    Please check dmesg log in case of you connect to the Linux system. You may see the following log in case you successfully connect the kit with USB 3.0 Super Speed.

    [  xxx.xxxxxx] usb 2-3.1: new SuperSpeed Gen 1 USB device number 4 using tegra-xusb
    

    Instead, you may see the following log in case you connect with a USB high-speed. In this case, the GMSL2-USB3.0 conversion kit is not recognized as UVC video.

    [  xxx.xxxxxx] usb 1-1: new high-speed USB device number 6 using tegra-xusb
    

    See also

    For Windows, you can check the link speed by using some tools like USB Device Tree Viewer.

    Verifying USB connection speed (USB 3 or USB 2?)

1.6.2. If the image is not displayed even after selecting the device#

  • Please press the Reset button and try displaying the image.

  • Please make sure the Fakra cable is properly connected.

  • Please check if the application you are using is compatible with the UYVY color format.

  • Please confirm that the firmware written is compatible with the currently connected camera.

  • Please confirm that the written firmware is in the expected mode. It will operate in freerun in Free-run mode, but in Trigger mode, the image will not be captured unless the specified signal is input to the IO port.

1.7. Change the camera mode#

Warning

This item rewrites the kit firmware. Do not perform this procedure if you wish to operate in the current mode.

You can change the operation mode of the camera by this procedure. Once changed, the mode will not return even if the power is turned off. To return to the original state, the firmware must be rewritten again.

This procedure requires a Windows environment. The following steps will be explained using the setup procedure for Windows 10.

1.7.1. Cypress driver installation#

Note

  • Driver installation is required only for first time

  • During the installation of the software, installation of .NET framework may be required. if required, please install it.

Please download the driver file from the below link.

CX3Update

1.7.1.1. Step 1: FW update mode selection#

Mode switch to the right side for “FW update mode”

mode_sw

1.7.1.2. Step 2: Connect the device#

Please connect the kit by USB, and then open Device Manager to confirm that there is a device named “WestBridge” displayed.

cx3_dev_1

1.7.1.3. Step 3: Select “Update Driver(P)”#

Please select WestBridge, right-click and select “Update Driver(P)”. cx3_dev_1

1.7.1.4. Step 4: Browse the driver in a computer#

Select “Browse my computer for driver software”. Then select the driver file that corresponds to the operating system you are using. If “The driver has been updated successfully” appears, the installation is complete.

cx3_dev_3 cx3_dev_3 cx3_dev_3 cx3_dev_3

1.7.1.5. Step 5: Reset conversion kit#

Press the Reset button or reset by disconnecting and reconnecting the USB to reset. Then, check that the Cypress FX3 USB BootLoader Device is displayed under Universal Serial Bus controllers. If it is displayed, the preparation is complete.

cx3_dev_3

1.7.2. Write firmware#

1.7.2.1. Step 1: FW update mode selection#

Mode switch to the right side for “FW update mode”

1.7.2.2. Step 2: Connect the device#

Plug-in USB port, and Device manager list shows a new device “Cypress FX3 USB BootLoader”.

firmware_1

1.7.2.3. Step 3: Open a UpdateProgram directory, and start the FW update tool#

Extract a UpdateProgram and Open the Update Program directory. Then, Execute CyControl.exe.

firmware_1

1.7.2.4. Step 4: Select a SPI Flash#

Select a SPI_Flash in the menu(Program > FX3 > SPI_FLASH).

firmware_1

1.7.2.5. Step 5: Select an Image file#

Select the file corresponding to the mode you want to use firmware_1

1.7.2.6. Step 6: Wait for programming to succeed#

Please wait until the display changes from “Programming of SPI_FLASH in Progress…” to “Programming of SPI_FLASH Succeeded.”

Warning

Please do not remove the cable or turn off the power while writing.

firmware_1 firmware_1

1.7.2.7. Step 7: Reset conversion kit#

Slide the ModeSwitch of the USB Conversion kit to the left (Normal Operation) and press the reset switch.

1.7.2.8. Step 8: Check the firmware version#

Please confirm that the “GMSL2-USB3.0 Conversion Kit” is in the “Camera” of the Device Manager. Also, you can confirm that the mode has been changed by checking the properties of the device. The mode change is now complete.

firmware_1 firmware_1

1.8. Reference#