2025-03-18 8:57 AM
Heyho,
I have some custom miniature PCBs here, the unholy combination of a super-high-impedance-low-noise amplifier (going to a low noise audio input with 24bit ADC, spectra below from that one) and a STM32L031 on another PCB.
Both circuits share the same ground and power supply.
Actually, I didn't expect the analog part to be that good (shielding issues), so I was greatly annoyed when all got worse when adding the PCB with the MCU.
I already got the noise down by not using the CPU sleep mode: the timer interrupt frequency of 10 kHz was clearly visible in the spectrum, seemingly due to powering the CPU up and down.
Now the noise doesn't change, no matter which peripherals I turn on or off - and even in hardware reset (NRST grounded) there are the same noise spikes at around 4 kHz (and harmonics) on the analog signal.
Noise is only about -80 dBV = 100 µV, but I'd like to find out where that comes from - even with the MCU in reset.
Here are some screenshots with time signal and spectrum:
Notes:
- ground loops removed (the signal looks much worse with non-isolated UART or ST-Link)
- I'm pretty sure it's NOT aliasing from the audio ADC (good analog AA filter and a stopband attenuation of 116dB)
Any ideas ? What could cause these 4 kHz ?
Thanks in advance!
2025-03-18 9:14 AM
I forgot to mention:
2025-03-18 1:59 PM
This is probably an artefact coming from the L0's internal power supply. Is not a plain LDO, rather, is something relatively complex using switching capacitors. It has been discussed here in the past, with ST contribution, but I don't have a link, sorry; and also I don't think there was any remedy offered, probably just the above facts were stated.
In other words, treat the 'L0 as a switching circuit, generating current pulses at its input.
JW