Cirkit Designer Logo
Cirkit Designer
Your all-in-one circuit design IDE
Home / 
Component Documentation

How to Use MKR Relay Shield: Examples, Pinouts, and Specs

Image of MKR Relay Shield
Cirkit Designer LogoDesign with MKR Relay Shield in Cirkit Designer

Introduction

The MKR Relay Shield (Manufacturer Part ID: TSX00003) is an add-on board designed for use with Arduino MKR series boards. It enables users to control high-voltage devices such as appliances, lights, and other electronic equipment. The shield features two independent relays, allowing for safe and efficient switching of devices that operate at higher voltages and currents than typical microcontroller outputs can handle.

Explore Projects Built with MKR Relay Shield

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Arduino MKR WiFi 1010 Controlled Relay Switching Circuit
Image of Receptor lorawan: A project utilizing MKR Relay Shield in a practical application
This circuit consists of an Arduino MKR WiFi 1010 microcontroller connected to a 5V relay. The Arduino is programmed to receive LoRa wireless communication signals and toggle the relay based on the received data, which controls the connection between the relay's Common terminal and either the Normally Open or Normally Closed terminal. The relay's activation is dependent on the specific message received ('button pressed'), which is intended to switch a connected external load on or off.
Cirkit Designer LogoOpen Project in Cirkit Designer
I2C LCD and LED Control via BlynkGate with MakerEDU Shield
Image of kxnTest: A project utilizing MKR Relay Shield in a practical application
This circuit is designed to interface with Blynk, a platform for controlling Arduino over the internet, and display data on an LCD screen. It includes a MakerEDU Shield connected to two MKE-M01 LED Modules and two MKE-M07 LCD1602 I2C displays for user interaction. The BlynkGate modules are likely used for communication with the Blynk service, and the MTiny Programmer is for programming the microcontrollers. The embedded code suggests that the circuit can receive input via Blynk and display values on the LCDs while also controlling the LEDs.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino UNO and ESP-8266 Controlled Relay with Pushbutton Interface
Image of COMMANDE DE BARRIERE ARDUINO-ESP8266*ESP32CAM: A project utilizing MKR Relay Shield in a practical application
This circuit features an Arduino UNO controlling a 3-channel relay module for device actuation, interfaced with an ESP-8266 for WiFi communication. User inputs are captured through multiple pushbuttons with pull-down resistors, and an Adafruit Datalogger Shield is included for potential data logging or future expansion.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino UNO Bluetooth-Controlled Relay System
Image of ARM: A project utilizing MKR Relay Shield in a practical application
This circuit features an Arduino UNO microcontroller interfaced with an HC-05 Bluetooth Module and an 8-Channel 5V Relay Shield. The Arduino is configured to communicate with the Bluetooth module via its serial pins (D0 and D1) and control the relay channels through digital pins D2 to D9. The purpose of this circuit is likely to enable wireless control of various devices connected to the relay shield, with commands received via Bluetooth.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with MKR Relay Shield

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Image of Receptor lorawan: A project utilizing MKR Relay Shield in a practical application
Arduino MKR WiFi 1010 Controlled Relay Switching Circuit
This circuit consists of an Arduino MKR WiFi 1010 microcontroller connected to a 5V relay. The Arduino is programmed to receive LoRa wireless communication signals and toggle the relay based on the received data, which controls the connection between the relay's Common terminal and either the Normally Open or Normally Closed terminal. The relay's activation is dependent on the specific message received ('button pressed'), which is intended to switch a connected external load on or off.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of kxnTest: A project utilizing MKR Relay Shield in a practical application
I2C LCD and LED Control via BlynkGate with MakerEDU Shield
This circuit is designed to interface with Blynk, a platform for controlling Arduino over the internet, and display data on an LCD screen. It includes a MakerEDU Shield connected to two MKE-M01 LED Modules and two MKE-M07 LCD1602 I2C displays for user interaction. The BlynkGate modules are likely used for communication with the Blynk service, and the MTiny Programmer is for programming the microcontrollers. The embedded code suggests that the circuit can receive input via Blynk and display values on the LCDs while also controlling the LEDs.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of COMMANDE DE BARRIERE ARDUINO-ESP8266*ESP32CAM: A project utilizing MKR Relay Shield in a practical application
Arduino UNO and ESP-8266 Controlled Relay with Pushbutton Interface
This circuit features an Arduino UNO controlling a 3-channel relay module for device actuation, interfaced with an ESP-8266 for WiFi communication. User inputs are captured through multiple pushbuttons with pull-down resistors, and an Adafruit Datalogger Shield is included for potential data logging or future expansion.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of ARM: A project utilizing MKR Relay Shield in a practical application
Arduino UNO Bluetooth-Controlled Relay System
This circuit features an Arduino UNO microcontroller interfaced with an HC-05 Bluetooth Module and an 8-Channel 5V Relay Shield. The Arduino is configured to communicate with the Bluetooth module via its serial pins (D0 and D1) and control the relay channels through digital pins D2 to D9. The purpose of this circuit is likely to enable wireless control of various devices connected to the relay shield, with commands received via Bluetooth.
Cirkit Designer LogoOpen Project in Cirkit Designer

Common Applications and Use Cases

  • Home automation systems (e.g., controlling lights, fans, or appliances)
  • Industrial automation and control
  • IoT projects requiring high-voltage device control
  • Prototyping and testing of relay-based circuits

