SC407 is an SC400 series switches and lights module for the I2C bus.
This module provides a simple switches and lights interface for the I2C bus.
A PCF8574 is used to provide 8 quasi-bidirectional I/O lines. Each I/O line can be driven low by the PCF8574 or pulled low by a push button switch. When the I/O line is low its LED is on. The state of the I/O lines can be written and read by an I2C bus master.
The I2C device address is selected with three jumpers.
There are two versions of the PCF8574 chip: PCF8574 and PCF8574A. It is assumed the ‘A’ part is used with SC407. The difference between the versions is the I2C slave addresses.
The PCF8574A slave address (7-bit) is: 0b0111AAA, where AAA = three address jumpers.
The recommended (default) slave address (7-bit) for SC407 is: 0b0111111, 0x3F (address jumpers: A2=1, A1=1, A0=1)
The address bytes are: 0x7E write, 0x7F read
The original PCF8574 slave address (7-bit) is: 0b0100AAA.
- SC407 – Kit contents sheet (PDF)
- SC407 – Printed circuit board Gerber files
- SC407 – Schematic v1.0 (PDF)
- Example code: see SC400 series details
|PCB||1||SC407, v1.0, PCB|
Design at OSHWLab
|C1||1||Capacitor, ceramic, 100 nF|
|JP1 to JP3||3||Header, male , 1 row x 3 pin, straight|
|Jumper shunts||3||Jumper shunt|
|LED1 to LED8||8||LED, orange, 3mm|
|P1||1||Header, male, 2 row x 6 pin, angled|
The second row of pins needs to be removed.
|P2||1||Header, male, 1 row x 6 pin, straight|
|P3||1||Header, male , 1 row x 10 pin, straight|
|P4||1||Header, male , 1 row x 3 pin, straight|
|R1 and R2||2||Resistor, 10k, 0.25W|
|RP1||1||Resistor pack, 8 x 1k, SIL, 9-pin|
|S1||1||Header, female, 1 row x 6 pin, straight|
|SW1 to SW8||8||Switch, tactile button, straight|
|U1 socket||1||16-pin DIL socket|
This design is so simple it does not justify a detailed assembly guide. Just assemble according to the photo above.
In order for the daisy-chained PCBs to be a consistent level, header pins (P1) need to have a profile that matches the socket (S1) on the host module. By far the most common angled header pins do not match. A suitable profile header can be created by removing the second row of pins from a double row header. The pins can easily be pulled out of the plastic guide with a small pair of pliers.
Ensure the resistor pack RP1 is fitted the correct way around. Pin 1 is usually marked with a dot on the resistor and this must match the marked end on the PCB.
The two resistors, R1 and R2, are not normally required. These are pull up resistors for the I2C bus signals, serial clock and serial data. The pull up resistors typically found on I2C bus masters are usually all that is required. However, should you require additional resistors for any reason, they can be fitted here. The most likely reason to add resistors is to terminate a long bus with many devices connected.
- This product is designed for hobby use and is not suitable for industrial, commercial or safety-critical applications.
- The product contains small parts and is not suitable for young children.