• Welcome to ASR. There are many reviews of audio hardware and expert members to help answer your questions. Click here to have your audio equipment measured for free!

Tribit Stormbox 2 (Bluetooth Speaker): How NOT to do Fletcher-Munson

staticV3

Grand Contributor
Joined
Aug 29, 2019
Messages
13,878
Likes
23,817
I recently took delivery of a new Bluetooth speaker, the Tribit Stormbox 2.

The unique combination of small size, dual opposed fullrange drivers, and 9-band GEQ made it a perfect proposition for my use case: providing background music while playing beach volleyball.

Here, the speaker could be hung off the net, just outside the play area, so that each fullrange driver faces one team for good coverage:
71Eb3sheN+L._AC_SL1500_.jpg

Naturally, after unpacking, the first thing I did was point my UMIK at it to gather some data :D

First, the 9-band GEQ:
Tribit Stormbox 2 Custom 9-band GEQ.png

No irregularities there. Each band is Q1.5, -8 to +8dB, making it surprisingly potent for frequency response correction!

Take a measurement, upload it to https://autoeq.app/, configure the Custom EQ with the right parameters, and it computes ideal EQ values for target fitting:
Screenshot 2025-07-19 181912.png
Nice!

Next, I checked whether the Stormbox 2 does any Loudness compensation à la Fletcher-Munson.

Usually, the way this works is that Bluetooth speakers have Hardware volume level, controlled either via the Plus and Minus buttons on the speaker, the volume slider in the companion App, or the phone's volume rocker using Bluetooth Absolute Volume (same concept as UAC2 HW volume control via USB).

The speaker knows its current Hardware level and applies appropriate Loudness compensation, boosting bass and treble at low volume to enhance late night listening, and cutting bass/treble at high volume to avoid harshness.

Unfortunately, the Stormbox 2 bucks this trend and instead does its own, incredibly busted implementation of Loudness compensation.

A short clip:

As you can see, the Tribit does not care about the Hardware volume level but instead, reacts to the digital signal amplitude of the incoming audio, and only in a single step.
It's either in Low volume mode or in High volume mode, with an arbitrary signal threshold of roundabout -40dBFS (slightly inconsistent).

Some more graphs:
issue_1.png issue_2.png

Plotting the difference between the two modes clearly shows the attempted Loudness compensation:
issue_3.png

This implementation does not work for a variety of reasons:
  1. Correct Loudness compensation should boost bass and treble as you turn down the volume, whereas this speaker does the exact opposite:
    As the signal level falls below -40dBFS, bass and treble are suddenly cut by 14 and 6dB, respectively. Oops!
  2. Every phone nowadays uses the Bluetooth Absolute Volume feature which means that signal levels sent via BT remain at full volume at all times; pushing the phone's volume rocker merely tells the speaker if and how much to attenuate the signal after it's received.
    In practice, this means the Loudness compensation implemented here cannot do its job and is mostly permanently stuck in High volume mode.
  3. Since the Loudness compensation reacts to the signal amplitude of the track, should that fall below the threshold, the tonality will abruptly change mid-song, just to revert back to Loud mode once levels pick up again. Fun!

All details have been sent to Tribit, though TBH I remain sceptical whether they'll actually care. Will update once I know more!
 
Last edited:
Back
Top Bottom