IMX219 on JetPack 6.2/L4T36.4.4

  1. Where did you get the camera module(s)?
    Botland

  2. Model number of the product(s)?
    B0181

  3. What hardware/platform were you working on?
    Jetson Orin Nano Super 13766-0005

  4. Instructions you have followed. (link/manual/etc.)
    https://docs.arducam.com/Nvidia-Jetson-Camera/Native-Camera/Quick-Start-Guide/#12mp-imx477-camera

  5. Problems you were having?
    Camera doesn’t work. No communication, no autofocus.

  6. The dmesg log from your hardware?

[    9.735664] imx219 9-0010: tegracam sensor driver:imx219_v2.0.6
[    9.751764] tegra-camrtc-capture-vi tegra-capture-vi: subdev imx219 9-0010 bound
[    9.798765] imx219 10-0010: tegracam sensor driver:imx219_v2.0.6
[    9.814954] tegra-camrtc-capture-vi tegra-capture-vi: subdev imx219 10-0010 bound
  1. Troubleshooting attempts you’ve made?
    Both RPi cameras v2 (imx219) and v3 (imx708) works like a charm but not Arducam B0181. System recognized them imx219 and creates devices but that’s about it.

  2. What help do you need?
    Use the camera.

1 Like

Hi @Pupi
Thanks for the detailed post. You’ve done some excellent troubleshooting steps.

You’re right–the dmesg logs confirm that your Jetson correctly identified the IMX219 sensor on the camera. This is the expected first step.

The key difference with the B0181 model is its autofocus capability. While the standard Jetson driver can see the sensor, it doesn’t have the built-in ability to control the focus motor. For that, you need to use our dedicated Python scripts.

You can find everything you need in our GitHub repository:

Please try running the FocuserExample.py script. It is designed to initialize the camera and give you control over the autofocus. The commands should be:

python3 FocuserExample.py -i 9
python3 FocuserExample.py -i 10

This should bring up a preview and a preview window. Let me know how that goes.

Dion

Thanks for feedback. Sorry I was not clear enough. The B0181 camera doesn’t work at all. Here is output from FocuserExample

GST_ARGUS: Creating output stream
CONSUMER: Waiting until producer is connected...
GST_ARGUS: Available Sensor modes :
GST_ARGUS: 3280 x 2464 FR = 21.000000 fps Duration = 47619048 ; Analog Gain range min 1.000000, max 10.625000; Exposure Range min 13000, max 683709000;

GST_ARGUS: 3280 x 1848 FR = 28.000001 fps Duration = 35714284 ; Analog Gain range min 1.000000, max 10.625000; Exposure Range min 13000, max 683709000;

GST_ARGUS: 1920 x 1080 FR = 29.999999 fps Duration = 33333334 ; Analog Gain range min 1.000000, max 10.625000; Exposure Range min 13000, max 683709000;

GST_ARGUS: 1640 x 1232 FR = 29.999999 fps Duration = 33333334 ; Analog Gain range min 1.000000, max 10.625000; Exposure Range min 13000, max 683709000;

GST_ARGUS: 1280 x 720 FR = 59.999999 fps Duration = 16666667 ; Analog Gain range min 1.000000, max 10.625000; Exposure Range min 13000, max 683709000;

GST_ARGUS: Running with following settings:
   Camera index = 0 
   Camera mode  = 4 
   Output Stream W = 1280 H = 720 
   seconds to Run    = 0 
   Frame Rate = 59.999999 
GST_ARGUS: Setup Complete, Starting captures for 0 seconds
GST_ARGUS: Starting repeat capture requests.
CONSUMER: Producer has connected; continuing.
Error generated. /dvs/git/dirty/git-master_linux/multimedia/nvgstreamer/gst-nvarguscamera/gstnvarguscamerasrc.cpp, threadExecute:734 NvBufSurfaceFromFd Failed.
Error generated. /dvs/git/dirty/git-master_linux/multimedia/nvgstreamer/gst-nvarguscamera/gstnvarguscamerasrc.cpp, threadFunction:245 (propagating)
[ WARN:[email protected]] global cap_gstreamer.cpp:1728 open OpenCV | GStreamer warning: Cannot query video position: status=0, value=-1, duration=-1
Exception in thread :
Traceback (most recent call last):
  File "/usr/lib/python3.10/threading.py", line 1016, in _bootstrap_inner
    self.run()
  File "/home/poopi/Projects/MIPI_Camera/Jetson/IMX219/JetsonCamera.py", line 92, in run
    cv2.imshow(self.window_name, self.camera.getFrame(2000))
cv2.error: OpenCV(4.8.0) /home/ubuntu/opencv_build/opencv/modules/highgui/src/window.cpp:971: error: (-215:Assertion failed) size.width>0 && size.height>0 in function 'imshow'

Traceback (most recent call last):
  File "/usr/lib/python3.10/curses/__init__.py", line 78, in wrapper
    cbreak()
_curses.error: cbreak() returned ERR

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/poopi/Projects/MIPI_Camera/Jetson/IMX219/FocuserExample.py", line 193, in <module>
    main()
  File "/home/poopi/Projects/MIPI_Camera/Jetson/IMX219/FocuserExample.py", line 185, in main
    curses.wrapper(draw_menu, camera, args.i2c_bus)
  File "/usr/lib/python3.10/curses/__init__.py", line 100, in wrapper
    nocbreak()
_curses.error: nocbreak() returned ERR
terminate called without an active exception

Please ignore. It seems that the sensor on my board is faulty. I replaced a B0181 board sensor with a sensor from Pi v2 camera and camera has been properly recognized.

1 Like