2

I recently started using some old speakers, but they're too loud even at the minimum volume. The speaker wires are directly connected to a custom device that uses an amplifier chip and an ESP32 to connect to BT. The device has no built-in control except for a simple volume booster, which does barely anything, and a bass booster (both are just on-off and not more).


So far, I tried disabling absolute volume, which worked - before it went back to normal the next day. Nothing changed in that time, no hardware nor software updates or changes. Restarting phone and speakers, re-pairing and reprogramming the ESP does nothing. The volume stays the same no matter if the option is enabled or not.

Disabling absolute volume does still work when I use my Nothing Ear's. The volume can be set to a comfortable level if I connect via my Windows laptop instead of my phone.


Changing the EQ and/or manually dragging the volume slider down to the lowest possible setting instead of using the buttons works somewhat, however they are still too loud. I tried installing some apps, most of which didn't work at all, except for wavelet, which again reduced volume but not enough. It also didn't seem to lower all frequencies, which made the sound worse.

Sound Assistant I heard about a few times, but it isn't compatible with my phone for whatever reason.


Does anyone know any other solution (software based much preferred) to reduce overall volume or fix the absolute volume setting, or any ideas as to why it just stopped working?
  • Phone: Galaxy M31s (Android 12)
  • ESP32 with A2DP for BT
  • STA339BWS13TR amplifier chip
  • 2 random 20+ year old 6 Ohm Philips speakers I found in the basement
2
  • 1
    Sounds to me more like the speakers don't really fit to the amplifier or the ESP program sets a too high amplification. I would recommend to solve that problem where it is caused - thus on ESP level rather than finding a workaround for Android.
    – Robert
    Commented Nov 21 at 8:07
  • @Robert I found out that a2dp offers a built-in way to set the volume lower, thank you for the hint!
    – Amelith
    Commented Nov 22 at 17:04

1 Answer 1

1

Thanks to the help in the comments, I discovered that you can actually set the volume using A2DP in the ESP program -
a2dp_sink.set_volume(30)
(or any other integer between 0 and 127, 127 being the default - at least using this A2DP library).

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .