DIY extremly Sensitive and cheap Arduino Seismometer

  A seismometer, is an instrument used to detect and record ground motion caused by seismic waves, such as those generated by earthquakes, volcanic eruptions, or other sources of ground vibration. Basically, the seismometer consists of two parts, and one part is a sensor that detects the earthquake and converts it into an electrical signal, and the other electronic part that amplifies, processes and records this weak signal for further processing. 

  In the previous video, I described a very simple and inexpensive way to make a very sensitive Geophone sensor that is capable of detecting earthquakes from the entire globe. This time I will continue by presenting the electronic part, which together with the sensor will represent a complete home seismometer. During the production I will use a ready-made module and a microcontroller, so there will be no need for extensive prior knowledge and experience in the field of electronics.

  First let's dwell on the amplifier. The signal induced in the sensor coil is very weak, so it needs to be amplified. For this purpose I use small module with LM358 IC which is capable of amplifying weak signals up to 10000 times. We can regulate the gain with these two potentiometers. 

 This project is sponsored by PCBWay. They has all the services you need to create your project at the best price, whether is a scool project, or complex professional project. On PCBWay you can share your experiences, or get inspiration for your next project. They also provide completed Surface mount SMT PCB assemblY service at a best price, and ISO9001 quality control. Visit for more services.

A module like this can be had for a very low price, less than $1 so I avoided making this part. However, if you want, you can make it using a simple operational amplifier IC and few resistors. The two potentiometers of the module were in the middle position and I did not move them at all during the installation, and I precisely defined the amplification of the entire system in the Amaseis software, as I will describe to you later. We test the functioning of this amplifier by gently pressing on the pad, during which a small red LED should light up for a short time.


  Next let's focus on the part with the Arduino microcontroller. Namely the signal needs to be processed to remove the noise and unnecessary components, that the filters serve, and then converted to a form that is recognizable by the PC software (converted from analog to digital signal). For this purpose, "nerdaqII" code is uploaded to Arduino. 

NERdaq is a data acquisition system developed at New England Research to support slinky-based seismometers in schools. The daq is built around an arduino and streams 16-bit (oversampled) values to a usb port; the data are sampled at about 18.78 samples/second.  Arduino code is provided for unrestricted use. Installing the code on the arduino follows a standard procedure. In arduino IDE, in tools we select Arduino Nano and a corresponding com port. Then we go to open and locate the folder with the nerd software and select the nerdaqII.ino file. Now we press the upload button and when it's done, the part with the Arduino is done. The consumption of the whole assembly is very low, so there is no need for an external power supply, but it is powered through the USB port of the computer. The signal from the Arduino microcontroller through the USB-to-Serial port is transmitted to the Amaseis PC software. This software actually performs signal visualization as well as its logging for further processing.

  Now we need to install the Amaseis software.Then we start it and go to settings - this station - and enter the name, and latitude and longitude of the place.


  - Next, in the settings - COM port - we enter the COM port to which the Arduino is connected, in our case it is COM4.


 - Then, in setings - device - we select SETUPK1, 


    and in SET Zero Level we enter 32768 .


  - We need to set the filters, duration of one line of the graph and gain.
 - For this purpose, we go to settings and helicorder - horizontal time limit represents the duration of one line of the graph. If we leave 1 hour then the whole graph contains data for the last 24 hours. 


  - We adjust the gain value according to the amplitude of the signal, in my case 25.
 - Next we set the lowpass and highpass filter, and that's it for now, we restart the software and the logging starts.

  - During the operation of the software we can constantly change these settings. We can also zoom in and analyze a specific time period from the graph.

  In addition to the basic ones, there are many more useful functions that you can find by analyzing the menu.
 - Here we can go back to a certain date and a certain previous time to analyze an event
 - The data from the previous period are located in folders, and in one year the size of the files does not exceed one gigabyte.
 - We can also select and zoom in on a specific period, for example when the earthquake occurred
I should mention that from the IRIS Institute you can also download the latest JAVA version of this application called Jamaseis which can also work online, but this time I used Amaseis because this is a standalone local seismometer. 


As you can see all the components including the sensor are mounted on a solid base which can be leveled using three nuts and then placed on a solid surface. 


I have been actively using this seismometer on my old computer for the last 6 years, and there has never been any problem in terms of software blocking or anything like that
  And finally, a short conclusion. So far, I have built many types of seismometers, at least those that are suitable for self-construction, and therefore I have a relatively large experience with their sensitivity and practical use. I can confidently confirm that this is the most sensitive, cheapest, and easiest-to-build seismometer you can find instructions for on the internet. Of course this is not a professional instrument and serves for a relative presentation of the strength of the earthquake locally. Also this is a great device that can be successfully used for training in educational purposes. As I mentioned before, I have been using it continuously for more than 6 years and with every major earthquake I present a seismological report on my Facebook profile (Mirko Pavleski). After a certain time I gained experience so that at first sight of the seismogram I can roughly analyze whether it is a local or distant earthquake, as well as its relative strength, and other characteristics. Let me mention that this seismometer can detect an earthquake in any region of the globe if it is stronger than 7 Degrees according to Richter, and at a depth greater than 50 km.
In the following, I present to you images from several seismograms of this seismometer that show earthquakes near me, as well as very distant ones.

1.  Local Earthquake of 3.3 degrees 11 November 2020 at 5:10 a.m. with epicenter in Ohrid, 3km west of Kosel

2. Earthquake of 7.7 degrees on 10 February 2021 at 13:20 (UTC) in the Loyalty Islands, west of Australia at a distance of 16,145 km from Ohrid

3.Two subsequent earthquakes with a magnitude of 3.2 and 2.5 on the Richter scale occurred in the vicinity of the village of Belcista, 12 km south of Kicevo at 18:36 h and 19:16 h local time on 16 November 2021

4. A very strong earthquake with a magnitude of 6.4 on the Richter scale occurred on 29.12.2020 in Croatia, 5 km southwest of Sisak, at 12:19 p.m. local time. Distance from Ohrid about 500km


icon 1.24MB Download(0)
icon 8KB Download(0)
All Rights