@mavica_again I suppose this is very uncommon because bluetooth audio (A2DP) doesn't have any volume control capability: in a headset/media player scenario, this is handled by a separate bluetooth profile (AVRC), which also handles media controls and a plethora of other media-adjacent functions (like menu navigation commands, track metadate and playback events).
Implementing a full AVRC compliant device is likely too expensive for a simple breakout board. Once that's implemented, it becomes really close to a full media player! Furthermore, while the headset can send a "set absolute volume" command to the player, it's up to the player to determine what to do with it (the headset is not aware of the player's gain or amplifier construction).
If you have an ESP32 lying around, the "A2DP source" example they provide in ESP-IDF could achieve what you want, however the code does pretty much nothing about the received absolute volume value and only supports I2S input.
@mavica_again I suppose this is very uncommon because bluetooth audio (A2DP) doesn't have any volume control capability: in a headset/media player scenario, this is handled by a separate bluetooth profile (AVRC), which also handles media controls and a plethora of other media-adjacent functions (like menu navigation commands, track metadate and playback events).
Implementing a full AVRC compliant device is likely too expensive for a simple breakout board. Once that's implemented, it becomes really close to a full media player! Furthermore, while the headset can send a "set absolute volume" command to the player, it's up to the player to determine what to do with it (the headset is not aware of the player's gain or amplifier construction).
If you have an ESP32 lying around, the "A2DP source" example they provide in ESP-IDF could achieve what you want, however the code does pretty much nothing about the received absolute volume value and only supports I2S input.