Table of Contents
India lies on an active tectonic plate boundary, making earthquake monitoring a matter of national importance. While the Indian Seismological Network operates 167 stations, vast areas — especially in seismic zones IV and V (Northeast India, Himalayan belt, Kutch) — lack dense coverage. A DIY seismometer built with a geophone and Arduino can detect earthquakes, contribute to citizen science, and serve as an educational tool for understanding Earth’s dynamic nature.
Introduction to DIY Seismology
Seismology is the study of seismic waves — vibrations that travel through the Earth. Earthquakes generate three types of waves: P-waves (compression, fastest), S-waves (shear), and surface waves (slowest but most destructive). A seismometer detects these waves and records them as a seismogram.
India experiences about 200 earthquakes of magnitude 3+ per year. The 2001 Bhuj earthquake (M7.7) and 2015 Nepal earthquake (M7.8) caused massive destruction. A network of DIY seismometers can improve earthquake detection density and public awareness.
How Geophones Detect Ground Motion
A geophone is a coil-magnet transducer that converts ground motion into an electrical signal. When the ground moves, the coil (suspended on a spring) stays stationary due to inertia while the magnet (fixed to the housing) moves with the ground. The relative motion generates a voltage proportional to ground velocity.
Standard geophones (SM-24 or GS-11D) have a natural frequency of 4.5-10 Hz, sensitivity of 28-32 V/m/s, and cost ₹1,500-3,000. For a budget alternative, a loudspeaker wired in reverse works as a crude geophone — sensitivity is lower but sufficient to detect nearby moderate earthquakes.
Recommended: LM35 Temperature Sensors
Analogue temperature sensor with linear 10mV/°C output. Simple ADC reading, no library needed.
₹49
Components for a Home Seismometer
For a functional home seismometer:
- Geophone (SM-24 or equivalent, 4.5 Hz, 28 V/m/s)
- Arduino Uno with external ADC (ADS1115, 16-bit) for high-resolution recording
- Instrumentation amplifier (INA128 or AD620) — gain of 100-500x
- SD card module for continuous data logging
- RTC module (DS3231) for accurate timestamps
- Stable power supply (battery + voltage regulator to avoid power line noise)
- Heavy base plate (10+ kg) for coupling to the ground
Building the Geophone Amplifier Circuit
The geophone output is in the microvolt range for distant earthquakes, so amplification is critical. Use an INA128 instrumentation amplifier:
- Connect geophone + and – to INA128 inputs
- Set gain with R_G resistor: Gain = 1 + 50kΩ/R_G. For R_G = 100Ω, gain = 501x
- Add a 10 Hz low-pass filter (R = 16kΩ, C = 1μF) after the amplifier to reduce noise above the seismic band
- Bias the output to 2.5V (mid-range of Arduino ADC) using a voltage divider
Use shielded cable between the geophone and amplifier. Keep the amplifier within 1 metre of the geophone to minimise electromagnetic pickup.
Recommended: DS18B20 Temperature Sensor Module
One-wire digital temperature sensor with ±0.5°C accuracy. Supports parasitic power and multi-sensor bus.
₹99
Arduino Data Acquisition and Logging
The standard Arduino 10-bit ADC is insufficient for seismology — you need the ADS1115 16-bit external ADC for adequate dynamic range. Sample at 100 samples per second (SPS) for local earthquakes or 20 SPS for teleseismic events.
// Seismometer Data Logger
#include <ADS1115_WE.h>
#include <SD.h>
#include <RTClib.h>
ADS1115_WE adc(0x48);
RTC_DS3231 rtc;
void setup() {
adc.setVoltageRange_mV(ADS1115_RANGE_0256); // ±256mV for max sensitivity
adc.setMeasureMode(ADS1115_CONTINUOUS);
adc.setCompareChannels(ADS1115_COMP_0_1); // Differential input
}
void loop() {
float voltage = adc.getResult_mV();
DateTime now = rtc.now();
// Log timestamp and voltage to SD
logData(now, voltage);
delay(10); // 100 SPS
}
Interpreting Seismic Waveforms
A seismogram shows ground velocity over time. Key features to identify:
- P-wave arrival — First, sharp onset. Compressional wave, travels fastest (~6 km/s in upper crust).
- S-wave arrival — Arrives second, typically larger amplitude. Shear wave (~3.5 km/s).
- Surface waves — Slowest, largest amplitude, longest duration. Cause the most damage.
The time difference between P and S arrival (S-P time) × 8 gives the approximate distance to the earthquake in kilometres. This is how seismologists locate earthquakes using triangulation from multiple stations.
Recommended: Waveshare BME280 Environmental Sensor
Measures temperature, humidity, and barometric pressure via I2C/SPI. Ideal for weather stations and environmental monitoring.
₹499
Detecting Earthquakes vs Local Vibrations
Your geophone will pick up everything — trucks passing, people walking, construction, and even wind. Distinguish earthquakes from noise by:
- Checking the frequency: earthquakes are typically 0.1-10 Hz; traffic is 10-50 Hz
- Duration: earthquakes last 10-60+ seconds; traffic vibrations are brief pulses
- P-S wave separation: only earthquakes show the characteristic two-phase arrival
- Cross-referencing with USGS or National Centre for Seismology (NCS) earthquake feeds
Contributing to India’s Seismic Network
India’s National Centre for Seismology (NCS, formerly IMD Seismology Division) in Delhi operates the national network. The Raspberry Shake community seismometer network includes several Indian stations. Your DIY seismometer data can complement these networks, especially in:
- Northeast India (seismic zone V) — highest earthquake risk, fewest stations
- Himalayan foothills — active thrust faults with major earthquake potential
- Koyna-Warna reservoir region, Maharashtra — reservoir-induced seismicity
Share your data via the IRIS Seismological Data portal or the Raspberry Shake community for scientific use.
Recommended: GY-BME280-3.3 Precision Altimeter Atmospheric Pressure Sensor
High-precision BME280 module with 3.3V operation. Measures temperature (±1°C), humidity (±3%), and pressure (±1 hPa).
₹299
Frequently Asked Questions
Can a DIY seismometer detect real earthquakes?
Yes. A well-built geophone seismometer can detect magnitude 4+ earthquakes from 500+ km away and magnitude 2+ from within 100 km. The 2015 Nepal M7.8 earthquake was detected by hobby seismometers across India.
Where should I place my seismometer?
On a solid concrete floor at ground level, away from roads and machinery. A basement is ideal. Avoid upper floors of buildings (they amplify vibrations). The geophone should be on a heavy base plate for good ground coupling.
What is the cost of a geophone?
Standard geophones (SM-24) cost ₹1,500-3,000 from electronics suppliers. A salvaged loudspeaker wired in reverse works as a free alternative, though with 10-20x lower sensitivity. For the complete system including ADC and amplifier, budget ₹4,000-6,000.
Is India at risk of major earthquakes?
Yes. Seismic zone V (highest risk) covers northeast India, Kashmir, and parts of Himachal Pradesh. Zone IV covers Delhi, the Indo-Gangetic plains, and Kutch. A major Himalayan earthquake (M8+) is considered overdue based on the seismic gap theory.
Ready to Build Your Weather Monitoring Project?
Browse our complete range of environmental sensors, temperature modules, and weather station components. Free shipping across India on orders above ₹999.
Add comment