I was told that you could determine the air temperature by using a BoomWhacker (its a muscial instrument that is a plastic tube and when you strike it against a surface, it will produce one and only one specific note only). How could you do this? Would you measure the length of the open tube and determine the wavelength, so wavelength = 2 × length. Then you could use the universal wave equation and speed of sound equation to get: 2 × length x frequency = 331 m/s +0.59m/(s × celcius) × Temperature So you can solve for temperature. How could you get the frequency of the note produced by the BoomWacker?

  • $\begingroup$ I would thwack the BoomWhacker, and then look at the temperature displayed on the clock on my desk. As for measuring the frequency, a microphone and oscilloscope would seem to be easy. $\endgroup$
    – Jon Custer
    Mar 16, 2018 at 22:09
  • $\begingroup$ A mobile phone is easier than an oscilloscope. So many buttons. $\endgroup$
    – user137289
    Mar 16, 2018 at 22:11

1 Answer 1


Dean you're pretty much at the answer already. As you write, the speed of sound as a function of temperature (in Celcius) is

$$c = 331 + 0.59 \ T$$

We can rearrange to write a formula for temperature as a function of the speed of sound

$$T = \frac{c - 331}{0.59}$$

Knowing your BoomWhacker of length $\ell$ has two possible states, open-end or closed-end we have two fundemental frequencies that may be observed:

$$ f = \begin{cases} \frac{c}{2 \ \ell}, & \text{if end is open} \\[10 pt] \frac{c}{4 \ \ell}, & \text{if end is closed} \end{cases} $$

Now we can put it all together to arrive at

$$ T = \begin{cases} \frac{2 \ell f - 331}{0.59}, & \text{if end is open} \\[10 pt] \frac{4 \ell f - 331}{0.59}, & \text{if end is closed} \end{cases} $$

Where I live there's a pretty impressive range of temperatures: -43 to 32 C. By these figures an open-ended BoomWhacker $0.61 \ m$ long would range from $251 \ \text{Hz}$ on the coldest winter day to $287 \ \text{Hz}$ on the hottest summer day. That's not much of a change, so it would take a precise measurement of frequency to do a good job at estimating temperature.

And as commenters have suggested, to actually measure temperature, you could use the spectrum analyzer built into any of a number of open-source audio recording programs. An unfortunate limitation here seems to be that impulsive (i.e., 'percussive') sounds don't last very long and thus limit the precision of frequency measurements. If you could blow across the tube you may be able to generate a sustained tone that would work better.

I'd be curious how well this approach works in practice!


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.