KRIA + PYNQ : any support for Gigabit Ethernet camera?

Hi,

I know that usb and Raspberry PI cameras are supported on the KIRA + PYNQ platform, but does anyone know if Gigabit Ethernet cameras are also supported or if they are some additional IP for that?

Thank you

Hello,

I do not have a huge experience with GigE cameras, but I had a project with a GigE camera from Basler on Pynq, it worked flawlessly.

It is independent from Pynq, you should use the SDK provided by the supplier. They usually both provide kernel drivers as well as pure TCP/IP drivers (use these, they work out of the box without an effort).

Personally, I used Basler with their Pylon SDK with pure TCP/IP drivers, and it worked perfectly.

Good luck for your project,
Mikaël

1 Like

Thank you Mikael,

I guess you are using the ARM (PS) of the Zynq?
I would like to acquire the video directly on the FPGA (PL) part of the Zynq to avoid the transfer delay from the PS to the PL and then using Vitis openCV to do some real time processing.

Cheers

With GigE, it could be complicated to depacketize the data on the PL. Not only you would need lot of logic and buffers, maybe even a DDR memory buffer, but an even bigger problem is that the GigE standard is quite opaque for non-members.

If you are representing a company, you could acquire an IP for this.

Personally, I make my own PCB with LVDS interface.
A MIPI interface would be convenient too.
There are also some parallel sensors.

Mikaël

Also, the delay could come from going through many buffers and processing tasks.
Here are some optimizations:

  1. Avoid doing multiple copies
  2. Use C driver and code instead of Python
  3. If you use an intermediate file, put it in RAMfs or in a pipe instead of your sdcard
  4. Use a GigE linux driver (not just a userland TCP driver), which would squeeze the TCP/IP stack and improve performance.

Mikaël