Published © CC BY-NC-SA

Touchless Door Opener

Touchless door handle mechanism that can be used in every door just replacing the standard handle. Very useful for people with disabilities.

AdvancedWork in progressOver 8 days2,195

Things used in this project

Hardware components

door handle
3d printed
Stepper Motor
Digilent Stepper Motor
One for each side
Proximity Sensor
Proximity Sensor
One for each side
conical gears
3d printed
door plate
3d printed
Arduino Nano R3
Arduino Nano R3
or Arduino MKR wifi for smart functions
LED (generic)
LED (generic)
Shows the status of the door, one for each side of the door
batterie 18650
wireless charger
can be 3d printed
housing cyber door truck
3d printed
DC motor (generic)

Software apps and online services

Fusion 360
Autodesk Fusion 360
Arduino IDE
Arduino IDE

Hand tools and fabrication machines

prusa mk3


Read more


Schema Door Handle with PIR Sensors

Notice that I am driving the 2 Steppers with only 4 PINS on Arduino, because the movement of the steppers is the same but with inverted sense of rotation, I’ve just inverted the connectors and works!
I’ve changed one of the sensors to use an ultrasonic one because I think it will be better to trigger the handle detecting the distance. I’ve included a DC Motor which can open and close the door.

First application with motor

Just to test the kinematic
File missing, please reupload.

Video with motor

The first test with the motor
File missing, please reupload.

Door handle with Stepper motor 28byj-48

Seems to be too weak, maybe we will need to use 2 steppers or one with more torque
File missing, please reupload.

Option with two steppers works!

an important target is achieved because using the two 28BYJ-48 steppers, this automatic door handle can be very affordable



I’ve just copied and pasted available routines adapting some lines. This helps me to test the system directly on the door.
The system works as following:
-first you introduce the desired number of steps (should be at least 500 to open the handle)
-The ultrasonic sensor calculates the distance to the object
-if the object distance is between 0 and 100cm activates the stepper 500 steps and the handle opens
-after 3 seconds the DC motor opens the door
-waits 2 seconds and closes the door again.

now I can improve the mechanical system again...
#include <Stepper.h>

Stepper motor1(2048, 4, 6, 5, 7);

int TRIG = 10;
int ECO = 9 ;
int IN1 = 2;      // IN1 de L298N to pin digital 2
int IN2 = 3;      // IN2 de L298N to pin digital 3
int ENA = 11;      // ENA de L298N to pin digital 11

void setup() {
  pinMode(TRIG, OUTPUT);
  pinMode(ECO, INPUT);
  pinMode(IN1, OUTPUT);   // pin 2 output
  pinMode(IN2, OUTPUT);   // pin 3 output 
  pinMode(ENA, OUTPUT);   // pin 11 output
  motor1.setSpeed(3);   // Stepper for door handle

void loop() {
  if (Serial.available()){     // system waits after you introduce a value of steps for the handle steppers
  digitalWrite(TRIG, HIGH);    // Ultrasonic sensor routine
  digitalWrite(TRIG, LOW);
  DURATION = pulseIn(ECO, HIGH);
  Serial.println (DISTANCE);      // end of Ultrasonic Sensor routine (shows the detected distance)
  if (DISTANCE <= 100 && DISTANCE >=0){   //IF Distance is between 0 and 100cm then is true and handle starts      
  int steps = Serial.parseInt();
  Serial.println(steps);            // handle stepper moves to the number of steps introduced
  delay(3000);               //wait for 3 seconds
  digitalWrite(ENA, HIGH);  // DC door motor  (turns cw)
  digitalWrite(IN1, LOW); // IN1 a 0
  digitalWrite(IN2, HIGH);  // IN2 a 1
  delay(3000);      // runs for 3 seg.

  digitalWrite(ENA, LOW); // ENA en 0 DC Motor off
  delay(3000);      // wait for 2 seg.

  digitalWrite(ENA, HIGH);  // DC door motor  (turns ccw)
  digitalWrite(IN1, HIGH);  // IN1 a 1
  digitalWrite(IN2, LOW); // IN2 a 0
  delay(3000);      // runs for 3 seg

  digitalWrite(ENA, LOW); //  DC Motor off
  delay(2000);      // wait for 2 seg.




2 projects • 2 followers
I am an engineer who likes design, art and 3d printing, I am the founder of 3dthinks.


Add projectSign up / Login