How to create a home seismograph from scratch step by step

seismograph mark on paper

A seismograph or seismometer is a device that allows the measurement of movements of the earth’s surface, i.e. earthquakes or tremors of any kind. Generally, they are used to measure those produced by the movement of the tectonic or lithospheric plates, in order to carry out studies and predict possible earthquakes. The invention was created by the Scottish James David Forbes in 1842.

The instrument of that time was primitive, and consisted of a pendulum which, because of its mass, remained motionless due to inertia. While all other parts of the machine moved around it. The pendulum had a punch at its end and allowed writing on a roller of time-regulated paper. That way, when the ground vibrated, it was represented on that paper in the form of curves.

Gradually, the measuring instruments evolved to adapt to new scales to measure only tremors that people could feel. Since then, the development has been constant until the new ones with much more precision and much more sensitive for the different tasks of the geologists and other personnel that usually use this type of measurements. With the advent of electronics, these devices have been modernized and become much more sophisticated until the current seismographs.

Currently, seismographs can receive information about earthquakes from different points on the Earth. Those near the epicenters can take readings of the earthquake to record the so-called “S-waves” and “P-waves”. In contrast, those further away can only record P-waves. And in case you didn’t know, sensors placed on the ground to pick up these terrestrial vibrations are called geophones, although in the sea a supplementary hydrophone is also used to measure the sound waves that are transmitted through the water when an earthquake occurs.

How to mount the seismograph

Home seismograph diagram

If you’re passionate about this type of device, and a maker, you can make your own DIY seismograph for just under 100.

The working of this project is quite simple, as you can see in the diagram of the image above. The home seismograph will detect the movement of the ground thanks to a magnet that hangs from a spring so that it can bounce up and down freely.

A stationary wire coil is placed around the magnet on the reference surface. It will detect any movement however small the magnet may be, as it will generate currents in the cable that can be accurately measured. The rest of the device is the electronics needed to transform that electronics into data that can be recorded and viewed on our PC screen.

Necessary materials

To be able to create that system, you will need some pretty basic elements that we all have at our fingertips. The complete list is:


  • A metal spring. It can be typical of the famous toy Slinky, Jr. those you see in some movies that are thrown down a staircase and go down alone …
  • Ring magnet that is powerful (RC44), for example neodymium.
  • OpAmp LT1677CN8 signal amplifier, and coil of magnetic copper wire (insulated with 42 gauge varnish) to convert the weak signal into a stronger one. (MW42-4)
  • PVC tubes for winding up the cable.
  • A device capable of converting the analogical signal into digital. In this case Arduino is used.
  • A recording and logging device. In this case a software run on our PC to represent what Arduino captures…
  • A wooden, metal or plastic structure to hold the spring.
  • Protoboard or printed circuit board for soldering.
  • 10K and 866K resistors
  • 0.01uF, 0.1uF, 1uF, 330pF capacitors
  • Cables for connection

Step by step procedure


Step 1

First you must wind some copper wire with insulation to create a coil. In this project they use PVC pipes that you can find in any plumbing. The pipe is cut and you will leave about 1 inch (2.54 cm) where it is wrapped with 2500 turns of wire. Remember that it must be insulated with some kind of varnish, they are already sold this way in some stores.

You can also create a part with a 3D printer if you prefer, or use other types of recycled materials to replace PVC pipe. Another option is to use the same spools where the thread comes wound if you have a pair of them. And to wrap the wire, you can use the help of a sewing machine or a drill as you can see in the video.

Copper wire coil

Remember to solder normal wires to both ends of the copper wire in the coil. With these you will be able to make better connections, as the copper wire of the coil is extremely thin so that you can work with it and then connect it to the Arduino board.

Step 2

The next step is to hang and calibrate the spring with the magnet. To do this you must put the magnets attached to the wire or spring. They must be suspended inside the pipe with the coil you have created in the previous step. You must calibrate well the distance you hang it on the wood or metal support or whatever you use…, so that when there is a tremor, the spring moves the magnet just in the center of the coil so it can induce a current in it.

Spring with suspended magnet

In addition, the calibration should make the vibration 1Hz, i.e. move up and down once per second. Up and down is the complete cycle that must be done in one second.

Step 3

To amplify the induced current in the coil, as the magnet in the coil core generates very small currents, a signal amplifier is needed. There are several types of good signal amplifiers, you can use any of them. The connection is simple, you can make it on a protoboard or on a soldering die plate, if you are going to make it permanent. You just have to connect the circuits as shown in the picture…

Step 4

Now we are going to the Arduino board UNO, which will be in charge of transforming the signal amplified by the circuit of the previous step and will transform it into digital data. The seismograph is based on another project TC1 where you can find more details about the Arduino configuration.

Step 5

Signal recording program

When you connect Arduino to the PC, through the USB, the data will be captured, and through a software you can load the data through the serial port monitor that you have in Arduino IDE. Everything should show the right data, if not, check that it is properly connected to the right COM port.

You can use jAmaSeis, it is an interesting project and you can see and share data with other students and scientists around the world.

You could also make some adjustments and improvements to reduce the noise and avoid giving some false data. The system is quite sensitive, so it can register tremors that are not really earthquakes. It may also pick up vibrations from some nearby devices or vehicles. Now do a “Punch and Blow”! Until you tune it…


Instructable – DIY Seismometer

Seismograph TC1

Leave a Comment