PI-SPI-DIN-8DI Raspbery Pi DIN Isolated Digital Input Interface

PI-SPI-DIN-8DI Raspberry Pi DIN Rail Isolated Digital Input Interface

Regular price $32.95 USD Sale

This is the DIN rail mountable version of the Pi-Spi-8DI Digital Input Interface.

The PI-SPI-DIN-8DI has 8 inputs that can either DC or AC (Max 24 V) and are optically isolated.

The design is based on the Microchip MCP23S08 IO Expander. Each MCP23S08 has 4 addresses using the same SPI Chip Select line, meaning 4 modules (32 Inputs) can be used simultaneously.

Each module in the PI-SPI-DIN series has two 16 Pin GPIO ports that carry power, SPI, I2C andd 5 Chip Selects from the main PI-SPI-DIN-RTC-RS485 Module. Also, each module has it's own 5VDC switching power supply and 3.3VDC LDO regulator.


  • Two 16 Pin GPIO Ports (Power, SPI, I2C and 5 Chip Selects)
  • 5 VDC 0.5A Switching Power Supply (9 to 24 VDC Input)
  • 3.3VDC LDO regulator
  • Terminal Blocks are rising clamp cage screw type (no leaf springs)
  • Blue LED indicators for power
  • MCP23S08 I/O Expander with 4 Address Selects
  • Green LED ON Indicators for each Input
  • All inputs are optically isolated and can accept either VDC or VAC inputs, Max 24V
  • PCB Dimensions: 2.7" Wide x 3.42" Long

PI-SPI-DIN-8DI Raspberry Pi Isolated Digital Input Interface

Mounting Styles:

Each PI-SPI-DIN module has three mounting styles available:


PCB on DIN rail mounting clips

DIN Enclosure

Other input configurations are available, please contact us before ordering!

PI-SPI-DIN-8DI Accessories :

All PI-SPI-DIN Interfaces come complete with interconnect ribbon cables and all necessary hardware based on enclosure style.

Typical Application with pcb DIN clip mounting:

Typical Application with DIN Enclosure mounting:




The PI-SPI-DIN Series now has Node-RED support. Please visit

Node-RED and the PI-SPI-DIN Series

for instructions.


PI-SPI-DIN GPIO Connector Pinout


PI-SPI-DIN-8DI Schematic



For Python Sample Code, please visit:

PI-SPI-DIN-8DI Python Code Samples

Basic Python "Read" Digital Inputs Program:

from time import sleep
from widgetlords.pi_spi_din import *

inputs = Mod8DI(ChipEnable.CE2)

while True: