The [[I2C]] is a simple communication standard intended to move small amounts of data a few inches between chips. Please See [http://en.wikipedia.org/wiki/i2c I2C Wikipedia page for additional information].

+

The '''I2C'''(pronounced I square Cee) is a simple communication standard intended to move small amounts of data a few inches between chips. Please See [http://en.wikipedia.org/wiki/i2c I2C Wikipedia page for additional information].

== I2C addresses ==

== I2C addresses ==

Note that I2C addresses are 7 bit. The last bit, which is not part of the address, indicates whether this is a read or write operation. So "0001 000x" is 0x8, not 0x10.

Note that I2C addresses are 7 bit. The last bit, which is not part of the address, indicates whether this is a read or write operation. So "0001 000x" is 0x8, not 0x10.

+

+

== Powering additional I2C devices ==

+

+

You have to be careful about selecting the power source for

+

additional I2C devices. It is a temptation to use TP1702

+

which provides a spare power regulator. But keep in mind that it is steered by i2c.

+

So under bad conditions things like internal esd protection diodes

+

of the added hardware pull down the I2C lines so that

+

the system cannot communicate with the power regulator

+

and cannot power things on (including the additional I2C device)

+

but also backlight, etc. The Freerunner will not boot.

+

An example of wiring additional devices is here:

+

+

<gallery>

+

Image:I2C Wiring ext.jpg|I2C and power wiring, the red lines are the console rx/tx, which are not needed for I2C.

+

</gallery>

+

The power is stolen from the aux switch. Some uboot versions

+

(not the NOR uboot) have problems with this setup

+

(depends on i2c hardware, I guess also depends on decoupling capacitors)

= Neo1973 =

= Neo1973 =

Line 16:

Line 35:

| [[LM4857]] || 1111 100x

| [[LM4857]] || 1111 100x

|}

|}

+

+

== I2C Testpoints ==

+

From: Andy Green <andy@openmoko.com>

+

To: openmoko-devel <openmoko-devel@lists.openmoko.org>

+

Date: Wed, 02 Jul 2008 09:11:03 +0100

+

+

If you pop the top facia, I2C is available from two testpoints near the

+

debug connector. GND is not on a testpoint there but the mounting holes at

+

the bottom and you can grab it from a capacitor under the battery on the

You have to be careful about selecting the power source for
additional I2C devices. It is a temptation to use TP1702
which provides a spare power regulator. But keep in mind that it is steered by i2c.
So under bad conditions things like internal esd protection diodes
of the added hardware pull down the I2C lines so that
the system cannot communicate with the power regulator
and cannot power things on (including the additional I2C device)
but also backlight, etc. The Freerunner will not boot.
An example of wiring additional devices is here:

I2C and power wiring, the red lines are the console rx/tx, which are not needed for I2C.

The power is stolen from the aux switch. Some uboot versions
(not the NOR uboot) have problems with this setup
(depends on i2c hardware, I guess also depends on decoupling capacitors)

If you pop the top facia, I2C is available from two testpoints near the
debug connector. GND is not on a testpoint there but the mounting holes at
the bottom and you can grab it from a capacitor under the battery on the
right of the picture too.