@大法师 Hi, thanks for your effort!
A suggestion, why not doc your work as a tutorial?
So that everyone can help you debug the code.
Best posts made by nickliu
-
RE: coolpi 4b support ov5647 camera moduleposted in Peripheral
Latest posts made by nickliu
-
RE: coolpi 4b support ov5647 camera moduleposted in Peripheral
Hi, I tried the new kernel with two OV5647 camera.
It looks the default configuration is not correct.

The command I usedsudo v4l2-ctl --verbose -d /dev/video0 --set-fmt-video=width=1920,height=1080,pixelformat='NV12' --stream-mmap=4 --set-selection=target=crop,flags=0,top=0,left=0,width=1920,height=1080 --stream-to=out1.yuv ffplay out1.yuv -pixel_format nv12 -video_size 1920x1080The system message
@Ubuntu:~$ dmesg | grep 'ov5' [ 7.644913] ov5648 8-0036: driver version: 00.01.05 [ 7.644958] ov5648 8-0036: Failed to get power-gpios, maybe no use [ 7.644976] ov5648 8-0036: Failed to get reset-gpios, maybe no use [ 7.644994] ov5648 8-0036: Failed to get pwdn-gpios [ 7.645126] ov5648 8-0036: supply dovdd not found, using dummy regulator [ 7.645216] ov5648 8-0036: supply dvdd not found, using dummy regulator [ 7.645268] ov5648 8-0036: lane_num(2) pixel_rate(84000000) [ 7.645277] ov5648 8-0036: could not get default pinstate [ 7.650710] ov5648 8-0036: could not get sleep pinstate [ 7.660168] ov5648 8-0036: Detected OV005647 sensor [ 7.660205] rockchip-csi2-dphy csi2-dphy0: dphy0 matches m01_f_ov5648 8-0036:bus type 5 [ 123.522013] ov5648 8-0036: ov5648_s_stream(997) enter! [ 123.522018] ov5648 8-0036: stream on!!! [ 123.574530] ov5648 8-0036: ov5648_set_ctrl Unhandled id:0x9a0901, val:0x1 [ 123.577105] ov5648 8-0036: ov5648_set_ctrl Unhandled id:0x9f0905, val:0x400 [ 141.109425] ov5648 8-0036: ov5648_s_stream(997) enter! [ 141.109431] ov5648 8-0036: stream off!!! [ 352.460709] ov5648 8-0036: ov5648_s_stream(997) enter! [ 352.460714] ov5648 8-0036: stream on!!! [ 352.506940] ov5648 8-0036: ov5648_set_ctrl Unhandled id:0x9a0901, val:0x1 [ 352.508804] ov5648 8-0036: ov5648_set_ctrl Unhandled id:0x9f0905, val:0x400 [ 359.915797] ov5648 8-0036: ov5648_s_stream(997) enter! [ 359.915807] ov5648 8-0036: stream off!!! [ 522.868438] ov5648 8-0036: ov5648_s_stream(997) enter! [ 522.868438] ov5648 8-0036: stream on!!! [ 522.907120] ov5648 8-0036: ov5648_set_ctrl Unhandled id:0x9a0901, val:0x1 [ 522.908828] ov5648 8-0036: ov5648_set_ctrl Unhandled id:0x9f0905, val:0x400 [ 527.994503] ov5648 8-0036: ov5648_s_stream(997) enter! [ 527.994509] ov5648 8-0036: stream off!!! [ 567.407434] ov5648 8-0036: ov5648_s_stream(997) enter! [ 567.407435] ov5648 8-0036: stream on!!! [ 567.448267] ov5648 8-0036: ov5648_set_ctrl Unhandled id:0x9a0901, val:0x1 [ 567.450267] ov5648 8-0036: ov5648_set_ctrl Unhandled id:0x9f0905, val:0x400 [ 572.471164] ov5648 8-0036: ov5648_s_stream(997) enter! [ 572.471167] ov5648 8-0036: stream off!!!@Ubuntu:~$ sudo v4l2-ctl --list-devices rkisp-statistics (platform: rkisp): /dev/video18 /dev/video19 rkcif-mipi-lvds2 (platform:rkcif): /dev/media0 rkcif (platform:rkcif-mipi-lvds2): /dev/video0 /dev/video1 /dev/video2 /dev/video3 /dev/video4 /dev/video5 /dev/video6 /dev/video7 /dev/video8 /dev/video9 /dev/video10 rkisp_mainpath (platform:rkisp0-vir0): /dev/video11 /dev/video12 /dev/video13 /dev/video14 /dev/video15 /dev/video16 /dev/video17 /dev/media1Ubuntu:~$ sudo media-ctl -p -d /dev/media0 Media controller API version 5.10.110 Media device information ------------------------ driver rkcif model rkcif-mipi-lvds2 serial bus info hw revision 0x0 driver version 5.10.110 Device topology - entity 1: stream_cif_mipi_id0 (1 pad, 11 links) type Node subtype V4L flags 0 device node name /dev/video0 pad0: Sink <- "rockchip-mipi-csi2":1 [ENABLED] <- "rockchip-mipi-csi2":2 [] <- "rockchip-mipi-csi2":3 [] <- "rockchip-mipi-csi2":4 [] <- "rockchip-mipi-csi2":5 [] <- "rockchip-mipi-csi2":6 [] <- "rockchip-mipi-csi2":7 [] <- "rockchip-mipi-csi2":8 [] <- "rockchip-mipi-csi2":9 [] <- "rockchip-mipi-csi2":10 [] <- "rockchip-mipi-csi2":11 [] - entity 5: stream_cif_mipi_id1 (1 pad, 11 links) type Node subtype V4L flags 0 device node name /dev/video1 pad0: Sink <- "rockchip-mipi-csi2":1 [] <- "rockchip-mipi-csi2":2 [ENABLED] <- "rockchip-mipi-csi2":3 [] <- "rockchip-mipi-csi2":4 [] <- "rockchip-mipi-csi2":5 [] <- "rockchip-mipi-csi2":6 [] <- "rockchip-mipi-csi2":7 [] <- "rockchip-mipi-csi2":8 [] <- "rockchip-mipi-csi2":9 [] <- "rockchip-mipi-csi2":10 [] <- "rockchip-mipi-csi2":11 [] - entity 9: stream_cif_mipi_id2 (1 pad, 11 links) type Node subtype V4L flags 0 device node name /dev/video2 pad0: Sink <- "rockchip-mipi-csi2":1 [] <- "rockchip-mipi-csi2":2 [] <- "rockchip-mipi-csi2":3 [ENABLED] <- "rockchip-mipi-csi2":4 [] <- "rockchip-mipi-csi2":5 [] <- "rockchip-mipi-csi2":6 [] <- "rockchip-mipi-csi2":7 [] <- "rockchip-mipi-csi2":8 [] <- "rockchip-mipi-csi2":9 [] <- "rockchip-mipi-csi2":10 [] <- "rockchip-mipi-csi2":11 [] - entity 13: stream_cif_mipi_id3 (1 pad, 11 links) type Node subtype V4L flags 0 device node name /dev/video3 pad0: Sink <- "rockchip-mipi-csi2":1 [] <- "rockchip-mipi-csi2":2 [] <- "rockchip-mipi-csi2":3 [] <- "rockchip-mipi-csi2":4 [ENABLED] <- "rockchip-mipi-csi2":5 [] <- "rockchip-mipi-csi2":6 [] <- "rockchip-mipi-csi2":7 [] <- "rockchip-mipi-csi2":8 [] <- "rockchip-mipi-csi2":9 [] <- "rockchip-mipi-csi2":10 [] <- "rockchip-mipi-csi2":11 [] - entity 17: rkcif_scale_ch0 (1 pad, 11 links) type Node subtype V4L flags 0 device node name /dev/video4 pad0: Sink <- "rockchip-mipi-csi2":1 [] <- "rockchip-mipi-csi2":2 [] <- "rockchip-mipi-csi2":3 [] <- "rockchip-mipi-csi2":4 [] <- "rockchip-mipi-csi2":5 [ENABLED] <- "rockchip-mipi-csi2":6 [] <- "rockchip-mipi-csi2":7 [] <- "rockchip-mipi-csi2":8 [] <- "rockchip-mipi-csi2":9 [] <- "rockchip-mipi-csi2":10 [] <- "rockchip-mipi-csi2":11 [] - entity 21: rkcif_scale_ch1 (1 pad, 11 links) type Node subtype V4L flags 0 device node name /dev/video5 pad0: Sink <- "rockchip-mipi-csi2":1 [] <- "rockchip-mipi-csi2":2 [] <- "rockchip-mipi-csi2":3 [] <- "rockchip-mipi-csi2":4 [] <- "rockchip-mipi-csi2":5 [] <- "rockchip-mipi-csi2":6 [ENABLED] <- "rockchip-mipi-csi2":7 [] <- "rockchip-mipi-csi2":8 [] <- "rockchip-mipi-csi2":9 [] <- "rockchip-mipi-csi2":10 [] <- "rockchip-mipi-csi2":11 [] - entity 25: rkcif_scale_ch2 (1 pad, 11 links) type Node subtype V4L flags 0 device node name /dev/video6 pad0: Sink <- "rockchip-mipi-csi2":1 [] <- "rockchip-mipi-csi2":2 [] <- "rockchip-mipi-csi2":3 [] <- "rockchip-mipi-csi2":4 [] <- "rockchip-mipi-csi2":5 [] <- "rockchip-mipi-csi2":6 [] <- "rockchip-mipi-csi2":7 [ENABLED] <- "rockchip-mipi-csi2":8 [] <- "rockchip-mipi-csi2":9 [] <- "rockchip-mipi-csi2":10 [] <- "rockchip-mipi-csi2":11 [] - entity 29: rkcif_scale_ch3 (1 pad, 11 links) type Node subtype V4L flags 0 device node name /dev/video7 pad0: Sink <- "rockchip-mipi-csi2":1 [] <- "rockchip-mipi-csi2":2 [] <- "rockchip-mipi-csi2":3 [] <- "rockchip-mipi-csi2":4 [] <- "rockchip-mipi-csi2":5 [] <- "rockchip-mipi-csi2":6 [] <- "rockchip-mipi-csi2":7 [] <- "rockchip-mipi-csi2":8 [ENABLED] <- "rockchip-mipi-csi2":9 [] <- "rockchip-mipi-csi2":10 [] <- "rockchip-mipi-csi2":11 [] - entity 33: rkcif_tools_id0 (1 pad, 11 links) type Node subtype V4L flags 0 device node name /dev/video8 pad0: Sink <- "rockchip-mipi-csi2":1 [] <- "rockchip-mipi-csi2":2 [] <- "rockchip-mipi-csi2":3 [] <- "rockchip-mipi-csi2":4 [] <- "rockchip-mipi-csi2":5 [] <- "rockchip-mipi-csi2":6 [] <- "rockchip-mipi-csi2":7 [] <- "rockchip-mipi-csi2":8 [] <- "rockchip-mipi-csi2":9 [ENABLED] <- "rockchip-mipi-csi2":10 [] <- "rockchip-mipi-csi2":11 [] - entity 37: rkcif_tools_id1 (1 pad, 11 links) type Node subtype V4L flags 0 device node name /dev/video9 pad0: Sink <- "rockchip-mipi-csi2":1 [] <- "rockchip-mipi-csi2":2 [] <- "rockchip-mipi-csi2":3 [] <- "rockchip-mipi-csi2":4 [] <- "rockchip-mipi-csi2":5 [] <- "rockchip-mipi-csi2":6 [] <- "rockchip-mipi-csi2":7 [] <- "rockchip-mipi-csi2":8 [] <- "rockchip-mipi-csi2":9 [] <- "rockchip-mipi-csi2":10 [ENABLED] <- "rockchip-mipi-csi2":11 [] - entity 41: rkcif_tools_id2 (1 pad, 11 links) type Node subtype V4L flags 0 device node name /dev/video10 pad0: Sink <- "rockchip-mipi-csi2":1 [] <- "rockchip-mipi-csi2":2 [] <- "rockchip-mipi-csi2":3 [] <- "rockchip-mipi-csi2":4 [] <- "rockchip-mipi-csi2":5 [] <- "rockchip-mipi-csi2":6 [] <- "rockchip-mipi-csi2":7 [] <- "rockchip-mipi-csi2":8 [] <- "rockchip-mipi-csi2":9 [] <- "rockchip-mipi-csi2":10 [] <- "rockchip-mipi-csi2":11 [ENABLED] - entity 45: rockchip-mipi-csi2 (12 pads, 122 links) type V4L2 subdev subtype Unknown flags 0 device node name /dev/v4l-subdev0 pad0: Sink [fmt:SBGGR10_1X10/2592x1944 field:none crop.bounds:(0,0)/2592x1944 crop:(0,0)/2592x1944] <- "rockchip-csi2-dphy0":1 [ENABLED] pad1: Source -> "stream_cif_mipi_id0":0 [ENABLED] -> "stream_cif_mipi_id1":0 [] -> "stream_cif_mipi_id2":0 [] -> "stream_cif_mipi_id3":0 [] -> "rkcif_scale_ch0":0 [] -> "rkcif_scale_ch1":0 [] -> "rkcif_scale_ch2":0 [] -> "rkcif_scale_ch3":0 [] -> "rkcif_tools_id0":0 [] -> "rkcif_tools_id1":0 [] -> "rkcif_tools_id2":0 [] pad2: Source -> "stream_cif_mipi_id0":0 [] -> "stream_cif_mipi_id1":0 [ENABLED] -> "stream_cif_mipi_id2":0 [] -> "stream_cif_mipi_id3":0 [] -> "rkcif_scale_ch0":0 [] -> "rkcif_scale_ch1":0 [] -> "rkcif_scale_ch2":0 [] -> "rkcif_scale_ch3":0 [] -> "rkcif_tools_id0":0 [] -> "rkcif_tools_id1":0 [] -> "rkcif_tools_id2":0 [] pad3: Source -> "stream_cif_mipi_id0":0 [] -> "stream_cif_mipi_id1":0 [] -> "stream_cif_mipi_id2":0 [ENABLED] -> "stream_cif_mipi_id3":0 [] -> "rkcif_scale_ch0":0 [] -> "rkcif_scale_ch1":0 [] -> "rkcif_scale_ch2":0 [] -> "rkcif_scale_ch3":0 [] -> "rkcif_tools_id0":0 [] -> "rkcif_tools_id1":0 [] -> "rkcif_tools_id2":0 [] pad4: Source -> "stream_cif_mipi_id0":0 [] -> "stream_cif_mipi_id1":0 [] -> "stream_cif_mipi_id2":0 [] -> "stream_cif_mipi_id3":0 [ENABLED] -> "rkcif_scale_ch0":0 [] -> "rkcif_scale_ch1":0 [] -> "rkcif_scale_ch2":0 [] -> "rkcif_scale_ch3":0 [] -> "rkcif_tools_id0":0 [] -> "rkcif_tools_id1":0 [] -> "rkcif_tools_id2":0 [] pad5: Source -> "stream_cif_mipi_id0":0 [] -> "stream_cif_mipi_id1":0 [] -> "stream_cif_mipi_id2":0 [] -> "stream_cif_mipi_id3":0 [] -> "rkcif_scale_ch0":0 [ENABLED] -> "rkcif_scale_ch1":0 [] -> "rkcif_scale_ch2":0 [] -> "rkcif_scale_ch3":0 [] -> "rkcif_tools_id0":0 [] -> "rkcif_tools_id1":0 [] -> "rkcif_tools_id2":0 [] pad6: Source -> "stream_cif_mipi_id0":0 [] -> "stream_cif_mipi_id1":0 [] -> "stream_cif_mipi_id2":0 [] -> "stream_cif_mipi_id3":0 [] -> "rkcif_scale_ch0":0 [] -> "rkcif_scale_ch1":0 [ENABLED] -> "rkcif_scale_ch2":0 [] -> "rkcif_scale_ch3":0 [] -> "rkcif_tools_id0":0 [] -> "rkcif_tools_id1":0 [] -> "rkcif_tools_id2":0 [] pad7: Source -> "stream_cif_mipi_id0":0 [] -> "stream_cif_mipi_id1":0 [] -> "stream_cif_mipi_id2":0 [] -> "stream_cif_mipi_id3":0 [] -> "rkcif_scale_ch0":0 [] -> "rkcif_scale_ch1":0 [] -> "rkcif_scale_ch2":0 [ENABLED] -> "rkcif_scale_ch3":0 [] -> "rkcif_tools_id0":0 [] -> "rkcif_tools_id1":0 [] -> "rkcif_tools_id2":0 [] pad8: Source -> "stream_cif_mipi_id0":0 [] -> "stream_cif_mipi_id1":0 [] -> "stream_cif_mipi_id2":0 [] -> "stream_cif_mipi_id3":0 [] -> "rkcif_scale_ch0":0 [] -> "rkcif_scale_ch1":0 [] -> "rkcif_scale_ch2":0 [] -> "rkcif_scale_ch3":0 [ENABLED] -> "rkcif_tools_id0":0 [] -> "rkcif_tools_id1":0 [] -> "rkcif_tools_id2":0 [] pad9: Source -> "stream_cif_mipi_id0":0 [] -> "stream_cif_mipi_id1":0 [] -> "stream_cif_mipi_id2":0 [] -> "stream_cif_mipi_id3":0 [] -> "rkcif_scale_ch0":0 [] -> "rkcif_scale_ch1":0 [] -> "rkcif_scale_ch2":0 [] -> "rkcif_scale_ch3":0 [] -> "rkcif_tools_id0":0 [ENABLED] -> "rkcif_tools_id1":0 [] -> "rkcif_tools_id2":0 [] pad10: Source -> "stream_cif_mipi_id0":0 [] -> "stream_cif_mipi_id1":0 [] -> "stream_cif_mipi_id2":0 [] -> "stream_cif_mipi_id3":0 [] -> "rkcif_scale_ch0":0 [] -> "rkcif_scale_ch1":0 [] -> "rkcif_scale_ch2":0 [] -> "rkcif_scale_ch3":0 [] -> "rkcif_tools_id0":0 [] -> "rkcif_tools_id1":0 [ENABLED] -> "rkcif_tools_id2":0 [] pad11: Source -> "stream_cif_mipi_id0":0 [] -> "stream_cif_mipi_id1":0 [] -> "stream_cif_mipi_id2":0 [] -> "stream_cif_mipi_id3":0 [] -> "rkcif_scale_ch0":0 [] -> "rkcif_scale_ch1":0 [] -> "rkcif_scale_ch2":0 [] -> "rkcif_scale_ch3":0 [] -> "rkcif_tools_id0":0 [] -> "rkcif_tools_id1":0 [] -> "rkcif_tools_id2":0 [ENABLED] - entity 58: rockchip-csi2-dphy0 (2 pads, 2 links) type V4L2 subdev subtype Unknown flags 0 device node name /dev/v4l-subdev1 pad0: Sink [fmt:SBGGR10_1X10/2592x1944@10000/150000 field:none] <- "m01_f_ov5648 8-0036":0 [ENABLED] pad1: Source -> "rockchip-mipi-csi2":0 [ENABLED] - entity 63: m01_f_ov5648 8-0036 (1 pad, 1 link) type V4L2 subdev subtype Sensor flags 0 device node name /dev/v4l-subdev2 pad0: Source [fmt:SBGGR10_1X10/2592x1944@10000/150000 field:none] -> "rockchip-csi2-dphy0":0 [ENABLED] -
RE: coolpi 4b support ov5647 camera moduleposted in Peripheral
@大法师 Hi, thanks for your effort!
A suggestion, why not doc your work as a tutorial?
So that everyone can help you debug the code. -
RE: coolpi 4b support ov5647 camera moduleposted in Peripheral
Great job!
Which OS? (armbian or ubuntu?)
Does it work with v4l2 or gstreamer?
Any updates on PI HQ camera?
Thanks! -
RE: cool-pi 4b: loop of logo during bootposted in Ubuntu
@大法师
The TF card is working.
Interesting....
Any thoughts? -
RE: cool-pi 4b: loop of logo during bootposted in Ubuntu
@大法师 Thanks.
The issue is because old version u-boot cannot correctly handle the ext4 file system.
I changed the mkfs.ext4 to mkfs.ext4 -O ^metadata_csum,^64bit in the github/ubuntu/telet.sh.
The img compiled by myself can boot w/o that loop logo issue but stuck somewhere in the kernel boot.
I will try the TF and let you know.I tried the method in the link. The gdisk output is as following:
sudo gdisk /dev/sdc
GPT fdisk (gdisk) version 1.0.5Partition table scan:
MBR: MBR only
BSD: not present
APM: not present
GPT: not present -
RE: cool-pi 4b: loop of logo during bootposted in Ubuntu
@大法师 Still not working.
Looks it to be a uboot problem?
I connected the serial port to board.
The uboot outputs the error: "Failed to mount ext2 filesystem...".
And the file system of image are msdos and ext4.
Any thoughts? -
RE: cool-pi 4b: loop of logo during bootposted in Ubuntu
@大法师 Interesting. It looks like the emmc is connected to the USB port. Have you tried to put the emmc on the coolpi board yet? I got the infinite loop while putting the emmca on the coolpi board. Did I miss anything in set up?Thx
-
cool-pi 4b: loop of logo during bootposted in Ubuntu
Hi,
I'm trying out the Ubuntu image downloaded from the Onedrive.
The boot process was failed that kept rebooting right after showing the cool-pi logo:- The cool-pi 4b can work with the armbian
- The ubuntu image I trried are
** 20230105-ubuntu-20.04-preinstalled-desktop-arm64-coolpi
** 20230116-ubuntu-20.04-preinstalled-desktop-arm64-coolpi
Can anyone help me with that?
Bests,
Nick -
Support PI HQ cameraposted in Peripheral
Hi, I just noticed the cool pi 4B board and wondering whether the camera MIPI interface is compatible with PI HQ camera.
If YES, is the current kernel integrated the driver?
Thanks