Back to Step by Step Course by Robojax

Lesson 12: Using Reed Sensor Switch with Arduino

Reed switch or sensor is sensor when it is gets closer to magnetic field, it establishes contact bewtween two pin. We detect the conect using Arduino and take action to do something.

A tilt sensor can be installed on a robotic arm and when the arm moves to certain position we either turn ON something or turn OFF .

 * Lesson 12 Reed Switch
 * This is the Arduino code for reed switch to
 * turn a relay ON which the relay
 * can turn a light or alarm ON
* reed switch is connected to pin 2
 * Relay is connected to pin 8
  Please watch video instruction here
 This code is available at
with over 100 lectures Free On  YouTube Watch it here
Get the code for the course: 
 * Written by Ahmad Shamshiri for Robojax,
 * Date: Dec 05, 2017, in Ajax, Ontario, Canada
 * This code is "AS IS" without warranty or liability. Free to be used as long as you keep this note intact.* 
 * This code has been download from
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <>.

int reedInPin = 2;// define pin 2 for reed switch 
int relayPin = 8;// pin connected to relay 

int  onTime= 200; // time in melliseond ON and wait before make another reading.
int  offTime= 200; // time in melliseond OFF and wait before make another reading.

void setup() {
//Robojax Step By Step Arduino Course	
    // out pins
    pinMode(reedInPin, INPUT);// define reedInPin as input
    pinMode(relayPin, OUTPUT);// define relayPin as output  for relay         

    Serial.println("Robojax Reed switch");


void loop() {

    // read the REED switch
    if(digitalRead(reedInPin) == LOW){
      Serial.println("Switch ON "); 
      digitalWrite(relayPin, HIGH); // Turn the relay ON    
      delay(onTime);// keep the relay or switch ON for the onTime 
      digitalWrite(relayPin, LOW);// Turn the relay OFF
      Serial.println("Switch OFF ");
      delay(offTime);// wait offTime  before reading again    
 //Robojax Step By Step Arduino Course
}// loop


The least I expect from you is to give the video a thumbs up and subscribe to my channel. I appreciate it. I have spent hundreds of hours making these lectures and writing code. You don't lose anything by subscribing to my channel. Your subscription is a stamp of approval for my videos, helping more people find them and, in turn, helping me. Thank you!

If you found this tutorial helpful, please support me so I can continue creating content like this. support me via PayPal

**** AFFILIATE PROGRAM **** We are a participant in the Amazon Services LLC Associates Program, an affiliate advertising program designed to provide a means for us to earn fees by linking to and affiliated sites.

Right Side