Difference between pages "6 Channel Relay Driver Card" and "I2CIO-8"

From Land Boards Wiki
(Difference between pages)
Jump to navigation Jump to search
 
 
Line 1: Line 1:
[[FILE:RELAY_DRVE_P1981-720PX.jpg]]
+
[[File:tindie-mediums.png|link=https://www.tindie.com/products/land_boards/i2c-demo-board-mcp23008-i2cio-8/?pt=ac_prod_search]]
 +
 
 +
<video type="youtube">omUSJpGLv4A</video>
 +
 
 +
[[File:I2CIO-8_X2-6000-640px.jpg]]
  
 
== Features ==
 
== Features ==
  
* Drives [https://qrp-labs.com/ultimatelpf.html Ultimate relay-switched LPF kit]
+
* 8 bits of Digital I/O
** Open collector to turn off relay
+
* I2C interface
** Drives low to turn on relay
+
* [https://ww1.microchip.com/downloads/en/DeviceDoc/21919e.pdf MCP23008] - 8-Bit I/O Expander with I2C Interface
** Only turn on one output at a time
+
* Base address = 0x20
* Inputs
+
* Address offset jumpers (0-7)
** 6 channels (5 used)
+
* Interrupt pin on I2C connectors
** Active-high in to drive relay to on state
+
* Interrupt LED
** 3.3K to transistor base
+
* I2C Daisy-chain connectors
*** 1 mA for 3.3V drive
+
* 4 input (or output) jumpers
*** 1.5 mA for 5V drive
+
* 4 LEDs
* Outputs
+
* 2.7V to 5.5V
** Open Collector outputs from 2N3904 NPN transistors
+
* 49x49mm form factor
* Power
+
* (4) #4-40 mounting holes
** 9-14V power in
 
** 5V power out to power relays
 
** DC jack
 
* 36x37mm card
 
** 3 PCBs for $11 from OshPark
 
 
 
== Ultimate Relay Card ==
 
  
* [https://qrp-labs.com/ultimatelpf.html Ultimate relay-switched LPF kit]
+
== Drivers/Example Code ==
**  [https://qrp-labs.com/images/ultimatelpf/assembly_ulpf2.pdf Ultimate relay-switched LPF kit Build Instructions]
 
* Takes five [https://qrp-labs.com/bpfkit.html QRP Labs Bandpass Filters]
 
  
[[file:Ultimate_Relay_Card_5.jpg]]
+
Extensive Driver Support for Arduino, Raspberry Pi, MicroPython, ESP-32, Blue Pill Board, Cypress PSoC
  
* Jumpers
+
* [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
  
[[file:jumpers-BPF.gif]]
+
== Factory Acceptance Test ==
  
== Connectors ==
+
=== Test Station Theory of Operations ===
  
=== J1 - Input Connector ===
+
* Test Station controls the I2C interface on the UUT
 +
* Three tests
 +
** Internal Test
 +
** External Loopback Test
 +
** Bounce an LED Test
  
[[FILE:RELAY_DRVR_J1.PNG]]
+
=== Test Station Set-up ===
  
# N/C
+
* Uses [[Arduino_Based_Test_Station|ODAS Test Station V2]]
# IN1
+
* Ribbon cable sets
# IN2
+
** Loopback cable Connector
# IN3
+
** [[LED-32]] cable
# IN4
+
* Unit Under Test (UUT)
# IN5
+
* Attach Host Computer USB to the Arduino NANO on the Test Station
# IN6
+
* Run puTTY on the Host Computer
# GND
+
** 9600 baud
  
=== J2 - Output Connector ===
+
=== Card Selection ===
 +
* puTTY will display the menu
 +
<pre>
 +
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 >
 +
</pre>
  
[[FILE:RELAY_DRVR_J2.PNG]]
+
* Select 1
  
# GND
+
<pre>
# OUT6
+
Init I2CIO-8 card
# OUT5
+
C=Card Tests, D=Direct, E=EEPROM, I=access Internal DIGIO32
# OUT4
+
</pre>
# OUT3
 
# OUT2
 
# OUT1
 
# 5V OUT
 
  
=== Power Connector ===
+
=== Running Loopback Card Test ===
  
* 7-14V input
+
* Use loopback cable
* Center positive
+
* Select Card Tests = "C"
 +
* Select Run Tests = "T"
 +
* Observe test results
 +
<pre>
 +
L=Loop/S=Single, T=Test, B=Bounce LEDs, I=UUT Int'l Test, X=eXit sub-menu
 +
Testing UUT = I2CIO-8
 +
Test PASS = 1, FAIL = 0
 +
</pre>
 +
* Hit ENTER to display menu
 +
<pre>
 +
L=Loop/S=Single, T=Test, B=Bounce LEDs, I=UUT Int'l Test, X=eXit sub-menu
 +
</pre>
  
== Control via VFO-003 ==
+
=== Running Internal Tests ===
  
* [[VFO-003]]
+
* Remove loopback cable
** Band select via menu option
+
* Select Card Tests = "C"
* J8 - Arduino P5-P9
+
* Select Run Tests = "I"
* Arduino pins
+
* Observe test results
 +
<pre>
 +
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
 +
</pre>
 +
* Hit ENTER to display menu
 +
<pre>
 +
L=Loop/S=Single, T=Test, B=Bounce LEDs, I=UUT Int'l Test, X=eXit sub-menu
 +
</pre>
  
# Arduino D5 - 10M select
+
=== Running Blink LED Test ===
# Arduino D6 - 15M select
 
# Arduino D7 - 20M select
 
# Arduino D8 - 40M select
 
# Arduino D9 - 80M select
 
# Vcc
 
# GND
 
# GND
 
  
[[file:VFO-003_J8.PNG]]
+
* Attach [[LED-32]] cable
 +
* Select Card Tests = "C"
 +
* Select Run Tests = "B"
 +
* Observe LEDs scanning on [[LED-32]]
 +
<pre>
 +
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 I2CIO8 - any key to stop
 +
</pre>
 +
* Hit ENTER to display the menu
 +
<pre>
 +
Finished bouncing LEDs
 +
</pre>
  
== Testing ==
+
=== Reference ===
  
* Apply 9-12V to DC jack
+
* [[Arduino Based Test Station]]
* Use LED w/ resistor on output to check 5V
+
* [https://github.com/land-boards/lb-Arduino-Code/tree/master/LBCards/ODAS/ODASTESTER ODAS Tester Github Repo]
* One channel at a time
 
** Pull up channel input to +5V
 
** Check output with LED pulled up to +5V out
 
  
== CAD ==
+
== Assembly Sheet ==
  
[[FILE:RELAY-DRV_CAD.PNG]]
+
* [[I2CIO8-X Assembly Sheet]]

Revision as of 20:17, 21 March 2022

Tindie-mediums.png

I2CIO-8 X2-6000-640px.jpg

Features

  • 8 bits of Digital I/O
  • I2C interface
  • MCP23008 - 8-Bit I/O Expander with I2C Interface
  • Base address = 0x20
  • Address offset jumpers (0-7)
  • Interrupt pin on I2C connectors
  • Interrupt LED
  • I2C Daisy-chain connectors
  • 4 input (or output) jumpers
  • 4 LEDs
  • 2.7V to 5.5V
  • 49x49mm form factor
  • (4) #4-40 mounting holes

Drivers/Example Code

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

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 1
Init I2CIO-8 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-8
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 I2CIO8 - any key to stop
  • Hit ENTER to display the menu
Finished bouncing LEDs

Reference

Assembly Sheet