aliceander Posted June 29, 2016 Posted June 29, 2016 I'm trying to get a csi cam from aliexpress to work on my orange pi one running Armbian_5.10_Orangepih3_Debian_jessie_3.4.112. I've modified the fex and tried modding the gc2035 kernel driver, and tried several different applications. Everything has failed so far. Are there any resources that describe what I need to do to get it to work? All hardware is new (with a 3a power supply too). Armbian seems to be the best distro to use, and I think I'm running the latest armbian version which includes many fixes. I've also updated and upgraded the os once installed to include anything fixed upstream. This is the aliexpress cam I got for the orange pi one: http://bit.ly/299F3Rg As you can see, there's not much information. In fact I'm not even sure of the camera specs, but the price was right for a test project along with the orange pi one. I'm really hoping this will work. The orange pi one with a csi cam is a great price point and minimal size to use for bird watching stations. At this point I'd appreciate any suggestions (I will not take offense at any legitimate suggestions since I'm stuck).
Tido Posted June 29, 2016 Posted June 29, 2016 I went to "allwinner H3" section and I found two threads about camera, on the first page: http://forum.armbian.com/index.php/topic/957-orange-pi-c%C3%A2mera-gc2035-works-fine-with-v4l2-applications/ http://forum.armbian.com/index.php/topic/1213-ov5640-camera-with-orange-pi/ 1
aliceander Posted June 30, 2016 Author Posted June 30, 2016 Following one of the links I got the camera working. As I understand it, there is a problem in the v4l2 set of code where the index of current input (VIDIOC_S_INPUT) is not defined correctly. Rather than fixing every instance in upstream code, Leonardo Lontra rolled a companion set of code that will publish the camera data to /dev/video1 rather than the default /dev/video0. the only problem as I see it is that the program vidcopy has to run in the background all the time eating up cpu cycles. It'd be ideal if the camera driver worked. So the good news -- it works! The bad news, it doesn't look like a very good camera (best resolution so far is 800x600). But, it is an inexpensive csi cam. I'm now looking if this can be fixed in software or if it is a limitation of the camera (I did not see specs in the listing). I'm running Armbian 5.10. It looks like release 5.15 may have an improved camera driver for the cheap gc2035 (https://github.com/avafinger/gc2035). Until 5.15 is released I may see if the avafinger gc2035 driver works. It'll be fun to find all the dependencies I need to compile and test the modified driver. But when all is done, I may need to look for a better csi camera for my orange pi one. I'm glad I got this (it was cheap), but I'd really like at least a 5MP, and hopefully an 8MP, 15MP or better. I like the orange pi one feature set; just need to find a good camera to pair with it. Thank your for the pointers. I've looked around this forum a lot in the past couple of days and have found a lot.
tkaiser Posted June 30, 2016 Posted June 30, 2016 I'm running Armbian 5.10. It looks like release 5.15 may have an improved camera driver for the cheap gc2035 (https://github.com/avafinger/gc2035). i added @lex' improved driver on June 11th and Igor provided 5.14 stuff 12 days later. So all that's needed is just an 'apt-get upgrade' to get the improved gc2035 version. For module loading options see above. If in doubt check the output from 'sudo armbianmonitor -u' (package list -- you should be on 5.14 already -- no idea why 5.15 still isn't released)
aliceander Posted June 30, 2016 Author Posted June 30, 2016 I see a lot about my system at the url from armbianmonitor, but nothing about packages. uname -aLinux opo1 3.4.112-sun8i #8 SMP PREEMPT Tue May 31 19:00:17 CEST 2016 armv7l GNU/Linux I've run the following: apt-get update apt-get upgrade apt-get dist-upgrade And this is what I get when I look at packages with sun8 (does this mean I'm running 5.13?) dpkg-query -l | grep sun8ii linux-firmware-image-sun8i 5.13 armhf Linux kernel firmware, version 3.4.112-sun8iii linux-headers-sun8i 5.13 armhf Linux kernel headers for 3.4.112-sun8i on armhfii linux-image-sun8i 5.13 armhf Linux kernel, version 3.4.112-sun8i
aliceander Posted July 1, 2016 Author Posted July 1, 2016 I just checked the armbian download for the orange pi one and noticed that 5.14 is downloadable. I'm going to grab it and see how it works.
aliceander Posted July 1, 2016 Author Posted July 1, 2016 Restarted with Armbian_5.14_Orangepione_Debian_jessie_3.4.112 image. Ran apt-get update, apt-get upgrade (and apt-get install fswebcam). Looks like I have a 5.15 system. dpkg-query -l | grep sun8 ii linux-headers-sun8i 5.15 armhf Linux kernel headers for 3.4.112-sun8i on armhf ii linux-image-sun8i 5.15 armhf Linux kernel, version 3.4.112-sun8i But it looks like I still have problem accessing /dev/video0 modprobe gc2035modprobe vfe_v4l2 fswebcam foo.jpg--- Opening /dev/video0...Trying source module v4l2.../dev/video0 opened.No input was specified, using the first.Adjusting resolution from 384x288 to 640x480.--- Capturing frame...GD Error: gd-jpeg: JPEG library reports unrecoverable error: Not a JPEG file: starts with 0x18 0x18Captured frame in 0.00 seconds.--- Processing captured image...Writing JPEG image to 'foo.jpg'.
aliceander Posted July 11, 2016 Author Posted July 11, 2016 tl;dr -- get error "NOT_SUPPORT_THIS_FUNCTION:sun8iw7p1_isp_set_table_addr, line: 372" on Orange Pi One with gc2035 on expansion board from aliexpress running fresh Ubuntu installation/upgrade. Details: I gave another shot to the aliexpress gc2035 cam on expansion board to work with an orange pi one this morning. To mix it up a little, I started with a fresh Ubuntu xenial installation, and updated it (update,upgrade) to bring it up to 5.16. I still cannot get it the cam work. The new gc2035 mods are included, so I'm unsure which path to follow from here. modprobe gc2035modprobe vfe-v4l2 (this creates /dev/video0) fswebcam foo.jpg--- Opening /dev/video0...Trying source module v4l2.../dev/video0 opened.No input was specified, using the first.Adjusting resolution from 384x288 to 640x480.--- Capturing frame...GD Error: gd-jpeg: JPEG library reports unrecoverable error: Not a JPEG file: starts with 0x03 0x03Capturd frame in 0.00 seconds.--- Processing captured image...Writing JPEG image to 'foo.jpg'. dmesg[ 364.847304] [VFE]vfe_open[ 364.847339] [VFE]..........................vfe clk open!.......................[ 364.847396] [VFE]vfe_open ok[ 364.848269] [VFE]Set vfe core clk = 108000000, after Set vfe core clk = 100000000[ 364.848303] NOT_SUPPORT_THIS_FUNCTION:sun8iw7p1_isp_set_table_addr, line: 372[ 364.872191] [VFE]mclk on[ 364.896349] [CSI][GC2035]enable oe![ 364.896782] [CSI][GC2035]V4L2_IDENT_SENSOR=2035[ 365.385284] [VFE_WARN]v4l2 sub device queryctrl (null) unsuccess![ 365.784673] [VFE]buffer_setup, buffer count=4, size=307200[ 365.950541] [VFE]capture video mode![ 366.071002] [VFE]capture video first frame done![ 366.080668] [VFE]vfe_close[ 366.080701] [CSI][GC2035]disalbe oe![ 366.092823] [VFE]mclk off[ 366.104964] [VFE]..........................vfe clk close!.......................[ 366.105022] [VFE]vfe_close end
wildcat_paris Posted July 11, 2016 Posted July 11, 2016 @aliceander re-read http://forum.armbian.com/index.php/topic/1213-ov5640-camera-with-orange-pi/page-3(newer messages) "NOT_SUPPORT_THIS_FUNCTION:sun8iw7p1_isp_set_table_addr" doesn't seems a fatal issue (I am not sure I understand well) do you have some data in the file? I am also wondering is the output is RAW instead of jpeg ???
aliceander Posted July 11, 2016 Author Posted July 11, 2016 I read the thread and tried a couple of things. The output of fswebcam is a legitimate jpg file (all black with the default red line caption on the bottom). I don't think it's RAW format since the output is a real jpg, just one without an image data.. I'm not familiar with guvcview but I installed all the dependencies I could find, grab the source code, and compiled. I noticed two things right away; and one of them is something I should have made clear; I'm running headless (Orange Pi ONE, CSI Cam on extension board, hardwire Ethernet, and a 5V3A power supply). guvcview looks like a display program, and since I don't have a display it broke with (GUI) Gtk3 can't open display. Also, it seemed guvcview might be looking for a USB camera (V4L2_CORE: Unable to find parent usb device.V4L2_CORE). Right now I'm checking if this is true and if I can specify cam source to change it. One of the threads mentioned a modified fswebcam to work with orange pi H3 only. I grabbed that source code but it behaved exactly like the fswebcam I installed from the apt-get repository; it created an all-black image with the red-line caption on the bottom.
wildcat_paris Posted July 11, 2016 Posted July 11, 2016 I hope someone with the proper skills and spare time will read the thread. it looks like the cam doesn't output something proper. btw, once while on vacations, I put usb webcams to watch inside my flat on my linux box. I was using ssh and a tunnel to vncserver. it is not efficient nor proper but at least I could see frames from my flat far away... vncserver may replace in a limited way a screen.
@lex Posted July 15, 2016 Posted July 15, 2016 fswebcam foo.jpg --- Opening /dev/video0... Trying source module v4l2... /dev/video0 opened. No input was specified, using the first. Adjusting resolution from 384x288 to 640x480. --- Capturing frame... GD Error: gd-jpeg: JPEG library reports unrecoverable error: Not a JPEG file: starts with 0x18 0x18Captured frame in 0.00 seconds. --- Processing captured image... Writing JPEG image to 'foo.jpg'. Please, try running: fswebcam --Hflip 1 -r 640x480 -p YUV420P - > cam640x480_1.jpg and check the output
aliceander Posted July 16, 2016 Author Posted July 16, 2016 Should I pass any arguments to "modprobe gc2035" before testing the fswebcam command? I think I missed something because the result is a text file called cam640x480_1.jpg with the contents being the fswebcam help (the text from fswebcam -help). Also, I don't think anything was logged (before running the command I cleaned dmesg with "dmesg -c", and after running the command dmesg returns nothing). I updated the system before testing too, so I have all available patches and updates installed.
@lex Posted July 16, 2016 Posted July 16, 2016 If you don't pass arguments to modprobe gc2035 it assumes modprobe hres=0 Run as root: git clone https://github.com/avafinger/fswebcam cd fswebcam sudo apt-get install libgd2-xpm-dev libjpeg-dev libpng-dev answer Y sudo apt-get install libfreetype6-dev answer Y ./configure --prefix=/usr --disable-v4l1 --enable-32bit-buffer make make install modprobe -r -v vfe_v4l2 modprobe -r -v gc2035 modprobe gc2035 hres=0 mclk=34 modprobe vfe_v4l2 and: fswebcam --Hflip 1 -r 640x480 -p YUV420P - > cam640x480_1.jpg if your image is mirrored, run: fswebcam -r 640x480 -p YUV420P - > cam640x480_1.jpg Good Luck!
tkaiser Posted July 16, 2016 Posted July 16, 2016 If you don't pass arguments to modprobe gc2035 it assumes modprobe hres=0 Run as root: git clone https://github.com/avafinger/fswebcam cd fswebcam sudo apt-get install libgd2-xpm-dev libjpeg-dev libpng-dev answer Y sudo apt-get install libfreetype6-dev answer Y ./configure --prefix=/usr --disable-v4l1 --enable-32bit-buffer make make install modprobe -r -v vfe_v4l2 modprobe -r -v gc2035 modprobe gc2035 hres=0 mclk=34 modprobe vfe_v4l2 I followed these procedures and can confirm that it works: tk@orangepipc:~$ fswebcam --Hflip 1 --rotate 180 -r 640x480 -p YUV420P - > cam640x480_1.jpg --- Opening /dev/video0... Trying source module v4l2... /dev/video0 opened. No input was specified, using the first. rc: 0 - get value: 1 rc: 0 - set value: 1 --- Capturing frame... Captured frame in 0.00 seconds. --- Processing captured image... Flipping image horizontally. Flipping image vertically. Writing JPEG image to '-'. 1
aliceander Posted July 16, 2016 Author Posted July 16, 2016 Your magic incantations work perfectly! I added "gc2035 hres=0 mclk=34" and "vfe_v4l2" to /etc/modules and rebooted, but that didn't seem to have the same effect as when they were added manually. Perhaps /etc/modules doesn't like arguments? If so, is there a way to make it stick? Should /etc/modules accept arguments? Also, "-p YUV420P" seems critical for fswebcam. I'll study up on that this weekend so I'll know more about that soon. On a minor note, I may have damaged my little camera by checking, undoing, redoing, rechecking, undoing, and redoing the cables countless times trying to be sure I didn't have things loose or in backwards. My jpg image has a lot of bright green horizontal stripes across the bottom. I have another new orange pi one, camera, and power supply, so I'll set that up from scratch to verify. My power supply is 5V3A, so I don't think that should be a problem. The main thing is that I can get images!!!! 1
zador.blood.stained Posted July 16, 2016 Posted July 16, 2016 I added "gc2035 hres=0 mclk=34" and "vfe_v4l2" to /etc/modules and rebooted, but that didn't seem to have the same effect as when they were added manually. Perhaps /etc/modules doesn't like arguments? If so, is there a way to make it stick? Should /etc/modules accept arguments? Yes, /etc/modules should support module parameters, but you can also put gc2035 in /etc/modules without any arguments and put options gc2035 hres=0 mclk=34 in /etc/modprobe.d/<some-file-name>.conf 1
aliceander Posted July 16, 2016 Author Posted July 16, 2016 Your suggestions worked. I added (well, uncommented) the following two lines in /etc/modules gc2035vfe_v4l2 And created /etc/modprobe.d/gc2035.conf with the following options gc2035 hres=0 mclk=34 The modules now load as I'd like across reboots. 1
wildcat_paris Posted July 16, 2016 Posted July 16, 2016 (edited) @aliceander When possible, please, send us bird images from your special device @TheTeam: Tido, Alex, Thomas, Mikhael you rock for the birds note: I only take the credit for adding [bird watching station] in the title note: if someone wants to preorder the Pepsi Co Phablet http://www.gearbest.com/cell-phones/pp_399893.html we could port Armbian... no, I am kidding Edited July 16, 2016 by wildcat_paris ads added 1
aliceander Posted July 16, 2016 Author Posted July 16, 2016 I would also like to thank everyone too. I haven't been derided for asking silly questions (and, trust me, I KNOW some of them are dumb; but I'll only stay ignorant until I ask and learn). Suggestions are quick and varied, and necessary changes are quickly implemented. I consider this an ideal environment. I found this forum because I'm exploring different form factors. So many choices! My recent experience is with the orange pi one, but I'm really excited about the NanoPi Neo. I found the discussion in another thread about that interesting so I ordered two, and when I get them I plan on following the suggestions to test armbian. 1
aliceander Posted July 16, 2016 Author Posted July 16, 2016 Using all brand new equipment (an Orange Pi One, gc2035 cam on expansion board, 5V3A power supply, and fresh jessie server image updated/upgraded to 5.16) I can verify that steps suggested by @lex work and I can get a nice image from my CSI video cam with fswebcam. domo arigatou gozaimasu 1
@lex Posted July 16, 2016 Posted July 16, 2016 Important things to note: gc2035 hres=0 mclk=34 This is used to increase FPS at lower resolutions (640x480) if you intend to use higher resolution use only gc2035 hres=0 or choose a better balance between FPS and image quality. (hres=1, or 2,....) BTW: --Hflip 1 --rotate 180 seems to be redundant ? --Hflip rotates the images like a mirror (by the sensor), and --rotate 180 (by software) maybe rotate again...? *** edited HFlip to Hflip and VFlip to Vflip ***: --Hflip = flip the image horizontally [0,1] --Vflip = flip the image vertically [0,1] --exposure = exposure from (-4 to 4) This could also be changed directly on FEX: vip_dev0_vflip = 1 [0,1]vip_dev0_hflip = 0 [0,1] hres=0 => 640x480|1280x720|1600x1200 and 15 fps (good light condition), 640x480 good quality hres=1 => 800x600|1600x1200 and 10 fps (good light condition), 800x600 good quality hres=2 => 320x240|640x480|800x600 and 20 fps (good light condition), 640x480 medium quality hres=3 => 320x240|352x288|640x480 and 15 fps (good light condition), low quality, cropped to this window sizes
sle118 Posted September 1, 2016 Posted September 1, 2016 (edited) ***RESOLVED !!*** See picture below. I had reversed the cable on the OrangePi PC ... d'oh.... All, IV been scratching my head on this for a while now and can't get the camera to work on a orange pi pc. I'm trying to experiment with open CV in the OPI to document cases of speeding cars on my street... So you could call this a speeder watching station Any help is appreciated!Here is my camera. Below are the steps I took to get it to work.http://cloud.tapatalk.com/s/57c7a32d7b74f/IMG_20160831_204048.jpg? I have the OrangePi PC running the following version [color=#000080]#uname -a Linux orangesqueeze 3.4.112-sun8i #14 SMP PREEMPT Tue Jul 5 16:28:14 CEST 2016 armv7l GNU/Linux [/color] From the instructions I saw in various places, I opted to load the camera and vfe modules like this [color=#000080]#modprobe gc2035 hres=0 mclk=34 #modprobe vfe_v4l2 [/color] Once the modules were loaded, I tried capturing a picture [color=#000080]#fswebcam --Hflip 1 --rotate 180 -r 640x480 -p YUV420P - > cam640x480_1.jpg --- Opening /dev/video0... Trying source module v4l2... /dev/video0 opened. No input was specified, using the first. Unable to query input 0.[/color] [color=#ff0000]VIDIOC_ENUMINPUT: Invalid argument[/color] Checking dmesg for signs of something going wrong [color=#000080]#dmesg [20856.904847] [VFE]Welcome to Video Front End driver [20856.905540] [VFE]pdev->id = 0 [20856.905561] [VFE]dev->mipi_sel = 0 [20856.905576] [VFE]dev->vip_sel = 0 [20856.905591] [VFE]dev->isp_sel = 0 [20856.911816] [VFE_WARN]vfe vpu clock is null [20856.920117] [VFE_WARN]os_gpio_request failed, gpio_name=, gpio=110, ret=0xfffffff0, -16 [20856.920266] [VFE]..........................vfe clk open!....................... [20856.920317] [ISP] isp platform_id = 5! [20856.920580] [VFE]vfe_init end [20856.930304] [VFE]probe_work_handle start! [20856.930349] [VFE]v4l2 subdev register input_num = 0 [20856.930370] [VFE]vfe sensor detect start! input_num = 0 [20856.930396] [VFE]Find sensor name is "gc2035", i2c address is 78, type is "YUV" ! [20856.930420] [VFE]Sub device register "gc2035" i2c_addr = 0x78 start! [20856.930447] [VFE]v4l2_device_register_subdev return 0 [20856.930465] [VFE]registered sensor subdev is OK! [20856.930481] [VFE]Check sensor! [20856.942619] [VFE]mclk on[/color] [color=#ff0000][20856.998169] [VFE CCI_0 ERR] Status error at addr_8bit = 78, wr_flag = 1, val = 100f0 [20856.998491] [VFE CCI_0 ERR] Status error at addr_8bit = 78, wr_flag = 1, val = 100f0 [20856.998805] [VFE CCI_0 ERR] Status error at addr_8bit = 78, wr_flag = 1, val = 100f0 [20856.998832] [CSI_ERR][GC2035]sensor_read err at sensor_detect! [20856.998851] [CSI_ERR][GC2035]chip found is not an target chip.[/color] [color=#000080][20857.042188] [VFE]mclk off [20857.066364] [VFE]vfe sensor subdev unregister! [20857.066393] [VFE]Sub device register "gc2035" failed! [20857.066413] [VFE_ERR]vfe sensor register check error at input_num = 0 [20857.066931] [VFE]V4L2 device registered as video0 [20857.066996] [VFE]..........................vfe clk close!....................... [20857.067035] [VFE]probe_work_handle end! [20857.075411] [VFE]vfe_open [20857.075443] [VFE]..........................vfe clk open!....................... [20857.075499] [VFE]vfe_open ok [20857.076229] [VFE]vfe_close [20857.076252] [VFE]vfe select input flag = 0, s_input have not be used . [20857.076282] [VFE]..........................vfe clk close!....................... [20857.076330] [VFE]vfe_close end [/color][color=#a9a9a9][21134.927135] rtw_set_encryption [21134.927168] rtw_set_encryption, set group_key, TKIP [21134.927186] set_group_key [21134.929371] SetHwReg8192CU, 5126, RCR= 7000228e[/color][color=#000080] [21713.151828] [VFE]vfe_open [21713.151867] [VFE]..........................vfe clk open!....................... [21713.151933] [VFE]vfe_open ok [21713.152663] [VFE_ERR]input index(0) > dev->dev_qty(1)-1 invalid!, device_valid_flag[0] = 0 [21713.154676] [VFE]vfe_close [21713.154709] [VFE]vfe select input flag = 0, s_input have not be used . [21713.154741] [VFE]..........................vfe clk close!....................... [21713.154793] [VFE]vfe_close end[/color] Was I running the correct gc2035 module? Let's check [color=#000080]#modinfo gc2035 filename: /lib/modules/3.4.112-sun8i/kernel/drivers/media/video/sunxi-vfe/device/gc2035.ko license: GPL description: A low-level driver for GalaxyCore gc2035 sensors author: @lex author: leonardo lontra author: raymonxiu alias: i2c:gc2035 depends: cci,vfe_subdev intree: Y vermagic: 3.4.112-sun8i SMP preempt mod_unload modversions ARMv7 p2v8 parm: hres:hres=0 (640x480|1280x720|1600x1200 - 15 FPS), hres=1 (800x600|1600x1200 - 10 FPS), hres=2 (320x240|640x480|800x600 - 20 FPS), hres=3 (320x240|352x288|640x480 - 15 FPS) (default=0) (uint) parm: mclk:mclk override (default=0) (uint) parm: frate:frate override (default=0) (uint) [/color] Here is how I setup my fex, and my guess is that there is something wrong there. [csi0] vip_used = 1 vip_mode = 0 vip_dev_qty = 1 vip_define_sensor_list = 0 vip_csi_pck = port:PE00 vip_csi_mck = port:PE01 vip_csi_hsync = port:PE02 vip_csi_vsync = port:PE03 vip_csi_d0 = port:PE04 vip_csi_d1 = port:PE05 vip_csi_d2 = port:PE06 vip_csi_d3 = port:PE07 vip_csi_d4 = port:PE08 vip_csi_d5 = port:PE09 vip_csi_d6 = port:PE10 vip_csi_d7 = port:PE11 vip_csi_sck = port:PE12 vip_csi_sda = port:PE13 vip_dev0_mname = "gc2035" vip_dev0_pos = "front" vip_dev0_lane = 1 vip_dev0_twi_id = 2 vip_dev0_twi_addr = 120 vip_dev0_isp_used = 0 vip_dev0_fmt = 0 vip_dev0_stby_mode = 0 vip_dev0_vflip = 1 vip_dev0_hflip = 1 vip_dev0_iovdd = "" vip_dev0_iovdd_vol = 2800000 vip_dev0_avdd = "" vip_dev0_avdd_vol = 2800000 vip_dev0_dvdd = "" vip_dev0_dvdd_vol = 1800000 vip_dev0_afvdd = "" vip_dev0_afvdd_vol = 2800000 vip_dev0_power_en = port:PD14 vip_dev0_reset = port:PE14 vip_dev0_pwdn = port:PE15 vip_dev0_flash_en = vip_dev0_flash_mode = vip_dev0_af_pwdn = vip_dev0_act_used = 0 vip_dev0_act_name = "ad5820_act" vip_dev0_act_slave = 24 [camera_list_para] camera_list_para_used = 1 ov7670 = 0 gc0308 = 0 gt2005 = 0 hi704 = 0 sp0838 = 0 mt9m112 = 0 mt9m113 = 0 ov2655 = 0 hi253 = 0 gc0307 = 0 mt9d112 = 0 ov5640 = 0 gc2015 = 0 ov2643 = 0 gc0329 = 0 gc0309 = 0 tvp5150 = 0 s5k4ec = 0 ov5650_mv9335 = 0 siv121d = 0 gc2035 = 1 [csi0_para] csi_used = 1 csi_dev_qty = 1 csi_stby_mode = 0 csi_twi_id = 1 csi_twi_addr = 0x78 csi_mname = "gc2035" csi_if = 0 csi_iovdd = "" csi_avdd = "" csi_dvdd = "" csi_vflip = 0 csi_hflip = 0 csi_flash_pol = 0 csi_mode = 0 csi_vol_iovdd = 2800 csi_vol_dvdd = 1800 csi_vol_avdd = 2800 csi_facing = 0 csi_flash_pol = 0 csi_mode = 0 csi_vol_iovdd = 2800 csi_vol_dvdd = 1800 csi_vol_avdd = 2800 csi_facing = 0 csi_pck = port:PE00 csi_ck = port:PE01 csi_hsync = port:PE02 csi_vsync = port:PE03 csi_d0 = port:PE04 csi_d1 = port:PE05 csi_d2 = port:PE06 csi_d3 = port:PE07 csi_d4 = port:PE08 csi_d5 = port:PE09 csi_d6 = port:PE10 csi_d7 = port:PE11 csi_reset = port:PH14 csi_power_en = port:PH16 csi_stby = port:PH19 csi_flash = "" csi_af_en = "" There are 2 csi sections (csi0 and csi0_para) and I am unsure which one the driver is actually considering. There also seemed to be variations on the pinout that was needed and my guess is that my problem might be there. Unless there is a physical issue with the connector I am using? I bought the connector for the OPI PC after ordering the camera separately and realizing that it could not be connected directly. I am familiar with embedded programming and GPIO (mostly the ESP8266 and arduino platform), but I have not yet put my head around the linux layers around hardware. Edited September 1, 2016 by sle118
sle118 Posted September 1, 2016 Posted September 1, 2016 **** RESOLVED *** the ribbon cable was flipped over.... I have done additional validation on my orangepi pc and tried detecting the i2c devices. Well... I guess no device is detected after all and this could explain why the camera is not responding... Where should I go from there? #i2cdetect -y 0 && i2cdetect -y 1 0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- -- -- -- -- -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 70: -- -- -- -- -- -- -- -- 0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- -- -- -- -- -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 70: -- -- -- -- -- -- -- -- and dmesg full of this Sep 1 10:43:59 localhost kernel: [ 8113.947297] sunxi_i2c_do_xfer()985 - [i2c1] incomplete xfer (status: 0x48, dev addr: 0x5a) Sep 1 10:43:59 localhost kernel: [ 8113.947539] sunxi_i2c_do_xfer()985 - [i2c1] incomplete xfer (status: 0x48, dev addr: 0x5b) Sep 1 10:43:59 localhost kernel: [ 8113.947779] sunxi_i2c_do_xfer()985 - [i2c1] incomplete xfer (status: 0x48, dev addr: 0x5c) Sep 1 10:43:59 localhost kernel: [ 8113.948020] sunxi_i2c_do_xfer()985 - [i2c1] incomplete xfer (status: 0x48, dev addr: 0x5d) Sep 1 10:43:59 localhost kernel: [ 8113.948261] sunxi_i2c_do_xfer()985 - [i2c1] incomplete xfer (status: 0x48, dev addr: 0x5e) Sep 1 10:43:59 localhost kernel: [ 8113.948499] sunxi_i2c_do_xfer()985 - [i2c1] incomplete xfer (status: 0x48, dev addr: 0x5f) Sep 1 10:43:59 localhost kernel: [ 8113.948798] sunxi_i2c_do_xfer()985 - [i2c1] incomplete xfer (status: 0x20, dev addr: 0x60)
thedon Posted August 5, 2017 Posted August 5, 2017 Any update? was this issue resolved? even I am getting the following [VFE_ERR]input index(-1) > dev->dev_qty(1)-1 invalid!
Recommended Posts