How to integrate e-con Systems’ GMSL cameras with different host processors

GMSL cameras have been becoming more and more popular nowadays in embedded vision applications owing to their ability to transmit image and video data to long distances reliably with very low latency. The GMSL interface – which was once popular only in the automotive industry – has now become a buzzword in the embedded vision industry as well.

For GMSL cameras, the NVIDIA Jetson series of processors remains to be the most commonly used host platform owing to their performance – which goes up to 275 TOPS with the latest Jetson AGX Orin. For this reason, most of e-con’s GMSL cameras also come integrated with NVIDIA Jetson processors off-the-shelf. However, some product developers have other types of processors as their host platform – based on an FPGA or a processor other than NVIDIA Jetson. If the camera modules are not readily integrated with these processors, certain steps need to be taken to ensure the camera-based system works seamlessly. These include setting up the MIPI CSI clock and lane configuration, triggering the initialization sequence to configure the camera, and accessing the camera controls.

In today’s blog, let’s look at these critical steps in detail and find out how you can integrate our top-of-the-line GMSL cameras with different host processors.

e-con’s GMSL cameras – made for easy integration

e-con Systems’ GMSL cameras house an inbuilt MCU firmware to handle the ISP and camera sensor configurations. Hence, the camera can be seamlessly interfaced with a variety of hosts – following the protocol. Since the MCU handles the basic configurations of the ISP and the camera, you can port the driver effortlessly onto different host platforms.

The host processor communicates with the MCU using the I2C interface to initialize – and sets up the camera. The camera driver patch and MCU protocol note documents also help in integrating e-con GMSL cameras with different host platforms.

Integrating e-con Systems’ GMSL cameras with any host processor broadly involves two steps:

  1. Setting up the camera module
  2. Setting up camera streaming

Let us look at each of these steps in detail now.

Setting up the camera module

The configuration parameters need to be set up so that the camera can be referred from the respective probe function in the GMSL camera driver.

The following steps help in configuring the serializer and the deserializer:

  1. Setting up the initial states of GPIOs like RESET, PWDN, and TRIGGER is important to establish basic communication with the camera module. Only then can the driver interact with the MCU. The registers in the serializer can be used for controlling the above GPIO states. The GPIO registers may vary based on the camera module. In the camera driver, the “serdes_config_init” function can be referred to get the registration details and set their respective values.
  1. For a camera module based on parallel data like NileCAM21 (Full HD HDR GMSL2 camera module with LFM from e-con Systems), the MIPI bridge configurations have to be executed from the driver, referring the “h” header file. This step can be skipped for GMSL cameras like NileCAM25 (Full HD GMSL2 global shutter camera module from e-con Systems) that by default comes with a MIPI output.
  1. Setting the lane and MIPI clock of the camera using MCU commands is the third crucial step. The packet structure can be obtained from the camera driver or MCU protocol app note.
  1. Finalizing the initial configuration of the serializer and deserializer is the last step. The initial register settings can be found from the hheader file. You can modify the settings based on the lanes and pipeline (X, Y, Z, and U) used. Please note that the default setting uses Y and Z pipelines.

Setting up the camera streaming

After setting up the initial configuration, the following steps must be followed to start the camera stream. For the MCU command packet formation, you can refer the respective MCU protocol application note.

  1. Send Init Camera command through the I2C interface.
  1. Send Get Command Status command sequence through the I2C interface repeatedly until the return status code is Success (0x0000).
  1. In the case of parallel cameras using a MIPI bridge, parallel to MIPI conversion in the MIPI bridge chip should be stopped before configuring the stream. The registers can be obtained from the “gen_mcu_stream_config” function in the camera driver. This step can be skipped for GMSL cameras that don’t use a MIPI bridge.
  1. Send Stream Configure command with desired frame format, width, height, and frame rate.
  1. Send Get Command Status command sequence through I2C interface repeatedly until the return status code is Success (0x0000).
  1. After configuring the stream, enable the MIPI bridge conversion. The registers can be obtained from the “gen_mcu_stream_config” function in the camera. This step can be skipped for GMSL cameras that don’t use a MIPI Bridge.
  1. Send Stream ON command to initiate streaming with updated stream configurations.
  1. Send Get Command Status command sequence through the I2C interface repeatedly until the return status code is Success (0x0000).

Similar to GMSL cameras, most of the camera modules designed and developed by e-con Systems can be integrated with various host platforms (please visit the embedded cameras page to learn more about the embedded platforms e-con currently supports). All you have to do is follow the MCU protocol document provided in the camera release package.

How e-con Systems’ integration and customization expertise can help you build cutting edge embedded vision systems

e-con Systems, powered by over 20 years of experience, combines customization and integration expertise with its wide portfolio of cameras to help product owners develop cutting-edge embedded vision systems. Please visit the Camera Selector page and the customization page to learn more.

If you are looking for help in integrating GMSL cameras with different host processors, please write to us at camerasolutions@e-consystems.com. Our experts will be happy to reach out and help.

Related posts

Make your existing NVIDIA® Jetson Orin™ devices faster with Super Mode

e-con Systems Launches See3CAM_CU83 – A 4K RGB-IR USB Camera Delivering Stunning Visuals Day and Night

e-con Systems Offers a Patented Hot-Pluggable GMSL Camera System for Uninterrupted Host Processor Streaming