Yesterday I uploaded a new firmware version to add a feature that corrects a bug. The bug was clipping audio from certain devices. Initially I thought is was to do with the 4 to 1 audio expander I have been making (see my other project) as the only devices affected were the ones that were plugged into it. It took a while but after some investigation it wasn't the expander at all! Turns out it is the way I have the volume controls organised.
I run both my amps using the Adafruit Digital amp board. This board is able to control it's own volume via the I2C bus and that is how the volume is controlled when it is detected on boot. The input and tone selector chip on my board also has a volume control, but this isn't used in this case and is set to -5dB because originally I set that level to reduce the clipping that was happening.
Problem came about because that was done before I had the additional kit that was causing the clipping. After I finally figured it all out, I updated the setup menu to be able to adjust that volume by the user, allowing easy adjustment to prevent clipping.
This is a bit of a bodge at the moment because it doesn't care about the type of amp connected currently, something I ran out of time to implement before I had to leave for work.
Hopefully I can get that sorted so it will prevent that option being available if the Adafruit board is not connected!