I2CIO-8X

From Land Boards Wiki
Jump to navigation Jump to search

Tindie-mediums.png

I2CIO-8X-6104-720px.jpg

Features

  • 8 bits of Digital I/O
  • I2C interface
  • MCP23008P
  • I2C Base address = 0x20
    • Address offset jumpers (0-7)
  • Interrupt pin on I2C connectors
  • Interrupt LED
  • I2C Daisy-chain connectors
  • I2C terminators (2.2K) with selection jumpers
  • GVS (Ground/Voltage/Signal) pins for all 8-bits
  • 2.7V to 5.5V
  • 49x49mm form factor
  • (4) #4-40 mounting holes

Headers/Jumpers

I2CIO-8X CAD.PNG

J1, J2 - I2C Connectors

  • Daisy-chain connectors
  • Can ignore second connector
  • Pinout
  1. GND
  2. Power (3.3V or 5V)
  3. SDA
  4. SCL
  5. Interrupt (Out)

H8, H9 - I2C Terminators

  • Install to terminate SDA/SCL with 2.2K terminator

A0-A2 - I2C Address Offset

  • Install all three for address = 0x20

Schematics

Factory Acceptance Test

I2CIO-8X P1866 720PX.jpg

Test Station Theory of Operations

  • Test Station controls the I2C interface on the Unit Under Test (UUT)
  • Three tests
    • Internal Test
    • External Loopback Test
    • Bounce an LED Test

Test Station Set-up

  • Uses ODAS Test Station V2
    • Cable from I2C Port 0 on BLACK-PILL-HUB to UUT marked "I2C UUT" (observe orientation ground)
  • Loopback cable Connector connects pins 1 to 5, 2 to 6, 3 to 7, 4 to 8
  • Blue bin marked I2C-RPT-01/I2C-RPT-08 and I2CIO-8/I2CIO-8X
  • LED-TEST-2 Card
    • Cable with I2CIO-8 GND/SIG marked
  • Unit Under Test (UUT)
  • Attach Host Computer USB to the Arduino NANO on the Test Station
  • Run puTTY on the Host Computer
    • 9600 baud, No handshake

Card Selection

  • CPU will attempt to auto-detect the card
  • If the card cannot automatically be detected, then display the best choices menu
Checking if EEPROM is present on UUT...EEPROM is not present on UUT
Count of I2C devices in range 0x20-0x27 on UUT = 1
No external I2C mux card
Detected MCP23008
Select the board type (Other)
1 - I2CIO8 board
2 - I2CIO8X board
Select board >

  • Select 2
Init I2CIO-8X card
C=Card Tests, D=Direct, E=EEPROM, I=access Internal DIGIO32

Running Eternal Loopback Card Test

I2CIO-8X P1870-720px.jpg

  • Use loopback cable marked "I2CIO8X"
  • Select Card Tests = "C"
  • Select Run Tests = "T"
  • Observe test results
L=Loop/S=Single, T=Test, B=Bounce LEDs, I=UUT Int'l Test, X=eXit sub-menu
Testing UUT = I2CIO-8X
Test PASS = 1, FAIL = 0
  • Hit ENTER to display menu
L=Loop/S=Single, T=Test, B=Bounce LEDs, I=UUT Int'l Test, X=eXit sub-menu

Running Internal Tests

  • Remove loopback cable
  • Select Card Tests = "C"
  • Select Run Tests = "I"
  • Observe test results
L=Loop/S=Single, T=Test, B=Bounce LEDs, I=UUT Int'l Tests, X=eXit sub-menu
UUT Internal card tests
Test PASS = 2, FAIL = 0
  • Hit ENTER to display menu
L=Loop/S=Single, T=Test, B=Bounce LEDs, I=UUT Int'l Test, X=eXit sub-menu

Running Bounce LED Test

I2CIO-8X P1866 720PX.jpg

  • Attach LED-TEST-2 cable
    • I2CIO-8 GND to GND pins on 3x8 GVS
    • I2CIO-8 SIG to SIG pins on 3x8 GVS
  • Select Card Tests = "C"
  • Select Run Tests = "B"
  • Observe LEDs scanning on LED-TEST-2
L=Loop/S=Single, T=Test, B=Bounce LEDs, I=UUT Int'l Test, X=eXit sub-menu
Bounce a bit across outputs
Bouncing LEDs I2CIO8X - any key to stop
  • Hit ENTER to display the menu
Finished bouncing LEDs

Reference

Drivers/Example Code

Extensive Driver Support for Arduino, Raspberry Pi, MicroPython, ESP-32, Blue Pill Board, Cypress PSoC

Arduino Driver / Examples

BeagleBone Black

ESP32

PSOC5 Driver

Raspberry Pi Example

Raspberry Pi Pico

MMBASIC

Assembly Sheet