I’m currently trying to get the Radxa Camera 4K working with the CM5 + IO board, running Radxa OS
I have tried the same camera module on the Rock 5C, it is working on that board when testing with the following command:
gst-launch-1.0 v4l2src device=/dev/video11 io-mode=4 ! videoconvert ! video/x-raw,format=NV12,width=1920,height=1080 ! xvimagesink
But when I follow the same steps on the CM5 + IO board:
- Enabling the overlay
- Run the command above
I see that the IMX415 is detected, and there are no obvious different error messages than the Rock 5C - but the camera simply does not seem to deliver any working frames. Gstreamer just does nothing until I terminate manually, and no video feed pops up.
When running cheese - I get a black screen.
The only other post I’ve seen is this:
https://forum.radxa.com/t/problem-for-cm5-with-4k-camera
But it seems they gave up on the Camera 4K and switched to another camera.
The CM5 IO board and Camera 4K are advertised as being compatible. So can anyone from Radxa confirm that the camera has been tested and actually works on the IO board? If so what steps are needed to get this working?
This is relevant to me as we want to use the CM5 and Camera 4k in a design, if the IO board has a hardware issue preventing the camera from working we need to know how to address it in our design. Or if there’s an issue in the CM5 IO OS image compared to the Rock 5C one.
CM5 IO dmesg (not working)
[ 11.771049] platform csi2-dcphy0: Fixed dependency cycle(s) with /i2c@feca0000/imx415@1a
[ 11.794971] imx415 8-001a: driver version: 00.01.08
[ 11.794983] imx415 8-001a: Get hdr mode failed! no hdr default
[ 11.794993] imx415 8-001a: detect imx415 lane 4
[ 11.795031] imx415 8-001a: Failed to get power-gpios
[ 11.795036] imx415 8-001a: could not get default pinstate
[ 11.795040] imx415 8-001a: could not get sleep pinstate
[ 11.795045] imx415 8-001a: Looking up dvdd-supply from device tree
[ 11.795051] imx415 8-001a: Looking up dvdd-supply property in node /i2c@feca0000/imx415@1a failed
[ 11.795078] imx415 8-001a: supply dvdd not found, using dummy regulator
[ 11.795144] imx415 8-001a: Looking up dovdd-supply from device tree
[ 11.795151] imx415 8-001a: Looking up dovdd-supply property in node /i2c@feca0000/imx415@1a failed
[ 11.795165] imx415 8-001a: supply dovdd not found, using dummy regulator
[ 11.795186] imx415 8-001a: Looking up avdd-supply from device tree
[ 11.795192] imx415 8-001a: Looking up avdd-supply property in node /i2c@feca0000/imx415@1a failed
[ 11.795205] imx415 8-001a: supply avdd not found, using dummy regulator
[ 11.852535] imx415 8-001a: Detected imx415 id 0000e0
[ 11.890061] imx415 8-001a: Consider updating driver imx415 to match on endpoints
[ 11.890083] rockchip-csi2-dphy csi2-dcphy0: dphy0 matches m00_b_imx415 8-001a:bus type 5
[ 14.922672] imx415 8-001a: set hdr cfg, set mode to 0
[ 14.922687] imx415 8-001a: set fmt: cur_mode: 3864x2192, hdr: 0, bpp: 10
[ 14.932758] imx415 8-001a: set exposure(shr0) 1845 = cur_vts(2250) - val(405)
[ 125.165858] imx415 8-001a: s_stream: 1. 3864x2192, hdr: 0, bpp: 10
[ 125.165866] imx415 8-001a: write reg array error
[ 125.214970] imx415 8-001a: set vblank 0x3a vts 2250
[ 125.216264] imx415 8-001a: set exposure(shr0) 1845 = cur_vts(2250) - val(405)
[ 125.217120] imx415 8-001a: set analog gain 0x0
[ 126.251710] imx415 8-001a: s_stream: 0. 3864x2192, hdr: 0, bpp: 10
[ 126.372635] imx415 8-001a: s_stream: 1. 3864x2192, hdr: 0, bpp: 10
[ 126.372638] imx415 8-001a: write reg array error
[ 126.422164] imx415 8-001a: set vblank 0x3a vts 2250
[ 126.423481] imx415 8-001a: set exposure(shr0) 1845 = cur_vts(2250) - val(405)
[ 126.424352] imx415 8-001a: set analog gain 0x0
(no stream - manual terminate)
[ 131.083492] imx415 8-001a: s_stream: 0. 3864x2192, hdr: 0, bpp: 10
Rock 5C dmesg (working)
[ 13.053875] platform csi2-dphy0: Fixed dependency cycle(s) with /i2c@feab0000/imx415@1a
[ 13.077672] imx415 3-001a: driver version: 00.01.08
[ 13.077684] imx415 3-001a: Get hdr mode failed! no hdr default
[ 13.077695] imx415 3-001a: detect imx415 lane 4
[ 13.077732] imx415 3-001a: Failed to get power-gpios
[ 13.077737] imx415 3-001a: could not get default pinstate
[ 13.077740] imx415 3-001a: could not get sleep pinstate
[ 13.077745] imx415 3-001a: Looking up dvdd-supply from device tree
[ 13.077752] imx415 3-001a: Looking up dvdd-supply property in node /i2c@feab0000/imx415@1a failed
[ 13.077778] imx415 3-001a: supply dvdd not found, using dummy regulator
[ 13.077837] imx415 3-001a: Looking up dovdd-supply from device tree
[ 13.077844] imx415 3-001a: Looking up dovdd-supply property in node /i2c@feab0000/imx415@1a failed
[ 13.077858] imx415 3-001a: supply dovdd not found, using dummy regulator
[ 13.077882] imx415 3-001a: Looking up avdd-supply from device tree
[ 13.077888] imx415 3-001a: Looking up avdd-supply property in node /i2c@feab0000/imx415@1a failed
[ 13.077901] imx415 3-001a: supply avdd not found, using dummy regulator
[ 13.149101] imx415 3-001a: Detected imx415 id 0000e0
[ 13.188264] imx415 3-001a: Consider updating driver imx415 to match on endpoints
[ 13.188276] rockchip-csi2-dphy csi2-dphy0: dphy0 matches m00_b_imx415 3-001a:bus type 5
[ 16.707073] imx415 3-001a: set hdr cfg, set mode to 0
[ 16.707088] imx415 3-001a: set fmt: cur_mode: 3864x2192, hdr: 0, bpp: 10
[ 16.714651] imx415 3-001a: set exposure(shr0) 1845 = cur_vts(2250) - val(405)
[ 115.595837] imx415 3-001a: s_stream: 1. 3864x2192, hdr: 0, bpp: 10
[ 115.655347] imx415 3-001a: write reg array error
[ 115.702793] imx415 3-001a: set vblank 0x3a vts 2250
[ 115.704025] imx415 3-001a: set exposure(shr0) 1845 = cur_vts(2250) - val(405)
[ 115.704850] imx415 3-001a: set analog gain 0x0
[ 115.773218] imx415 3-001a: set exposure(shr0) 1537 = cur_vts(2250) - val(713)
[ 115.789824] imx415 3-001a: set exposure(shr0) 994 = cur_vts(2250) - val(1256)
[ 115.812966] imx415 3-001a: set analog gain 0xe
[ 115.814249] imx415 3-001a: set exposure(shr0) 900 = cur_vts(2250) - val(1350)
[ 115.822643] imx415 3-001a: set analog gain 0x1f
[ 115.840310] imx415 3-001a: set analog gain 0x32
[ 115.856052] imx415 3-001a: set analog gain 0x3b
[ 115.872767] imx415 3-001a: set analog gain 0x46
[ 115.889767] imx415 3-001a: set analog gain 0x54
[ 115.906166] imx415 3-001a: set analog gain 0x63
[ 115.922702] imx415 3-001a: set analog gain 0x72
[ 115.939327] imx415 3-001a: set analog gain 0x7f
[ 115.955975] imx415 3-001a: set analog gain 0x8c
… working stream (logs continue until termination)