ArduCAM / MIPI_Camera

223 stars 107 forks source link

IMX477 Camera driver can't install correctly and can't open camera on Jetson Xavier NX #160

Open tiensu opened 1 year ago

tiensu commented 1 year ago

Hi you, I have a jetson Xavier NX device and 12MP IMX477 HQ Camera (BKU: B0250) with information:

$ uname -a Linux drone-nxf 4.9.140-tegra #1 SMP PREEMPT Thu Jun 25 21:22:12 PDT 2020 aarch64 aarch64 aarch64 GNU/Linux

$ cat /etc/nv_tegra_release

R32 (release), REVISION: 4.3, GCID: 21589087, BOARD: t186ref, EABI: aarch64, DATE: Fri Jun 26 04:34:27 UTC 2020

I download driver file arducam-nvidia-l4t-kernel_4.9.140-32.4.3-20200721164156_arm64_imx477.deb to install:

$ sudo dpkg -i arducam-nvidia-l4t-kernel_4.9.140-32.4.3-20200721164156_arm64_imx477.deb [sudo] password for drone: (Reading database ... 141661 files and directories currently installed.) Preparing to unpack arducam-nvidia-l4t-kernel_4.9.140-32.4.3-20200721164156_arm64_imx477.deb ... Unpacking arducam-nvidia-l4t-kernel (4.9.140-32.4.3-20200721164156) over (4.9.140-32.4.3-20200721164156) ... Setting up arducam-nvidia-l4t-kernel (4.9.140-32.4.3-20200721164156) ...

When I check camera, it can't open:

$ SENSOR_ID=0 $ FRAMERATE=60 $ gst-launch-1.0 nvarguscamerasrc sensor-id=$SENSOR_ID ! "video/x-raw(memory:NVMM),width=1920,height=1080,framerate=$FRAMERATE/1" ! nvvidconv ! nvoverlaysink Setting pipeline to PAUSED ... Pipeline is live and does not need PREROLL ... Setting pipeline to PLAYING ... New clock: GstSystemClock Error generated. /dvs/git/dirty/git-master_linux/multimedia/nvgstreamer/gst-nvarguscamera/gstnvarguscamerasrc.cpp, execute:557 No cameras available Got EOS from element "pipeline0". Execution ended after 0:00:00.038427821 Setting pipeline to PAUSED ... Setting pipeline to READY ... Setting pipeline to NULL ... Freeing pipeline ... (Argus) Error EndOfFile: Unexpected error in reading socket (in src/rpc/socket/client/ClientSocketManager.cpp, function recvThreadCore(), line 266) (Argus) Error EndOfFile: Receive worker failure, notifying 1 waiting threads (in src/rpc/socket/client/ClientSocketManager.cpp, function recvThreadCore(), line 340) (Argus) Error InvalidState: Argus client is exiting with 1 outstanding client threads (in src/rpc/socket/client/ClientSocketManager.cpp, function recvThreadCore(), line 357) (Argus) Error EndOfFile: Receiving thread terminated with error (in src/rpc/socket/client/ClientSocketManager.cpp, function recvThreadWrapper(), line 368) (Argus) Error EndOfFile: Client thread received an error from socket (in src/rpc/socket/client/ClientSocketManager.cpp, function send(), line 145) (Argus) Error EndOfFile: (propagating from src/rpc/socket/client/SocketClientDispatch.cpp, function dispatch(), line 87) I also checked the driver:

$ dmesg | grep -E "imx477|imx219|arducam" [ 4.802909] imx219 9-0010: tegracam sensor driver:imx219_v2.0.6 [ 4.826424] imx219 9-0010: imx219_board_setup: error during i2c read probe (-121) [ 4.826467] imx219 9-0010: board setup failed [ 4.826562] imx219: probe of 9-0010 failed with error -121 [ 4.826935] imx219 10-0010: tegracam sensor driver:imx219_v2.0.6 [ 4.850254] imx219 10-0010: imx219_board_setup: error during i2c read probe (-121) [ 4.850300] imx219 10-0010: board setup failed [ 4.850412] imx219: probe of 10-0010 failed with error -121

and,

$ ls /dev/video ls: cannot access '/dev/video': No such file or directory

Please help me how to solve this problem. Thank you very much!