Skip to product information
1 of 1

Blue PCB Electronics

2D26 Vibration Switch Module KY-002

2D26 Vibration Switch Module KY-002

Regular price Dhs. 15.00
Regular price Sale price Dhs. 15.00
Sale Sold out
View full details


The Vibration Switch Module KY-002 is a low-cost and easy-to-use electronic component that converts mechanical vibrations into electrical signals. It can detect even the slightest vibrations and transmit them to an external device, making it suitable for a wide range of applications, including motion detection, shock detection, and vibration control. The module consists of a piezo element that generates an electrical output when subjected to mechanical vibrations, and an adjustable sensitivity control that allows users to customize the response to their specific needs. With its low power consumption and simple wiring requirements, the KY-002 is an ideal choice for beginner hobbyists and experienced engineers alike.


This module consists of a conductive spring, a 10k resistor, and 3 male header pins. Knocking or shaking the module will cause the spring to momentarily close the circuit.

Operating Voltage 5V
Board Dimensions 18.5mm x 15mm [0.728in x 0.591in]

Connection Diagram

Connect the module signal pin (S) to pin 3 on the Arduino.

Then connect the module’s power pin (middle) and ground (-) to +5V and GND on the Arduino respectively.

KY-002 Arduino
S Pin 3
middle +5V

Arduino KY-002 connection diagram

KY-002 Arduino Code

The following Arduino sketch produces a shock flasher. The LED on Arduino pin 13 will flash when the KY-002 is knocked or shaked. Pin 3 receives the signal from the module.

int Led = 13; // define the LED Pin
int shock = 3 // define the sensor Pin 
int val; // define a numeric variable val 

void setup () {
	pinMode (Led, OUTPUT); // LED pin as output  
	pinMode (shock, INPUT); // input from KY-002 sensor

void loop () {
	val = digitalRead (shock); // read the value from KY-002
	if (val == HIGH ) {// when sensor detects shock, LED flashes  
		digitalWrite(Led, LOW);
	} else {
		digitalWrite (Led, HIGH);