How to Control a Relay with a Raspberry PI

This site contains affiliate links to products. We may receive a commission for purchases made through these links.

There is a growing community of DIY’ers, and one of the things they boast of is their dexterity in accomplishing various projects. Home automation is one of the projects that you can tackle if you are part of this community.

With home automation, there are several benefits you stand to gain, for example, upheld security and having the house under your control.

The Raspberry Pi, a single board computer, looks like a Godsend component in home automation DIY projects due to its simplicity, making it easy to work with. We will have an in-depth look at how to control relay with raspberry pi as part of your home automation project.

What Is A Control Relay?

The control relay or relay module is an electromagnetic switch, which completes the circuit when energized and consists of coils with electrical contacts. When there are electrical currents through the circuit, the coil’s electromagnetic properties come alive and close the switch.

During de-energization, the coil will lose its electromagnetism and will release the switch. Once you understand the control relay’s working, you are good to go in connecting it to Raspberry Pi’s system to complete your project.

The relay module helps deal with the tedious process of connecting to the Raspberry Pi’s board, supplying you with the resistor, a diode, and relay, among other essential components.

AdobeStock 385428687 1

A Relay Module Diagram

Before you start the connection, it is advisable to have a relay module diagram. The diagram acts as a blueprint of the system and shows you the necessary connection points to start you off. It is more important for beginner DIY’ers as it acts as a guide to bring the project to fruition.

Creating the Module By Yourself

While the relay module presents an easy way to connect to the Raspberry Pi, it may lose the much-needed credence associated with do-it-yourself projects. If you have the necessary components such as the resistor, diode, and current limiting resistor, you can create the module from scratch.

A two-channel relay module is an ideal option on how to control relay with raspberry pi. It consists of two relays on a single board, which allows you to make future adjustments when need be.

Controlling the Relay with Raspberry Pi

Now onto the interesting part, where we see the single board computer’s role and associated processes in your project. Back to the relay concept, you get the picture that there should be some current on the coil for it to close the switch, and subsequently, the circuit.

Here is where the Raspberry pi system comes to play by controlling the electrical outflow. The control will translate either to energization or de-energization of the coil to complete and break the circuit, respectively.

The Connection Process

At this stage, the relay diagram is very essential as a guide through the connection process. Here are some of the components that you require.

  • A computer
  • Raspberry pi model B
  • Power supply and connecting wires
  • An LED light for testing
  • A 5v relay
  • Diodes and resistors

Start by confirming from the blueprint the labels to be sure of where to connect your wires. The left GND will go with the GND, pin 6 of the Pi system. The right pin, the VCC, corresponds with the 3V3 or pin 1 of the Pi.

The connections depend on the number of relays you have, and they must correspond to those of the Raspberry board. A recommendation is to connect a resistor between the relay and the Pi to control the current flow. However, when using the 3V3 connection, it is not necessary to have the resistor.

If you want to limit the electric load, you should be careful when connecting to the AC supplies. If you are green in this area, you can consult a pro to help you avoid any mishaps. The same applies when connecting devices with a high voltage.

The Software Side

On the software side, you need to have a usable Raspberry Pi, already configured to the Raspbian Linux connection preinstalled. If not installed, you can check several online tutorials and guides on how to do it.

The Raspberry Pi should have an internet connection, where the easiest option is to connect it via an ethernet cable to your router. If it is through Wi-Fi, the Raspbian graphical user interface to find the right network and sign in after providing the right password.


The other significant part of controlling a relay with Raspberry Pi is the coding process. A Python script is the ideal way of coming up with a suitable code for the relay link. With the code in check, you are as good as done with the project, and you can now focus on hardware configuration to complete it.

Controlling Your Devices and Configuration

This is a delicate step and requires your keenness to avoid any shortcomings. For control of your devices, you need an external power source to power the AC source. Here, you ensure that the Raspberry Pi is turned off, connect the VCC, ground, and IN1 to the 5V, ground, and GPIO26 of the Raspberry Pi.

Then connect one wire of the power plug to one end of the LED bulb socket and the other wire of the plug to the C or Common of the relay module. Complete the process by connecting the Normal Open or NO to the other end of the bulb socket.

The model should work with the LED bulb when there is energization of the relay coil and vice versa for de-energization.

This is how to control the relay with the Raspberry board. It is the basic organization of the home automation system when using the Raspberry Pi computer and system. You can use this model as a do-it-yourself project to have control over attributes of your home, such as lighting, turning on fans, and other functions.

Always exercise care, primarily when dealing with high voltage devices, and the Pi should be off during the process. A diagram always comes in handy if you are new to such kinds of projects.