Difference between pages "I2CIO-8" and "I2CIO-8X"

From Land Boards Wiki
(Difference between pages)
Jump to navigation Jump to search
 
 
Line 1: Line 1:
[[File:tindie-mediums.png|link=https://www.tindie.com/products/land_boards/i2c-demo-board-mcp23008-i2cio-8/?pt=ac_prod_search]]
+
[[File:tindie-mediums.png|link=https://www.tindie.com/products/land_boards/i2c-8-bit-io-mcp23008-i2cio-8x/]]
 +
 
 +
[[File:I2CIO-8X-6104-640px.jpg]]
  
 
<video type="youtube">omUSJpGLv4A</video>
 
<video type="youtube">omUSJpGLv4A</video>
 
[[File:I2CIO-8_X2-6000-640px.jpg]]
 
  
 
== Features ==
 
== Features ==
Line 9: Line 9:
 
* 8 bits of Digital I/O
 
* 8 bits of Digital I/O
 
* I2C interface
 
* I2C interface
* [https://ww1.microchip.com/downloads/en/DeviceDoc/21919e.pdf MCP23008] - 8-Bit I/O Expander with I2C Interface
+
* MCP23008P
 
* Base address = 0x20
 
* Base address = 0x20
 
* Address offset jumpers (0-7)
 
* Address offset jumpers (0-7)
 
* Interrupt pin on I2C connectors
 
* Interrupt pin on I2C connectors
* Interrupt LED
 
 
* I2C Daisy-chain connectors
 
* I2C Daisy-chain connectors
* 4 input (or output) jumpers
+
* GVS (Ground/Voltage/Signal) pins for all 8-bits
* 4 LEDs
 
 
* 2.7V to 5.5V
 
* 2.7V to 5.5V
 
* 49x49mm form factor
 
* 49x49mm form factor
Line 23: Line 21:
 
== Drivers/Example Code ==
 
== Drivers/Example Code ==
  
Extensive Driver Support for Arduino, Raspberry Pi, MicroPython, ESP-32, Blue Pill Board, Cypress PSoC
+
* [https://github.com/land-boards/lb-Arduino-Code/tree/master/libraries/LandBoards_I2CIO8X Github repo] - Driver code
 
+
* [https://github.com/land-boards/lb-Arduino-Code/tree/master/LBCards/I2CIO8X Github repo] - Example code
* [https://github.com/land-boards/lb-Arduino-Code/tree/master/libraries/LandBoards_I2CIO8 Github repo] - Arduino Driver code
 
* [https://github.com/land-boards/lb-Arduino-Code/tree/master/LBCards/I2CIO8 Github repo] - Arduino Example code
 
* [https://github.com/land-boards/lb-Python-Code/tree/master/MicroPython/ESP32/libraries/I2CIO8 Github repo] -  MicroPython Driver
 
  
 
== Factory Acceptance Test ==
 
== Factory Acceptance Test ==
Line 42: Line 37:
  
 
* Uses [[Arduino_Based_Test_Station|ODAS Test Station V2]]
 
* Uses [[Arduino_Based_Test_Station|ODAS Test Station V2]]
 +
* Ribbon cable sets
 +
** Loopback cable Connector
 +
** [[LED-32]] cable
 
* Unit Under Test (UUT)
 
* Unit Under Test (UUT)
 
* Attach Host Computer USB to the Arduino NANO on the Test Station
 
* Attach Host Computer USB to the Arduino NANO on the Test Station
Line 59: Line 57:
 
</pre>
 
</pre>
  
* Select 1
+
* Select 2
  
 
<pre>
 
<pre>
Init I2CIO-8 card
+
Init I2CIO-8X card
 
C=Card Tests, D=Direct, E=EEPROM, I=access Internal DIGIO32
 
C=Card Tests, D=Direct, E=EEPROM, I=access Internal DIGIO32
 
</pre>
 
</pre>
  
=== Running Card Test ===
+
=== Running Loopback Card Test ===
  
 +
* Use loopback cable
 
* Select Card Tests = "C"
 
* Select Card Tests = "C"
 
* Select Run Tests = "T"
 
* Select Run Tests = "T"
* Move jumper across the 4 jumper pins H5-H8
 
* LEDs will correspond
 
* INT LED will blink on/off
 
 
* Observe test results
 
* Observe test results
 
<pre>
 
<pre>
C=Card Tests, D=Direct, E=EEPROM, I=access Internal DIGIO32
+
L=Loop/S=Single, T=Test, B=Bounce LEDs, I=UUT Int'l Test, X=eXit sub-menu
L=Loop/S=Single, T=Test, B=Bounce LEDs, I=UUT Int'l Tests, X=eXit sub-menu
+
Testing UUT = I2CIO-8X
Testing UUT = I2CIO-8
 
I2CIO8 card tests
 
Move jumper across H5-H8, observe LEDs D0-D3
 
Verify Int LED blinks
 
Hit a key to stop test
 
 
Test PASS = 1, FAIL = 0
 
Test PASS = 1, FAIL = 0
 
</pre>
 
</pre>
Line 107: Line 98:
 
=== Running Blink LED Test ===
 
=== Running Blink LED Test ===
  
 +
* Attach [[LED-32]] cable
 
* Select Card Tests = "C"
 
* Select Card Tests = "C"
 
* Select Run Tests = "B"
 
* Select Run Tests = "B"
* Observe LEDs scanning on the 4 LEDs on the card
+
* Observe LEDs scanning on [[LED-32]]
 
<pre>
 
<pre>
 
L=Loop/S=Single, T=Test, B=Bounce LEDs, I=UUT Int'l Test, X=eXit sub-menu
 
L=Loop/S=Single, T=Test, B=Bounce LEDs, I=UUT Int'l Test, X=eXit sub-menu
 
Bounce a bit across outputs
 
Bounce a bit across outputs
Bouncing LEDs I2CIO8 - any key to stop
+
Bouncing LEDs I2CIO8X - any key to stop
 
</pre>
 
</pre>
 
* Hit ENTER to display the menu
 
* Hit ENTER to display the menu

Revision as of 20:25, 21 March 2022

Tindie-mediums.png

I2CIO-8X-6104-640px.jpg

Features

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

Drivers/Example Code

Factory Acceptance Test

Test Station Theory of Operations

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

Test Station Set-up

  • Uses ODAS Test Station V2
  • Ribbon cable sets
    • Loopback cable Connector
    • LED-32 cable
  • Unit Under Test (UUT)
  • Attach Host Computer USB to the Arduino NANO on the Test Station
  • Run puTTY on the Host Computer
    • 9600 baud

Card Selection

  • puTTY will display the 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
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 Loopback Card Test

  • Use loopback cable
  • 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 Blink LED Test

  • Attach LED-32 cable
  • Select Card Tests = "C"
  • Select Run Tests = "B"
  • Observe LEDs scanning on LED-32
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

Assembly Sheet