I want to measure the vibrations of a solid object (a tuning fork, a bone conducting headphone, the chest during singing) and to isolate them from the vibrations of the air. So I am looking for a meter that will pick those vibrations only when it's in contact when the vibrating object (hence a meter that just reads frequency probably won't work for me)

I've tried to use a smartphone's accelerometer but it didn't pick anything. I've also to use a phone's sound meter in order to see whether it's picks more sound when in contact with such object but the reading was the same.

  • $\begingroup$ What is the sensitivity of a smartphone’s sensor compared to what you want to measure? It won’t read or record anything outside if what its working range is... $\endgroup$ – Solar Mike Nov 28 '18 at 16:02
  • $\begingroup$ I guess the frequency and dB ranges of a regular phone are enough. But maybe something else is needed. $\endgroup$ – OMGsh Nov 28 '18 at 16:13
  • 1
    $\begingroup$ Don’t guess, find out for sure... $\endgroup$ – Solar Mike Nov 28 '18 at 16:35
  • $\begingroup$ iPhone 4 range: ±2g, precision 0.018g $\endgroup$ – OMGsh Nov 28 '18 at 17:54
  • $\begingroup$ A good start, so now what is the range that you need to detect? $\endgroup$ – Solar Mike Nov 28 '18 at 17:58

An accelerometer is the correct choice, but the smartphone accelerometer gets its readouts smoothed out in software before being made accessible to userspace. It won't pick up such fine vibrations. You'll need a microcontroller (for up to ~1khz frequencies) or a DSP (higher), preferably on a development board, to perform the sampling. (note you should have the sample rate at least a few times higher than the frequency you measure).

Another option is a strain gauge. This again should be read by a microcontroller/DSP, or an oscilloscope (may need some basic circuitry to provide power), although it may not perform so well on soft surfaces, like human chest.

  • $\begingroup$ Thanks a lot! So can I use for example an Arduino with a simple accelerometer? What is the accelerometer sensitivity needed for frequencies around e.g. 400Hz ? ( a simple sensor has a range of +-3g to +-16g) $\endgroup$ – OMGsh Nov 28 '18 at 17:51
  • $\begingroup$ @OMGsh It depends on the amplitude of vibration. At 400 Hz, an amplitude of 1mm peak to peak would have a maximum acceleration of about 320g. It scales linearly so 0.01mm displacement would be about 3.2g. Of course measuring such small amplitudes is just as hard as measuring the acceleration, if you don't have any special tools to do it! $\endgroup$ – alephzero Nov 28 '18 at 20:14
  • $\begingroup$ How did you get 320g? Isn't it accelerating from -800mm/s to +800mm/s in 1/800s, so ~120g? As for the amplitude I guess it depends on the object and volume. However can it be estimated theoretically, say for a guitar's resonator? $\endgroup$ – OMGsh Nov 28 '18 at 20:36
  • $\begingroup$ Since you're measuring frequency, not the exact waveform, you don't need sensors of some huge acceleration ranges - they will simply saturate at accelerations exceeding their range, producing +max/-max signal yielding a square waveform instead of sine, but the frequency will match. Arduino has clock frequency of order of 16MHz and the program is low-level without OS overhead, which means it should be able to handle even 10-100kHz measurements. $\endgroup$ – SF. Nov 28 '18 at 22:42

You might want to look at contact pickups designed for acoustic musical instruments.

Try searching for contact microphones of contact transducers. These tend to be based on piezo electric devices and sense vibrations through direct contact as opposed to acoustic microphones whcih generally use some sort of diaphragm.


The instrument pickups area available as a complete package with an analogue audio output, usually via a 1/4" jack socket. Most PCs have an audio input although you should check that the impedance of the pickup matches that of the PCs input. You can also get various balancing devices to facilitate this although it may not be essential.

As mentioned in the comments instrument pickups are designed for an audible frequency range which 200Hz is well within albeit at the low end but individual device specs should tell you their response range.

You can also get the sensors individually but you will at least need to fit an output connector and possibly also a pre-amp or passive filter.

  • $\begingroup$ What are the specifications needed for capturing around 200Hz frequencies and can I get the readings, say on a PC? $\endgroup$ – OMGsh Nov 28 '18 at 18:05
  • $\begingroup$ The transducers mentioned by Chris will pick up any audio frequency, then you need to plug the transducer into the sound card on your computer and use any audio recording ( or sound analyzing ) software to display the signals on your computer screen. There are many websites that can show you how to do this. Let Google be your guide ! $\endgroup$ – William Hird Nov 29 '18 at 3:18

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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