Streaming RAW data with CX3 not working with IMX219

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
user_2884081
Level 4
Level 4
50 replies posted 25 replies posted 10 replies posted

Recently I opened another question about streaming RAW data using CX3 and the Denebola kit, which uses the OV5640 image sensor.

That was the previous step to using a Sony IMX219PQ image sensor with the CX3. I followed the instructions given in the discussion linked before since they worked with the OV5640 sensor, but I can't stream data to the PC host application.

I configured the IMX219 to work in RAW10 1080p@30fps, and the MIPI clock shows a 30Hz signal. The MIPI data lane shows around 1080 pulses, which I guess signal every row, followed by what I think is the MIPI data for the row.

I configured the CX3 this way:

  • MIPI: RAW10, hResolution = 1920
  • GPIF bus: 16 bits
  • Probe: video frame size in bytes = 1920 x 1080 x 5/4
  • USB Descriptor: 16bpp, RGB565, frame size = 1200x1080

I have also added a byte counter that adds the "DmaBuffer.count" each Producer Event of the DMA, then resets when the frame is sent (EOF is added to header). The total byte count I get is not stable, but most of the time is 2755824 bytes, while I should be getting 1920x1080x5/4 = 2592000. I don't know why I am getting more bytes than I should.

I have tried using the camera in RAW8 since that is the format that worked when using the OV5640, but the byte count I get is much lower than expected.

What am I doing wrong? I have not changed the timing and clocks because I didn't have to when using the OV5640.

Also, ideas to succesfully debug this would be appreciated.

EDIT: I have been trying to check if the clocking is not correctly configured since it is the only thing I have not modified. But I don't have enough information. Should I change the MIPI clocks configuration? Why? What is the difference between different clock configurations?

0 Likes
19 Replies