Difference between revisions of "I2C-RPT-08"

From Land Boards Wiki
Jump to navigation Jump to search
Line 92: Line 92:
  
 
== Testing ==
 
== Testing ==
 +
 +
=== Test Station Hardware ===
  
 
* [[Arduino Based Test Station]]
 
* [[Arduino Based Test Station]]
** 9600 baud, no hardware handshake
+
** Built in I2C mux on [[BLACK-PILL-HUB]] is set to offset=0x1 so it does not conflict with I2C address of UUT
 +
 
 
* Uses 8x of [[I2CIO-8]] cards
 
* Uses 8x of [[I2CIO-8]] cards
 
* On UUT
 
* On UUT
Line 104: Line 107:
  
 
[[File:P963-cropped-720px.jpg]]
 
[[File:P963-cropped-720px.jpg]]
 +
 +
=== Test Procedure ===
 +
 +
* Run puTTY
 +
** COM port from Device Manager
 +
** 9600 baud
 +
** No parity
 +
** No handshake
 +
* Menu will display
 +
<pre>
 +
Checking if EEPROM is present on UUT...EEPROM is not present on UUT
 +
Count of I2C devices in range 0x20-0x27 on UUT = 0
 +
Found external I2C mux card
 +
Select I2C Mux board type
 +
1 - I2C-RPT-01 board
 +
2 - I2C-RPT-08 board
 +
</pre>
 +
* Enter 2
 +
* Replies with
 +
<pre>
 +
Init I2C-RPT-01 card
 +
I2CIO8 card #0 was detected
 +
I2CIO8 card #1 was detected
 +
I2CIO8 card #2 was detected
 +
I2CIO8 card #3 was detected
 +
C=Card Tests, D=Direct, E=EEPROM, I=access Internal DIGIO32
 +
</pre>
  
 
== Rev 1 Issues ==
 
== Rev 1 Issues ==

Revision as of 23:01, 1 April 2022

Tindie-mediums.png

I2C-RPT-08-X1-P218-720px.jpg

Features

  • I2C Hub / Repeater / Replicator / Multiplexer / De-multiplexer / Switch
    • PCA9548A Datasheet
    • Eight I2C Ports
    • 100KHz/400KHz operation
    • I2C Base Address 0x70
      • Offset addresses 0x70-0x77
  • Host port
    • Controlled via I2C
    • 3.3V or 5V host operation
    • Can power slave cards if they are at the same voltage
  • 3.3V or 5V slave ports operation
    • Removable jumper(s) to supply power from slave
  • Voltage translation between the ports
    • Ex: a Raspberry Pi which runs 3.3V can control I2C devices which run at 5V
  • On-board 2.2K termination resistors
  • 49x49mm form factor
  • 4 solid 4-40 mounting holes
  • Drivers/Example Code
    • Arduino driver and example code
    • Raspberry Pi example code

Connectors

I2C-RPT-08-X1-Conns-P218-720px.png

H1-H8 - Power to/from I2C Connectors

  • Install shunt to power the I2C slave card from the I2C-RPT-08 Card
    • Default factory ships as installed to power external I2C interfaces from the card
  • Remove shunt to power interface externally
    • Need to remove if external voltage is different level or sourced externally
  • H1 - PORT #0
  • ...
  • H8 = PORT #7

H9 - I2C Slave Address Jumpers

  • A0-A2
  • Install all 3 jumpers for address 0x70
  • Remove all three jumpers for address 0x77

J1 - Host I2C Connection

  1. GND (GND pin marked)
  2. 3.3V or 5V VCC
  3. SDA
  4. SCL

J2-J5 - Slave I2C Connections (x8)

  1. GND
  2. 3.3V or 5V VCC (Power Out - if jumper 1-2 installed, Power in - if jumper 1-2 is not installed)
  3. SDA
  4. SCL (Board marked with SCK)

Jumpers

A0-A2 - Multiplexer I2C Base Address

  • Install for Ax = 0 (factory default address = 0)
  • Remove for Ax = 1

Schematic

Drivers/Example Code

Programming Note

  • The mux chip allows multiple or single I2C ports to be written at the same time
    • To only enable one port at a time make sure you disable a channel after use or disable last channel used before enabling new channel

Testing

Test Station Hardware

P963-cropped-720px.jpg

Test Procedure

  • Run puTTY
    • COM port from Device Manager
    • 9600 baud
    • No parity
    • No handshake
  • Menu will display
Checking if EEPROM is present on UUT...EEPROM is not present on UUT
Count of I2C devices in range 0x20-0x27 on UUT = 0
Found external I2C mux card
Select I2C Mux board type
1 - I2C-RPT-01 board
2 - I2C-RPT-08 board
  • Enter 2
  • Replies with
Init I2C-RPT-01 card
I2CIO8 card #0 was detected
I2CIO8 card #1 was detected
I2CIO8 card #2 was detected
I2CIO8 card #3 was detected
C=Card Tests, D=Direct, E=EEPROM, I=access Internal DIGIO32

Rev 1 Issues

  • Silkscreen shows SCK, should be SCL

Assembly Sheet