We're no longer updating This wiki!!


This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
en:u3_io_shield [2015/06/19 16:36]
odroid [I2C IO expansion block]
en:u3_io_shield [2015/07/29 10:35] (current)
odroid [I2C IO expansion block]
Line 1: Line 1:
 +====== Introduction U3 I/O shield on ubuntu ======
 +The ODROID-U3 I/O Shield board can be plugged on the neat of ODROID-U3 via tiny 8 pin and 4 pin IO connector.\\
 +The shape and dimension are exactly same as ODROID-U3. It comes with 12pcs of PCB spacers for easier and solid stacking assembly.\\
 +The IO shield has 3 blocks. ​
 +  * I2C IO expansion block
 +  * Arduino Compatible block
 +  * SPI Interface block(ODROID-U3+ and I/O shield Rev_0.3 or later)
 +[[http://​www.hardkernel.com/​main/​products/​prdt_info.php?​g_code=G138760240354|Where to buy]]
 +===== I2C IO expansion block =====
 +TI's TCA6416A I2C to Parallel Port Expander is used in this block.\\
 +The major benefit of this device is its wide VCC range.\\
 +It can operate from 1.65 V to 5.5 V on the P-port side and on the SDA/SCL side separately.\\
 +It allows bidirectional voltage-level translation GPIO Expansion between 1.8V SCL/​SDA(VCCI) and 5Volt Port(VCCP).\\
 +== Access GPIO from linux user space. ==
 +Standard Linux kernel have inside a special interface allow to access to GPIO pins.
 +1. Need to super-user permition
 +sudo su
 +[sudo] password for odroid : odroid
 +2. Load the kernel modules
 +modprobe i2c-gpio-custom bus0=4,​200,​199
 +modprobe gpio-pca953x
 +3. Set the I2C address of the module
 +echo tca6416 0x20 > /​sys/​devices/​platform/​i2c-gpio.4/​i2c-4/​new_device ​
 +4. Enable GPIO's on the board.\\
 +**If Kernel version is higher than gpio_n = 341 ~ 356**\\
 +else Kernel version is older than gpio_n = 289 ~ 304\\
 +echo NUM > /​sys/​class/​gpio/​export
 +cd  /​sys/​class/​gpio/​gpioNUM
 +echo out > direction
 +echo 1 > value
 +echo 0 > value
 +===== Arduino Compatible block =====
 +Atmel’s ATmega328P is used as a slave CPU to expand the IO port. \\
 +You can use the Arduino IDE on ODROID-U3 to build & upload your sketches to this Arduino-compatible block, \\
 +without additional/​external cable connections.\\
 +Like the Arduino Uno, it has 14 digital input/​output pins (of which 6 can be used as PWM outputs), \\
 +6 analog inputs which provides 10 bits of resolution. They operate at 5 volts range.\\
 +===== SPI Interface block(ODROID-U3+ and I/O shield Rev_0.3 or later) =====
en/u3_io_shield.txt · Last modified: 2015/07/29 10:35 by odroid
CC Attribution-Share Alike 3.0 Unported
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0