Interfacing a camera module (Was: Weird hardware mod ???)

Rask Ingemann Lambertsen rask at sygehus.dk
Sun Apr 19 15:50:02 CEST 2009


On Wed, Jan 21, 2009 at 02:44:50AM -0800, scholbert wrote:

> after having a deeper look into the schematics of freerunner, i realized
> that most of the pins of the Glamo camera interface are physically
> accessible at the resistor networks RP1801..1804.
> 
> This led me to a wicked idea:
> Solder some thin wires to the dedicated signals and use this interface for a
> camera module.

   It really is a shame that no Glamo docs are available, because it would
be the best solution since
   - there's a readily available parallel bus with associated clock signals,
   - there'd (in principle) rarely be a need to transfer the camera data across
     the slow bus out of the Glamo because the destination would be either
     the frame buffer for display or the SD card interface for capture.

   There are enough unused GPIO pins on the S3C2442B for an 8-bit parallel
bus, but the ones that are connected to a test point or are otherwice
accessible are scattered all over the place, so you can't just set up a DMA
channel to pull the data from a GPIO port register. You'd need to use the
CPU to read the GPIO ports and combine the bits millions of times per
second. I don't know if that is feasible.

   FWIW, the GPIO pins that are either unused or could be reassigned are
these (not including the many that end underneath the 2442b and are thus
impossible to get to):

GPB8	-		R7609	EXTINT0		(NXDREQ1)

GPC7	H-TP1538
GPC13	H-TP1533	R1548	pcb_revision1
GPC15	H-TP1534

GPD0	H-TP1535
GPD3	H-TP1536	R1549	pcb_revision0
GPD4	H-TP1537
GPD14	-		R1762	HDQ

GPE13	H-TP4715	-	SPI_CLK0
GPE12	H-TP4716	-	SPI_MOSI0
GPE11	H-TP4717	-	SPI_MISO0

GPF3	H-TP4705	-	EINT3

GPG0	-		R1547	G2_INT		(NC)
GPG2	H-TP4718	-	SS0

GPH9	H-TP1532

GPJ5	-		R1813	3D_RST
GPJ8	-		R1546	KEEPACT		(NC)
GPJ9	-		R1545	SHUTDOWN	(NC)

*Glamo 3362*

DGPIO0	H-TP1801
DGPIO1	H-TP1802
DGPIO2	H-TP1803
DGPIO3	H-TP1804

   We do however have a completely unused SPI interface going to the debug
board connector and nearby test points H-TP4715 - H-TP4718. The SC32442B
manual doesn't say how fast the SPI interface can go as a slave device, but
even if the 25 MHz maximum specified for master mode is also the maximum for
slave mode, it would be a substantial improvement over USB 1.1. This could
be useful because:
 a) There are cameras which output image data over a serial bus[2].
 b) There are chips to convert a camera parallel bus to a serial bus[1].
Both use differential signalling on the serial output, though. Also, the
device [1] is not bit transparent, for example, so 10-bit Bayer and JPEG
formats are not supported. A plain old shift register and a x8 PLL oscilator
for the serial clock would do the trick.

   The cameras tend to use 1.8 V, 2.5 V or 2.8 V, so some level shifting on
at least the I2C bus (debug connector or test points H-TP4703 and H-TP4704)
is necessary.

   The GTA01 also has the I2C interface and unused SPI interface available
at the debug connector. Is anybody with a GTA01 reading this? Comments?

[1] http://www.ti.com/lit/gpn/sn65lvds315
[2] http://www.st.com/stonline/stappl/productcatalog/app?path=/comp/stcom/PcStComRPNTableView.onClickFromProductTree&primaryheader=Application%20Specific%20for%20Imaging&secondaryheader=Camera%20Modules%20-%20Standalone&subclassheader=Auto-focus%20-%20Standalone&subclassid=1056.0&count=4&producttype=

-- 
Rask Ingemann Lambertsen
Danish law requires addresses in e-mail to be logged and stored for a year



More information about the hardware mailing list