A method of producing an optoelectronic circuit comprising: forming a first
optoelectronic element of the circuit on a first surface of a
semiconductor substrate; forming a second optoelectronic element of the
circuit on a second surface of the semiconductor substrate; and wherein
the first and second optoelectronic elements communicate via current
transmitted through the substrate.