ES3 and MP

Overview

In ES3, we attempted to run NPL54Capture as a systemd service to ensure safer VDMA start and stop operations. After NPL54Capture is installed, all necessary binaries, libraries, kernel modules, and services will be copied to the host computer and executed automatically.

Installation

circle-info

Please contact your sales representative to get the unzip password.


Run (automatically)

After the installation script runs, the NPL54Retry service will automatically start as a systemd service named npl54.service.

You can check the service status with the following command:

Run (manually)

If you would like to control the npl54.service manually, you can use the following two commands:

Test Video Streaming

By default, we will generate 16 video nodes for each of the four PCIe-NPL54 devices, ranging from /dev/video100 to /dev/video115. The order of the video nodes is determined by the PCIe interface order, which may not correspond to the physical position of the PCIe slots.

We've also included some handy test scripts that you can refer to, e.g.,

Check NPL54Catpure Log


Rotary Switch and DIP Switches

The PCIe-NPL54 relies on rotary switches and DIP switches to adapt to various camera modules.

The ES3 will be the MP version, A10. However, we will add support for the latest cameras in the MP version. Some cameras may not be supported on the ES3 version due to changes in the FPGA and MCU code.

Since the GMSL2 frame grabber impacts CPU load and memory bandwidth, some legacy computers may not be able to stream as many cameras as stated in the following table. Please refer to Verified Host Configurations on Intel 13th Gen / 9th Gen for the tests we have conducted.

SW2 #1
SW2 #2
SW2 #3
SW2 #4

ON

60 FPS Framesync

20 FPS Framesync

Framesync for Each Camera Aligned with 25% Phase Shift

PPS Input and Framesync: Aligned

OFF

Framesync depends on SW2 #2

30 FPS Framesync

Framesync for Each Camera Aligned with 0% Phase Shift

PPS Input and Framesync: Not Aligned

RSW1
Framesync FPS
Support on ES3 or MP

0

4x AC-IMX390

Fixed 30 FPS

ES3 + MP

1

4x AC-ISX031

20 FPS / 30 FPS

ES3 + MP

2

4x AC-IMX490

20 FPS / 30 FPS

ES3 + MP

3

Reserved

-

-

4

4x AC-AR0233 OR 4x AC-AR0233-60FPS

20 FPS / 30 FPS OR 20 FPS / 30 FPS / 60 FPS

MP

5

4x SG3S-ISX031C-GMSL2F-Hxxx (3MP /MAX96717/ No EBD)

20 FPS / 30 FPS

MP

6

Reserved

-

-

7

Reserved

-

-

8

4x TierIV C1

20 FPS / 30 FPS

ES3 + MP

9

Reserved

-

-

10

Due to bandwidth limitations, rotary switch No. 10 supports either: 2x 8MP + 1x 3MP or 1x 8MP + 2x 3MP

A fixed port-to-camera mapping is also defined:

  • Ports 0 and 1: 8MP

  • Ports 2 and 3: 3MP

The 8MP camera model is Sensing World SG8S-AR0820C-5300-G2A-Hxxx. The 3MP camera model is Sensing World SG3S-ISX031C-GMSL2F-Hxxx, which uses the MAX96717 GMSL2 serializer instead of the MAX9295.

20 FPS / 30 FPS

MP

11

Reserved (for an upcoming 3D camera)

-

-

12

Reserved

-

-

13

Reserved

-

-

14

4x STURDeCAM31

30FPS (fixed)

MP

15

Reserved (for Framesync only. No I2C mode)

-

-

circle-info

Due to camera characteristics, using STURDeCAM31 with the NPL54 results in a different mapping configuration

  • NPL54 Freerun → e-con ISX031 Master Mode, 30 FPS

  • NPL54 60 FPS Framesync → e-con ISX031 Master Mode, 60 FPS

  • NPL54 30 FPS Framesync → e-con ISX031 Trigger Mode, 30 FPS

  • NPL54 20 FPS Framesync → e-con ISX031 Trigger Mode, 30 FPS

SW6 #1
SW6 #2

ON

RSVD

Freerun (overrides SW2#1 and SW2#2)

OFF

Default

Framesync (depends on SW2#1, SW2#2)

SW6 #3 _ ON
SW6 #3 _ OFF

SW6 #4 _ ON

RSVD

RSVD

SW6 #4 _ OFF

RSVD

Default

GPS PPS Input, Phase Shift, and Framsync

  • We have reserved an independent framesync for each camera.

  • The source of the framesync is an onboard MCU.

  • The implementation focuses on the falling edge of PPS input, and rising edge of the framesync.

  • The framesync can be further aligned with the GPS PPS input, which is fed in via the 8-pin terminal block.

  • A phase shift can be applied to introduce different delays in framesync among the cameras.

circle-info

For ES3, the frame sync phase shift is based on the FPGA channel order, so it would be ... +25% +0% +75% +50% from port 0, 1, 2, 3.

For MP, the frame sync phase shift is based on the FPGA channel order, so it would be ... +0% +25% +50% +75% from port 0, 1, 2, 3.

MCU Commands

We have reserved an RS232 interface to allow the host to communicate directly with the MCU. The pinout of the MCU's RS232 can be found on the IO page.

circle-info
  1. Please remember to set the RS232 port as 115200, 8E1

  2. When using MCU commands, please ensure the cameras are streaming with the GPS PPS feature disabled and are not undergoing an auto-recovery process.

Last updated