I am trying to test how vibration waves move through different material...ie how sensitive certain components are. I am needing a vibration sensor that will send me back some kind of measurement say in the form of an integer between 1 and (a number).

I have tried the 801S with an Arduino board and it was successful. The problem though is it just returns a 1 for vibration and 0 for none. To get the results I had to keep retesting and moving the material further and further away to get it to fail.

I also tried a HiLetgo piezoelectric analog sensor. It does return a number...but the results are all over the place...from 5 to 250. I have a device that supplies a consistent "tap" to be measured...so the HiLetgo had to be letgo.

I did research SE and found this question Vibration sensor for arduino but it does not answer my question.

  • not a question about Arduino ... your question is off topic here
    – jsotola
    Mar 5, 2022 at 2:20
  • The sensor is for an Arduino. Mar 5, 2022 at 4:13
  • 2
    Did you try with a microphone module it might pick up back ground noise too, better to do a FFT hmm. Microphone module has a prebuilt in op amp to give analog values dc biased because Arduino picks only dc voltage values.
    – Avon97
    Mar 5, 2022 at 5:05
  • 2
    A vibration is when the body moves rapidly back and forth. Thus the signal will also rapidly move back and forth. In fact - since you want to measure "how vibration waves move through different material" - the vibration wave is just a sound wave in that material. A sound wave is an oscillating signal (look at the wave from any song or speech that you have). The sensor just gives you this wave. If you want the amplitude of the wave you would need to measure the wave values for a specific amount of time (at least one period of the wanted frequency) and then calculate the diff between min and max
    – chrisl
    Mar 5, 2022 at 18:00
  • 2
    So basically the sensor was probably totally ok. You just need to interpret the data in the correct way.
    – chrisl
    Mar 5, 2022 at 18:01

1 Answer 1


I did some experiments a year or so ago to sense vibration through a (physical) office desk top using the inbuilt accelerometer and gyroscope of an Arduino Uno Wi-Fi Rev2. That chip is an LSM6DSM but I would think that any such module (e.g., MPU6050) connected to any Arduino could be useful.

There’s a good comparison article at Seeed Studios introducing vibration sensors for Arduino.

Update. Looking at the similar question linked by the OP I see several comments that the MPU6050 which I suggested would have poor resolution. You may have to study data sheets (or experiment) to find the best device for your purpose.

Second update. This white paper, “Measuring vibration with accelerometers” has some good engineering notes about selecting suitable accelerometers for different purposes.

  • Thanks for your answer... Mar 5, 2022 at 13:14
  • 1
    The STMicro IMU chip can be set up in a number of ways. It's complex enough to seek the benefits of using the STMicro IDE to simplify its configuration. And that would put this project onto an STMicro development board (not an Arduino). The short of it is, we don't know what type of testing you are doing. For example are you interested in detecting a hammer hit or are you interested in how long the vibration lasts and at what frequencies. The answers dictate how the IMU is setup or even if an IMU is a solution to your problem.
    – st2000
    Mar 5, 2022 at 13:43
  • @st2000 Im wanting to measure the signal strength through various materials. For example...I would expect the signal to be higher through rock versus a sponge. Mar 5, 2022 at 13:47
  • Briefly, IMUs are normally used for much slower changes in force. A tilt compensating compass or in a quadcopter. I think you can speed up the sampling time in that STMicro IMU. But I don't know if that will be enough. I think STMicro also makes an "X" series of sensors w/smarts built in. You might be able to program those STMicro sensor to detect vibrations specifically. If you are designing a product maybe this is worth looking into. If this is a one-off project, then maybe just adjusting the 801S's sensitivity and repeating the test.
    – st2000
    Mar 5, 2022 at 14:03
  • 1
    Agreed. My thinking was vibrations in a bridge are slower than vibrations in a truck chassis are slower than vibrations in a jet engine. And an IMU may not be the best choice if interested in the higher frequencies. But I think I understand the end game a bit better now. That's why I suggested repeating the test while adjusting the 801S's sensitivity. Actually, I think I'd automate it having the Arduino controlling the 801S's pot using a controllable volume module.
    – st2000
    Mar 5, 2022 at 14:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.