Alright, so I did some measurements with REW and they confirm my findings.
Here you can clearly see the dips in the 100-1k range and noise in the 10k-20k range. Phase looks all kinds of weird as well.
Not much difference with the headphone amplifier at -24dB.
This is where things get a bit interesting. Adjusting DA0 and DAC to -3dB produces significantly cleaner output in the 10k-20k band. There's still what looks like a phase inversion at 11k but the difference is actually audible (previous noise-shaped SPL deviance at the most extreme was about 8dB peak to peak).
What's slightly confusing though is that as far as I can tell the headphone amplifier, DA0 and DAC are entirely internal to the SoC with only the amp outputs being externally connected. I have no idea how to fix this without involving Allwinner so we're probably better off just sticking with the -3dB attenuation even on future designs.
Anyway the major dips are at 78, 110, 156, 220, 311, 440, 622, 880 and 1195 Hz. This definitely looks like harmonics to me.
I tried attaching the data files to the post (a little under 3 MB each) but apparently they were too big and I got an ngnix error. Looking at the attachment section it seems I have an attachment quota of 2.93 MB so I guess that makes sense. I'll try to find another way of distributing them in this post but they are currently available in the Mobian chat room on Matrix.org .
Edit: Further testing shows the noise in 10k-20k disappears at anything below unity gain for DA0, as illustrated below with -0.75dB gain.
Edit 2: These graphs are wrong, they illustrate a separate bug in Lollypop. The high freuency issues are still there and I'll post better graphs using mpv instead on Lollypop soon.
Here you can clearly see the dips in the 100-1k range and noise in the 10k-20k range. Phase looks all kinds of weird as well.
Not much difference with the headphone amplifier at -24dB.
This is where things get a bit interesting. Adjusting DA0 and DAC to -3dB produces significantly cleaner output in the 10k-20k band. There's still what looks like a phase inversion at 11k but the difference is actually audible (previous noise-shaped SPL deviance at the most extreme was about 8dB peak to peak).
What's slightly confusing though is that as far as I can tell the headphone amplifier, DA0 and DAC are entirely internal to the SoC with only the amp outputs being externally connected. I have no idea how to fix this without involving Allwinner so we're probably better off just sticking with the -3dB attenuation even on future designs.
Anyway the major dips are at 78, 110, 156, 220, 311, 440, 622, 880 and 1195 Hz. This definitely looks like harmonics to me.
I tried attaching the data files to the post (a little under 3 MB each) but apparently they were too big and I got an ngnix error. Looking at the attachment section it seems I have an attachment quota of 2.93 MB so I guess that makes sense. I'll try to find another way of distributing them in this post but they are currently available in the Mobian chat room on Matrix.org .
Edit: Further testing shows the noise in 10k-20k disappears at anything below unity gain for DA0, as illustrated below with -0.75dB gain.
Edit 2: These graphs are wrong, they illustrate a separate bug in Lollypop. The high freuency issues are still there and I'll post better graphs using mpv instead on Lollypop soon.