Technical Specifications

The MKR Relay Shield is designed to interface seamlessly with Arduino MKR boards. Below are its key technical details:

General Specifications

Parameter Value
Operating Voltage 5V (powered via MKR board)
Relay Channels 2
Maximum Switching Voltage 220V AC / 30V DC
Maximum Switching Current 2A
Communication Interface Digital I/O pins
Dimensions 61.5mm x 25mm x 20mm

Pin Configuration and Descriptions

The MKR Relay Shield connects directly to the Arduino MKR board via its headers. Below is the pin configuration for the relay terminals:

Pin Name Description
NO1 (Normally Open 1) Normally open terminal for Relay 1. Connect the load here for switching.
COM1 (Common 1) Common terminal for Relay 1. Connect the power source or ground here.
NC1 (Normally Closed 1) Normally closed terminal for Relay 1. Load is connected when relay is off.
NO2 (Normally Open 2) Normally open terminal for Relay 2. Connect the load here for switching.
COM2 (Common 2) Common terminal for Relay 2. Connect the power source or ground here.
NC2 (Normally Closed 2) Normally closed terminal for Relay 2. Load is connected when relay is off.

Control Pins (Arduino MKR Board)

Arduino Pin Function
D1 Controls Relay 1
D2 Controls Relay 2

Usage Instructions

How to Use the MKR Relay Shield in a Circuit

  1. Attach the Shield: Plug the MKR Relay Shield directly onto the Arduino MKR board. Ensure the headers are aligned properly.
  2. Connect the Load:
    • For each relay, connect the load to the NO (Normally Open) terminal and the power source to the COM (Common) terminal.
    • If you want the load to be powered when the relay is off, use the NC (Normally Closed) terminal instead of NO.
  3. Power the System: Power the Arduino MKR board via USB or an external power source. The shield will draw power from the MKR board.
  4. Control the Relays: Use digital pins D1 and D2 on the MKR board to control Relay 1 and Relay 2, respectively.

Important Considerations and Best Practices

  • Voltage and Current Ratings: Do not exceed the maximum switching voltage (220V AC / 30V DC) or current (2A) for each relay.
  • Isolation: Ensure proper isolation between the high-voltage side (relay terminals) and the low-voltage side (Arduino MKR board) to avoid damage or hazards.
  • External Power: If controlling high-power devices, consider using an external power source for the load to avoid overloading the Arduino board.
  • Code Logic: Use appropriate delay intervals in your code to prevent rapid switching of the relays, which can cause wear and tear.

Example Code for Arduino MKR Board

Below is an example sketch to control the relays using an Arduino MKR board:

// Example code to control the MKR Relay Shield
// Relay 1 is connected to pin D1, and Relay 2 is connected to pin D2.

#define RELAY1_PIN 1  // Digital pin for Relay 1
#define RELAY2_PIN 2  // Digital pin for Relay 2

void setup() {
  // Initialize relay pins as outputs
  pinMode(RELAY1_PIN, OUTPUT);
  pinMode(RELAY2_PIN, OUTPUT);

  // Start with both relays off
  digitalWrite(RELAY1_PIN, LOW);
  digitalWrite(RELAY2_PIN, LOW);
}

void loop() {
  // Turn on Relay 1
  digitalWrite(RELAY1_PIN, HIGH);
  delay(2000); // Keep Relay 1 on for 2 seconds

  // Turn off Relay 1 and turn on Relay 2
  digitalWrite(RELAY1_PIN, LOW);
  digitalWrite(RELAY2_PIN, HIGH);
  delay(2000); // Keep Relay 2 on for 2 seconds

  // Turn off both relays
  digitalWrite(RELAY2_PIN, LOW);
  delay(2000); // Wait for 2 seconds before repeating
}

Troubleshooting and FAQs

Common Issues and Solutions

  1. Relays Not Switching

    • Cause: Incorrect wiring or insufficient power supply.
    • Solution: Double-check the wiring of the load and ensure the Arduino MKR board is powered properly.
  2. Arduino Board Resets When Relays Switch

    • Cause: High inrush current from the load.
    • Solution: Use a separate power supply for the load or add a flyback diode across the relay terminals.
  3. Relays Stuck in One State

    • Cause: Faulty relay or incorrect control signal.
    • Solution: Verify the control signals from the Arduino board and test the relay with a multimeter.
  4. Load Not Turning On/Off

    • Cause: Incorrect connection to the relay terminals.
    • Solution: Ensure the load is connected to the correct terminals (NO, NC, and COM) based on the desired behavior.

FAQs

Q: Can I use the MKR Relay Shield with non-MKR Arduino boards?
A: The shield is specifically designed for MKR boards. While it may be possible to adapt it for other boards, it is not recommended due to pin alignment and power compatibility issues.

Q: Is the MKR Relay Shield suitable for controlling motors?
A: The shield can control small motors within the 2A current limit. For larger motors, use a motor driver or an external relay module.

Q: Can I stack other shields on top of the MKR Relay Shield?
A: Stacking is possible, but ensure the additional shield does not interfere with the relay terminals or exceed the power capacity of the MKR board.

Q: How do I know if a relay is active?
A: The MKR Relay Shield includes onboard LEDs that light up when a relay is activated.