This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM335x GPMC w/ Two CMOS Sensors

I am currently working on a design where I am using two Aptina 10MP (MT9J003) CMOS camera sensors (data sheet attached) on a single board with a Ti Sitara AM335x Processor.

Each CMOS sensor has a 12 line parallel output @ 96MHz.  I know the GPMC can be utilized for this type of data input and has a chip select. So I would be able to hook up both sensors to the same GPMC Bus (AD[0:15]).  From my reading, I see that the GPMC accepts either a 16bit or or 8bit bus.  So does this mean I would be unable to connect my 12bit bus to this? 

Would I be OK just using separate GPIO pins for each of the camera sensors? 

This is part of one of my design projects for school.  I am used to using micro-controllers not micro-processors so there is a bit of a learning curve.  

1537.MT9J003_DS_C (3).pdf

  • Hi Shawn,
    The AM335X GPMC interface cannot be used to capture parallel camera sensor data. Parallel data output from the sensor is synchronized to the pixel clock, which is also output from the sensor. The AM335X is master on the GPMC interface - it cannot sync to input clock. Besides the GPMC_CLK is not a continuous signal - it's output from the AM335X only during transactions in synchronous mode. Sensors can be attached to the GPMC only through an FPGA (there is a Beaglebone cape already). Another option is to try and capture sensor data through the PRU_ICSS, which has a parallel input, but there is little or no software support for this (see https://github.com/beagleboard/am335x_pru_package).
  • Thank you for the explanation.  Since I am trying to use two sensors, would I be better off going with a different type of processor? Even if the processor can only handle one set of parallel data, if the price is OK we could always place two on the same board.  Would this be a practical solution.

    We actually used the BeagleBoard Black and Camera Cape for our prototype, but that camera IC that they use only supports 10 bit parallel input, not 12 so we would be unable to use that chip.  Is there a similar IC that would allow 12 bit parallel input?

    Thank you again for all the help. 

  • From the Sitara family these processors have dual video input: http://www.ti.com/lsds/ti/arm/sitara_arm_cortex_a_processor/products.page#p979=2 Input
  • I think those processor are a little over the top (1031 pins).  Would I be better off leaving the Sitara Family and looking for a different family of TI processors?  Like I said, I would be open to using 2 processors if it is cost effective.

    Or, is there something similar to the IC that is used for the BeagleBoard Camera Cape for a 10MP/12-bit parallel data sensor? 

  • As far as I know this IC is also sold separately. I'm not sure what it's parameters are, but you will probably find information on the Internet.

  • I have acquired that IC.  It only works for 10-bit parallel data, and the two camera sensors we are looking to use are 12-bit.  

    I know there are FIFOS you can purchase, but I do not know if there are anymore camera specific ones similar to the CameraCape one.