ModalAI Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login

    VOXL2 IMX412 Camera "Received 0 buffers" Error

    Video and Image Sensors
    2
    11
    363
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Alex KushleyevA
      Alex Kushleyev ModalAI Team @ysc
      last edited by

      @ysc , can you please provide the end of the output from dmesg when you attempt to start the camera?

      And just to confirm, you tried using a different IMX412 camera (of the same type) and a different M0036 Flex cable?

      In the past we have seen that some flex cables (may be out of spec) do not work well with IMX412 camera. We can test this with a special camera driver (sensormodule), which will use the camera in very low MIPI bit rate. However, before we do that, can you please provide the output of dmesg when this failure happens?

      Also, did this camera + flex configuration work before, or this is the first time you are testing it and it is not working?

      Thank you

      Alex

      Y 1 Reply Last reply Reply Quote 0
      • Y
        ysc @Alex Kushleyev
        last edited by

        @Alex-Kushleyev

        Thank you for your response. I have conducted the tests you suggested:

        Test Results:

        1. Direct connection (without M0036 extension cable):

          • ✅ SUCCESS: Camera works perfectly when connected directly to VOXL2
          • ✅ IMX412 camera is properly detected and functioning
          • ✅ No MIPI CSI lane overflow errors
          • ✅ Camera server reports cameras connected successfully
        2. M0036 extension cable test:

          • ❌ FAILURE: Both M0036 extension cables I have exhibit the same problem
          • ❌ MIPI CSI lane overflow errors occur with both cables
          • ❌ Camera server reports "Found zero cameras connected"

        Hardware Configuration:

        • VOXL2 QRB5165M
        • IMX412 camera module (M0107)
        • Tested with 2 different M0036 extension cables
        • Using official connectors, ports, and cables

        Previous Experience:
        I have used this same IMX412 + M0036 configuration before and it worked successfully. This suggests that the M0036 extension cables may have degraded over time or there might be a batch issue with the cables.
        https://forum.modalai.com/topic/4461/voxl2-didn-t-detect-imx412-camera/7?_=1757372933541

        Questions:

        1. Since both of my M0036 extension cables are exhibiting the same MIPI CSI lane overflow issues, should I purchase new M0036 cables?
        2. Are there any known issues with M0036 cable degradation over time?
        3. Is there a way to test the M0036 cables independently to confirm they are the root cause?
        4. Would you recommend any specific M0036 cable suppliers or should I purchase directly from ModalAI?

        Thank you for your help in diagnosing this issue.

        Alex KushleyevA 1 Reply Last reply Reply Quote 0
        • Alex KushleyevA
          Alex Kushleyev ModalAI Team @ysc
          last edited by Alex Kushleyev

          @ysc ,

          the "fpv" version of the IMX412 driver uses the fastest camera MIPI bit rate at 2.1 Gbit/s per lane. The M0036 cables, when designed, were not tested under these conditions, since the camera driver update came recently and the test was not available.

          Can you please try to use the IMX412 sensormodule from /usr/share/modalai/chi-cdk/imx412/com.qti.sensormodule.imx412_2.bin instead of the FPV variant of the driver? (you will need to remove the com.qti.sensormodule.imx412_fpv_2.bin file from /usr/lib/camera/.

          The older driver streams the camera data at a lower rate, I believe 1.5Gbit/s. Please let me know if this change works for you.

          Regarding the cable supplier and degradation - we have not encountered cable degradation over time, however some cables may be slightly out of spec for this fastest MIPI bit rate. Also, we do not have other suppliers for the M0036, so you should purchase from ModalAI. However, lets figure out if there is a software solution first.

          Also, what is the final resolution of the image and FPS that you need for your application? Lower resolutions require less bandwidth and we could lower the bitrate even more if that helps.

          Alex

          Y 1 Reply Last reply Reply Quote 0
          • Y
            ysc @Alex Kushleyev
            last edited by

            @Alex-Kushleyev

            Final Update on M0036 Extension Cable Issue:

            Actions Taken (Following Your Recommendations):

            • ✅ Removed FPV driver (2.1Gbps): com.qti.sensormodule.imx412_fpv_2.bin
            • ✅ Using lower bitrate driver (1.5Gbps): com.qti.sensormodule.imx412_2.bin
            • ✅ Tested with 720p 30fps configuration (lower resolution as suggested)

            Test Results:

            • ✅ Direct connection: Works perfectly with 1.5Gbps driver
            • ❌ M0036 extension cable: Still fails with "Received 0 buffers from camera hires"

            Current Status:
            Even after implementing your suggested solution (1.5Gbps driver + 720p resolution), the M0036 cable cannot handle IMX412 data transmission. The camera is detected, streams are configured successfully, but no data is transmitted through the cable.

            Application Requirements:

            • Target resolution: 720p (1280x720) for PC streaming
            • Frame rate: 30fps
            • Use case: Real-time video streaming from VOXL2 to PC

            The M0036 extension cable appears to have compatibility issues with IMX412 even with the lower bitrate driver and reduced resolution settings.

            Thank you for your continued support.

            Alex KushleyevA 1 Reply Last reply Reply Quote 0
            • Alex KushleyevA
              Alex Kushleyev ModalAI Team @ysc
              last edited by

              @ysc ,

              Thank you for performing the tests. It is possible that the cables were damaged, since they were working originally, it seems, even with the "fpv" version of the drivers.

              Regarding the output resolution vs camera mode, the best way to find out which resolution the camera is actually streaming is to run the following before you start voxl-camera-server:

              logcat | grep -i selected
              

              The output should be something like this (may look slightly different in your case):

              03-02 13:03:06.847  3338  3338 I CHIUSECASE: [CONFIG ] chxextensionmodule.cpp:2358 InitializeOverrideSession() Session_parameters FPS range 30:30, previewFPS 0, videoFPS 0 BatchSize: 1 HALOutputBufferCombined 0 FPS: 30 SkipPattern: 1, cameraId = 0 selected use case = 1
              03-02 13:03:06.852  3338  3338 I CHIUSECASE: [CONFIG ] chxsensorselectmode.cpp:558 FindBestSensorMode() MAI: Selected Usecase: 7, SelectedMode W=4056, H=3040, FPS:30, NumBatchedFrames:0, modeIndex:0
              

              this tells you that the camera mode 4056x3040 @ 30 FPS was selected from the several modes that the sensormodule driver provides. Since you have selected the ISP processing in your config file, the default logic in the camera pipeline will select highest resolution camera mode and then down-scale in the ISP (for highest quality). So, even though you were selecting 1280x720 output, it is most likely that the camera was still running in full resolution mode (you can check).

              In any case, there is an issue with the flex cables. One last thing, I just wanted to confirm that you are NOT connecting two M0036 flexes back-to-back (to make a longer cable), because that is not guaranteed to work due to the length.

              If the single M0036 cables are not working, then we will replace them for free. Please submit an RMA request (www.modalai.com/rma) and ask for QTY 2 free replacement M0036 cables (include a link to this thread)

              Alex

              Y 1 Reply Last reply Reply Quote 0
              • Y
                ysc @Alex Kushleyev
                last edited by

                @Alex-Kushleyev

                Thank you for your detailed response and suggestions. Here's an update on the current situation:

                Current Status:

                • ✅ Camera is now working properly with video output
                • ✅ VOXL Portal shows live video feed
                • ✅ FPS: 10, Resolution: 640x480
                • ✅ Camera streams: hires_color and hires_grey are both functional

                Regarding your suggestions:

                1. Cable Status: I am using a single M0036 cable (no extension).

                2. logcat Command: The logcat | grep -i selected command doesn't work on VOXL2.

                Current Configuration:

                • IMX412 camera in J7L slot (slot 2)
                • Single M0036 cable, no extensions
                • Preview stream: 640x480 @ 10 FPS
                • Camera server: running successfully

                Thank you for your help in resolving this issue!

                Alex KushleyevA 1 Reply Last reply Reply Quote 0
                • Alex KushleyevA
                  Alex Kushleyev ModalAI Team @ysc
                  last edited by

                  @ysc , I am glad that the camera is working, but could you clarify what you changed to make it work? You should be able to get higher resolution and FPS if everything is working properly.

                  Also, if the logcat outout is not showing up, it is probably because the logging from camera pipeline is disabled in the following file : /vendor/etc/camera/camxoverridesettings.txt:

                  systemLogEnable=0
                  

                  If that is set to zero, you can just comment out that parameter and try again.

                  Alex

                  Y 1 Reply Last reply Reply Quote 0
                  • Y
                    ysc @Alex Kushleyev
                    last edited by

                    @Alex-Kushleyev

                    Sorry for the late response! Here's what I found:

                    Root Cause:
                    The issue was the M0036 extension cable itself. When I removed the M0036 cable and connected the camera directly to the VOXL2 board, the camera started working immediately.

                    Current Status:

                    • ✅ Camera works perfectly without M0036 cable
                    • ✅ Higher resolution and FPS working fine
                    • ❌ Camera fails when M0036 cable is connected

                    Conclusion:
                    The M0036 extension cable appears to be faulty or damaged. The camera hardware and software configuration are working correctly.

                    Next Steps:
                    I'll need to replace the M0036 cable to use the camera with extension.

                    Thank you for your help!

                    Alex KushleyevA 1 Reply Last reply Reply Quote 0
                    • Alex KushleyevA
                      Alex Kushleyev ModalAI Team @ysc
                      last edited by

                      @ysc , thank you for the update. Csn you please share how you connected the IMX412 camera to voxl2 without any extension cable? The camera itself does not have a cable. Did you connect it directly into the interposer M0076 or M0135?

                      Alex

                      Y 1 Reply Last reply Reply Quote 0
                      • Y
                        ysc @Alex Kushleyev
                        last edited by

                        @Alex-Kushleyev

                        Connection Method:
                        I connected the IMX412 camera module directly to the VOXL2 board using the M0076 interposer (not M0135). The M0076 interposer allows direct connection between the camera module and the VOXL2 board without any extension cable.

                        Setup:

                        • IMX412 camera module → M0076 interposer → VOXL2 board
                        • No M0036 extension cable used
                        • Direct connection through the interposer
                        1 Reply Last reply Reply Quote 0
                        • First post
                          Last post
                        Powered by NodeBB | Contributors