CTRL HAT – Solid State Relay HAT for Raspberry Pi

CTRL HAT – Solid State Relay HAT for Raspberry Pi

A Raspberry Pi HAT I/O board specifically designed for use with Crydom style SIP PCB mounted solid state relays (SSRs).

This project is an evolution of previous I/O & relay interface boards we have created primarily for home automation purposes. We saw a need for a low cost high current capacity solid state relay control board for switching inductive loads such as motorised blinds, without the need for costly extra hardware such as SSR modules or contactors. CTRL HAT is ideally suited to automation or industrial control applications requiring high-speed switching, or switching of loads not suitable for regular mechanical relays, such as motors, power supplies, or noise sensitive equipment such as amplifiers.


  • Support 4 Industry Standard SIP type Solid State Relays per CTRL HAT
  • Easy to use interactive web GUI
  • Stackable. Up-to eight CTRL HATs can be used with a single Raspberry Pi
  • 16-port GPIO expander
  • 5V / 3.3V GPIO voltage selection via jumper
  • Supports range of SSR control voltages
  • Can be used with any MCP23017 compatible host device
  • Built-in user programmable ID EEPROM
  • Support for multiple connector types
  • Conforms to Raspberry Pi HAT Specifications
  • Enormous range of applications

Why Solid State Relays?

  • Low Power – Up-to 32 SSRs using 8 CTRL HATs on a single Raspberry Pi, with a single power supply!
  • Low Noise – SSRs generate minimal electrical noise compared to mechanical relays
  • High Speed – SSRs typically switch around 100 times faster than mechanical relays with no contact bounce
  • Reliability – High resistance to shock & vibration makes SSRs suitable for use in demanding environments
  • Opto-Isolated – Typical opto-osolation of > 4000VAC
  • Zero Sparks – SSRs do not generate electrical arcs or sparks like mechanical relays
  • Zero Noise – No moving parts means completely silent switching operation
  • Life Expectancy – Increased operational cycles compared to mechanical relays

Typical Applications

  • High speed and frequent switching operations
  • Applications in high vibration environments
  • Applications near sensitive automation components
  • Dusty or humid environments
  • Hazardous locations

Interactive Web GUI

Once installed on your Raspberry Pi, this interactive GUI allows quick & easy control of your CTRL HAT without the need for any coding. It is designed to be both a user guide & quick reference to the CTRL HAT pinout. The GUI is fully responsive and adapts to any screen size.

Check-out the Live Demo.

Built-in GPIO Expander

Featuring the well-documented MCP23017 16 channel GPIO expander, CTRL HAT is easy to setup and control via I²C. Channels 0-4 (Group A) are utilised for the solid state relays, giving you an extra 12 GPIOs for each CTRL HAT you have.

Not Just Raspberry Pi

We built CTRL HAT to work with any device featuring an I²C bus, the 2-wire connection makes it easy to connect to your preferred device. It can be used with either 3.3V devices (eg, Raspberry Pi) or 5V devices (eg, Arduino); by selecting the appropriate jumper (see device compatibility).

We believe the Raspberry Pi HAT specification is the perfect footprint. Compact yet familiar, with 4x mounting holes, the option to stack with other Raspberry Pi HATs / pHATs and of course a wide range of compatible cases to choose from.

Known Compatible Solid State Relays

Any solid state relay which physically fits onto CTRL HAT and is suited to a control voltage of 5VDC will work. CTRL HAT can also be configured to accept relays with other DC control voltages by using a dedicated power supply (see isolating the relays on GitHub).

Zero Cross Turn On (Resistive Loads)

Random Turn On (Inductive Loads)


Maximum Ratings

  • 10A @ 250V (ambient temperature)
  • 16A @ 250V (forced air cooling recommended, ~30° temperature rise)

Exceeding these limits may overload the PCB.


Full documentation and GUI installation instructions can be found on our GitHub page.

Share this post