Open thaiwash opened 4 years ago
I added #include
to arducam_arch_raspberrypi.c
and copypasted the content of the .c file from https://stackoverflow.com/questions/14268530/linking-smbus-c-to-smbus-h (I know, hackish)
I got it compiling!
now I need to figure out how to plug the pins, I know how to wire 4 wires now, 3.3v, gnd and SCL and SCK
running: sudo ./ov2640_capture -c test.jpg 320x240 I get: Unable to open I2C device: No such file or directory
Hi, You may not turned on the I2C device, so you can try this link.
I have i2c working since i can run my gyro no poblem. I'm using only 4 pins right now, 3.3v, gnd and sck sda its not even detecting the camera with i2cdetect -y 1
Perhaps you have a problem with the I2C method, I suggest you refer to our example on raspberry pi. Link
Perhaps you have a problem with the I2C method, I suggest you refer to our example on raspberry pi. Link
Okay, i'll try that, what about the pin configurations, is having only sda and sck okay for spi?
The I2C pins of the camera are SCL and SDA. The SPI pins are CS、MOSI、MISO and SCK, is your I2C clock using SCK?
no, its using SCL
So, I wire up both I2C and SPI before running the program?
so, pins are BCM9 = 21 (MISO) BCM10 = 19 (MOSI) BCM11 = 23 (SCLK) BCM0 = 27 (SPI0)
I'm going to wire up SPI only.
so, pins are BCM9 = 21 (MISO) BCM10 = 19 (MOSI) BCM11 = 23 (SCLK) BCM0 = 27 (SPI0)
I'm going to wire up SPI only.
BCM0 is not used, please wire the CS to BCM17. You could see the README.
This is from the readme,
//SPI pins //set 9 (MISO), 10 (MOSI), 11 (SCLK) alt fxn 0 (SPI0)
I dont know what alt fxn means thoough..
Sorry for the readme mislead you. Just ignore the alt fxn (SPI0), which just want to tell you to use SPI0.
Lets draw a picture here, where is MISO MOSI SCLK and SPI0 on the camera?
The ArduCAM/RaspberryPi/SPI_Camera/ is used for the specified camera, as shown in the following figure, for reference: https://www.arducam.com/product/arducam-2mp-spi-camera-b0067-arduino/ Not the parallel camera in your picture.
I have the same question at first。finally ,I can compile it. but when I run the command line sudo ./ov5642_capture -c test.jpg 320x240 I get the result as below
OV5642 detected. Changed resolution1 to 320x240 Start capture CAM Capture Done Reading FIFO and saving IMG The length is 2792
but ,the size of picture is 0
WHY?
Hi, We noticed that there is no clearing FIFO in your output. Please clear FIFO before you start capture. In addition, you can print the data read from FIFO to the terminal. If the data is jpeg data, then there may be a problem with the way you save the image.
thanks .but how to clear FIFO? in fact ,I bought a ARDUCAM OV5642 and raspberry pi 4B ,I want to use the camera to take some photo or video.but I didn`t find any tutorial to do that ,so I use this lib to try
Are you using SPI camera on Raspberry Pi? If yes, please refer to https://github.com/ArduCAM/RaspberryPi/tree/master/SPI_Camera
of cause I try it before . but when run the command line sudo ./run_Arducam_Demo But I can't get any results, and the program won't report an error.
Hi, For PI4, please execute the following command to update the wiringpi library.
Then you need to make the following changes in bcm283_board_driver.h:
Finally, recompile and execute.
according to your advise,I install the latest version of wiringpi,and change the bcm283_board_driver.h file But there's a problem.
I connect the ARDUCAM ov5642 and pi4 according tothe picture。
Hi, Please refer to this connection.
finally,it works! but,my mobile can not connect to the camera, I have check the IP and port 。 my mobile status is always connecting...
here is the screenshot
Hi, Due to our negligence, there is a problem with the latest version code. Please use the code of this version. The part that needs to be modified has been explained in the reply above. https://github.com/ArduCAM/RaspberryPi/tree/9ebf547e2795f81835d0490a957aaad6e70e6595/SPI_Camera
I am sorry but I really know how to download this version of demo. can you show me the command?
thanks for your help. I can use it now . but I still have a question ,can I use it only by mobile? can I save photoes on raspberry derecctly?
Hi,
You can save images directly to the Raspberry Pi, but there is no example of directly saving images on our Raspberry Pi. We suggest you refer to the Raspberry Pi code and the Arduino version code for testing. We are very busy lately, sorry for not being able to write a detailed example for you.
in fact, I got the code by git clone https://github.com/ArduCAM/Arduino.git I told you that I capture a photo but the size is zero now ,I change the connection according to the picture you show ,now I got a error show as below
SPI interface error!
Hello, The repository you cloned above is an example of using the SPI camera on the Arduino platform. You can refer to the process of taking pictures and saving images, which cannot be used directly on the Raspberry Pi. Now that you have run through our reference example on the Raspberry Pi, I suggest you modify it on the run through example. In addition, the SPI interface error is either a connection error or a problem with the spi driver.
I tried to raspberry this, and i went to ArduCAM/examples/RaspberryPi and typed make
g++ -std=c++0x -I./ -I../../../ArduCAM -c arducam_arch_raspberrypi.c arducam_arch_raspberrypi.c: In function ‘uint8_t arducam_i2c_word_write(uint16_t, uint8_t)’: arducam_arch_raspberrypi.c:125:3: error: ‘i2c_smbus_write_word_data’ was not declared in this scope i2c_smbus_write_word_data(FD, reg_H, value); ^
~~~~~~~~ arducam_arch_raspberrypi.c:125:3: note: suggested alternative: ‘i2c_smbus_ioctl_data’ i2c_smbus_write_word_data(FD, reg_H, value); ^~~~~~~~~ i2c_smbus_ioctl_data arducam_arch_raspberrypi.c: In function ‘uint8_t arducam_i2c_word_read(uint16_t, uint8_t)’: arducam_arch_raspberrypi.c:140:7: error: ‘i2c_smbus_write_byte_data’ was not declared in this scope r = i2c_smbus_write_byte_data(FD,reg_H,reg_L); ^~~~~~~~~ arducam_arch_raspberrypi.c:140:7: note: suggested alternative: ‘i2c_smbus_ioctl_data’ r = i2c_smbus_write_byte_data(FD,reg_H,reg_L); ^~~~~~~~~ i2c_smbus_ioctl_data arducam_arch_raspberrypi.c:143:13: error: ‘i2c_smbus_read_byte’ was not declared in this scope regDat = i2c_smbus_read_byte(FD); ^~~~~~~ arducam_arch_raspberrypi.c:143:13: note: suggested alternative: ‘i2c_smbus_data’ *regDat = i2c_smbus_read_byte(FD); ^~~~~~~ i2c_smbus_data