After a short pause, here comes a revision!
Shortly after the last update, I investigated the buzzing issue — its frequency was not constant (e.g., around 270 Hz with an Apple adapter, and variable with a power strip) and was present with some of the portable power banks, so mains hum cannot be the root cause. I eventually concluded that it was the supply noise of the USB 5 V, probably due to switching noise in the power supply devices. The frequency and intensity matched the 5 V bus noise on the oscilloscope.
To get around this, I added an LDO (TLV70245) to obtain a low-noise 4.5 V supply line. I also replaced the individual 1 MΩ resistors with quad-0402 resistor arrays. Microcontroller pins were reassigned and tracks re-routed, both in order to further reduce broken signal paths. And this yields the second revision. — Wait, the house produced seven copies when I ordered 5?
Assembly was largely the same. Resistor arrays are a bit easier to handle than individual components, but not by much — bridges and opens happen, and these can require quite some patience to repair after the speaker has been soldered on, as the plastic casing cannot stand high temperatures.
The twist this time is that I forgot to order the TLV702. The pinout was compatible with my stock SPX3819, so I used that instead. It gives 3.3 V, but that is sufficient for testing. After pin reassignment, the bit clock (BCK) signal is no longer supplied by the SPI clock and is instead generated by a timer (TIM17) running PWM at the same rate. In firmware, this needs another synchronising effort inside the inline assembly block, but it went rather smoothly minus a few detours caused by hidden soldering defects preventing audio signals from passing through.
It works, and the buzzing noise is indeed gone. However, there is now a hissing artefact during the attack/release phase of sounds (i.e., when the volume changes). I suppose this is due to variations in drop-out with output current. Insufficient input/output capacitance might be a problem here; I used 1 µF as is recommended by the TLV702 datasheet while the stand-in SPX3819 calls for >2.2 µF. It remains to be seen how TLV702 will perform.
That apart, the updated revision works quite well. I’ve been struggling to find a place to take a recording — in every quiet place, there will be people to be disturbed by sound. Strange, isn’t it? Even during this lonely time of the summer holidays, I still find myself always surrounded by the herd. Humans are gregarious animals, after all.
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.