• WANTED: Happy members who like to discuss audio and other topics related to our interest. Desire to learn and share knowledge of science required. There are many reviews of audio hardware and expert members to help answer your questions. Click here to have your audio equipment measured for free!

Review: Apple vs Google USB-C Headphone Adapters

CuteStudio

Active Member
Joined
Nov 23, 2017
Messages
119
Likes
65
A little more info, it does seem to have clock control, just ALSA seems to ignore it.

Find the card using 'lsusb' and the list the details, e.g:
{wpi:~ 19} lsusb
Bus 001 Device 004: ID 05ac:110a Apple, Inc.
: etc.

{wpi:~ 20} lsusb -v -s 1:4
And hunt through for the clock.. near the top:

AudioControl Interface Descriptor:
bLength 12
bDescriptorType 36
bDescriptorSubtype 3 (OUTPUT_TERMINAL)
bTerminalID 3
wTerminalType 0x0302 Headphones
bAssocTerminal 0
bSourceID 2
bCSourceID 9
bmControls 0x0000
iTerminal 0
AudioControl Interface Descriptor:
bLength 8
bDescriptorType 36
bDescriptorSubtype 10 (CLOCK_SOURCE)
bClockID 9
bmAttributes 0x07 Internal programmable Clock (synced to SOF)
bmControls 0x07
Clock Frequency Control (read/write)
Clock Validity Control (read-only)
bAssocTerminal 0
iClockSource 0

So it's there, presumable that's what an Apple selects.
Anyway, I'll wait and see if anyone else has any timing test results. now. Cheers!
 

somebodyelse

Major Contributor
Joined
Dec 5, 2018
Messages
3,754
Likes
3,053
Have you looked under /proc/asound? While it's playing you can see what rate it's actually delivering to the audio device at, and the available sample rates for that device among other things. The 'momentary frequency' varies slightly - I think it's calculated based on the packet size and the interval between the last packets delivered, so gets affected by small timing differences that are smoothed out in the device's internal buffer. Here's an example playing 44k on my Forte:
Code:
$ cat /proc/asound/Forte/stream0
Focusrite Forte at usb-0000:00:14.0-3, high speed : USB Audio

Playback:
  Status: Running
    Interface = 1
    Altset = 1
    Packet Size = 144
    Momentary freq = 44098 Hz (0x5.8320)
    Feedback Format = 16.16
  Interface 1
    Altset 1
    Format: S32_LE
    Channels: 4
    Endpoint: 1 OUT (ASYNC)
    Rates: 44100, 48000, 88200, 96000, 176400, 192000
    Data packet interval: 125 us
    Bits: 24

Capture:
  Status: Stop
  Interface 2
    Altset 1
    Format: S32_LE
    Channels: 2
    Endpoint: 2 IN (ASYNC)
    Rates: 44100, 48000, 88200, 96000, 176400, 192000
    Data packet interval: 125 us
    Bits: 24
 

CuteStudio

Active Member
Joined
Nov 23, 2017
Messages
119
Likes
65
Great advice - thanks!

I tried this on the one I'd been testing:
cat /proc/asound/card1/stream0
Apple, Inc. USB-C to 3.5mm Headphone Jack A at usb-3f980000.usb-1.3, full speed : USB Audio

Playback:
Status: Stop
Interface 1
Altset 1
Format: S24_3LE
Channels: 2
Endpoint: 2 OUT (SYNC)
Rates: 48000 - 48000 (continuous)
Bits: 0
Channel map: FL FR
Interface 1
Altset 2
Format: S16_LE
Channels: 2
Endpoint: 2 OUT (SYNC)
Rates: 48000 - 48000 (continuous)
Bits: 0
Channel map: FL FR
{wpi:~ 2} cat /etc/deb
debconf.conf debian_version

{wpi:~ 2} cat /etc/debian_version
8.0
Linux wpi.home 5.10.27-v7+ #1409 SMP Tue Apr 6 18:23:37 BST 2021 armv7l GNU/Linux

Then I tested it on another with Debian 9.9 running...

I tried a 48k track and it said it was at 48k...
cat /proc/asound/card1/stream0
Apple, Inc. USB-C to 3.5mm Headphone Jack A at usb-3f980000.usb-1.3, full speed : USB Audio

Playback:
Status: Running
Interface = 1
Altset = 1
Packet Size = 288
Momentary freq = 48000 Hz (0x30.0000)
Interface 1
Altset 1
Format: S24_3LE
Channels: 2
Endpoint: 2 OUT (SYNC)
Rates: 44100, 48000
Interface 1
Altset 2
Format: S16_LE
Channels: 2
Endpoint: 2 OUT (SYNC)
Rates: 44100, 48000

And then I tried a 44.1k track, and it says 44.1k
cat /proc/asound/card1/stream0
Apple, Inc. USB-C to 3.5mm Headphone Jack A at usb-3f980000.usb-1.3, full speed : USB Audio

Playback:
Status: Running
Interface = 1
Altset = 1
Packet Size = 288
Momentary freq = 44100 Hz (0x2c.199a)
Interface 1
Altset 1
Format: S24_3LE
Channels: 2
Endpoint: 2 OUT (SYNC)
Rates: 44100, 48000
Interface 1
Altset 2
Format: S16_LE
Channels: 2
Endpoint: 2 OUT (SYNC)
Rates: 44100, 48000

This played at the correct speed, even though the kernel is older (Or perhaps Linux kernel 5 is broken..)
Linux spare.home 4.19.37-v7+ #1216 SMP Thu May 2 13:32:40 BST 2019 armv7l GNU/Linux

So it seems the problem is that Debian 8 has an issue with the Apple, but Debian 9.9 fixes this !
Brilliant, I'll say goodbye to Debian 8 then, thanks - mystery solved, you are a star!!

Now to upgrade - or clean install, decisions..!
 

sofrep811

Active Member
Joined
Jun 4, 2016
Messages
253
Likes
319
I bought a dongle for my iphone from Aliexpress. Threw it away after a couple times. It was that bad.
 

sofrep811

Active Member
Joined
Jun 4, 2016
Messages
253
Likes
319
No— I’m assuming the Apple sounds much better. This was that horrible. Ended up buying a pair of headphones with the Lightening connected — just Beats
 

Yorkshire Mouth

Major Contributor
Joined
Apr 22, 2020
Messages
1,346
Likes
1,289
Location
God's County - Yorkshire
Can we confirm what this product actually is/does?

I always thought it was literally just an adaptor, like a 1/4” to 3.5mm headphone adaptor.

Follow up question. Would the Apple lightning to 3.5mm adaptor be the same?
 

chelgrian

Senior Member
Joined
Jul 27, 2020
Messages
340
Likes
367
Can we confirm what this product actually is/does?

I always thought it was literally just an adaptor, like a 1/4” to 3.5mm headphone adaptor.

Follow up question. Would the Apple lightning to 3.5mm adaptor be the same?

When Apple removed the 3.5mm jack they also removed the DAC and headphone amp from the phone. The dongle is not just an adaptor it's a miniaturised entire USB DAC and headphone amp.
 

CuteStudio

Active Member
Joined
Nov 23, 2017
Messages
119
Likes
65
Hi all,
Another update of the 48k saga, having cured one PI3B by upgrading, I noticed the issue on a PI3B with Buster 10.10 on it, which I thought was the latest software (this is fully uptodate as of today):

cat /proc/device-tree/model
Raspberry Pi 3 Model B Rev 1.2

cat /etc/debian_version
10.10

uname -a
Linux picats 5.10.52-v7+ #1441 SMP Tue Aug 3 18:10:09 BST 2021 armv7l GNU/Linux

cat /proc/asound/card2/stream0 (no idea why this pops up as card2
Apple, Inc. USB-C to 3.5mm Headphone Jack A at usb-3f980000.usb-1.5, full speed : USB Audio
Playback:
Status: Stop
Interface 1
:
Rates: 48000 - 48000 (continuous)
:
Interface 1
:
Rates: 48000 - 48000 (continuous)

So somewhere in the raspbian stack is still an issue with these adapters in some instances, I'm still looking for a pattern to pin down.
Does ALSA sit on tiop of Pulseaudio now?
I'll have a dig, but any help would be useful :)
 
Last edited:

somebodyelse

Major Contributor
Joined
Dec 5, 2018
Messages
3,754
Likes
3,053
Pulseaudio, JACK, Pipewire etc. sit on top of ALSA which is the kernel level audio driver. I don't think the older versions of Raspbian/RaspberryPiOS used it though.
 

CuteStudio

Active Member
Joined
Nov 23, 2017
Messages
119
Likes
65
Ok, that makes sense, thanks.
For it to be in /proc/asound does to me, indicate the kernel module for that type of USB device.

On the two working Pi3Bs (Debian 8 was not working, upgraded to 9.13 (working now)

Debian 9.9
uname -a && grep 4800 /proc/asound/card1/stream0
Linux router.home 4.19.37-v7+ #1216 SMP Thu May 2 13:32:40 BST 2019 armv7l GNU/Linux
Rates: 44100, 48000
Rates: 44100, 48000

Debian 9.13
uname -a && grep 4800 /proc/asound/card1/stream0
Linux wpi.home 4.19.66-v7+ #1253 SMP Thu Aug 15 11:49:46 BST 2019 armv7l GNU/Linux
Rates: 44100, 48000
Rates: 44100, 48000

On the non working:
Debian 10.10
uname -a && grep 4800 /proc/asound/card2/stream0
Linux picats 5.10.52-v7+ #1441 SMP Tue Aug 3 18:10:09 BST 2021 armv7l GNU/Linux
Rates: 48000 - 48000 (continuous)
Rates: 48000 - 48000 (continuous)

So perhaps I need to work out how to downgrade the kernel.
 

attwer

New Member
Joined
Aug 12, 2021
Messages
1
Likes
0
Hi everyone, I just got this apple dongle (EU) and I'm having a little problem.

So I bought it to substitute my onboard sound (creative soundcore3d) although it has all the fancy features (marketing) with separated pcb layer bla bla bla, I had a faint coil whine noise when gaming at high fps and everytime I turn the pc on or off it made a pop noise, which I guess it never damaged the headphones in all these years but I never liked the noise.

I also bought a new cable (ugreen) for my Coolermaster MH 751, because it had channel imbalance when touching the volume wheel.

Here's the problem, with the new cable the dongle doesn't recognize the headphones and I can hear a tic noise every 2 seconds, after some troubleshooting I found out that I need to plug the microphone into the headphones then it works. I then tried removing again the mic and still worked fine, but if shutdown the pc, the next time I have to do the same thing again otherwise it doesn't recognize.

Weird thing is, with the original cable it works fine without the mic. :confused:

About the dongle, I didn't notice any difference apart from being quieter (have to increase it by 20-30 to get the same volume) and now they sound brighter, more sibilant, maybe because I had -5db at 8khz before on the soundblaster eq, which now I'm missing.

The cable, well somehow it increased the bass, I've read a review before that it increased the bass but I didn't believe, thought it could be placebo.

Turns out it really did by too much actually, I tested back and forth with both cables, and the difference is there I'd say 5 or 6db more. And the channel imbalance is still there too.

Mic quality is better and much louder on the apple dongle, but it captures every little sound I guess it's too sensitive, I have to turn it down quite a bit.
 

Yorkshire Mouth

Major Contributor
Joined
Apr 22, 2020
Messages
1,346
Likes
1,289
Location
God's County - Yorkshire
When Apple removed the 3.5mm jack they also removed the DAC and headphone amp from the phone. The dongle is not just an adaptor it's a miniaturised entire USB DAC and headphone amp.

Just a quick follow up question.

Is the Apple lightening to 3.5mm’s performance likely to be the same as the USB-C’s?
 

CuteStudio

Active Member
Joined
Nov 23, 2017
Messages
119
Likes
65
Ok so I've been trying different images on my Pi to see which one fails to allow the 44100 speed of the Apple DAC - and it seems to be the Version 5 linux kernel.

So currently I have loaded up the very last 4.19 kernel build from 27th May 2020:

https://raspberrypi.stackexchange.com/questions/48050/where-to-find-old-raspbian-release
https://downloads.raspberrypi.org/raspios_armhf/images/raspios_armhf-2020-05-28/

The last link - this gives Buster with the 4.19.118 kernel and works perfectly.
So if you have the version 5 kernel (Use uname -r) perhaps you could see what the card does?
Once installed, use this command to lock in that kernel version
apt-mark hold raspberrypi-kernel raspberrypi-bootloader
Then the next apt-get upgrade won't wipe it out..!

( cat /proc/asound/card1/stream0 or cat /proc/asound/card2/stream0 )
And you are looking for the Apple card saying 'Rates: 44100, 48000'.

So this is my best working hypothesis, is that theres an error in the usb sound kernel module (Use lsmod to list them)
 
Last edited:

Niklasmagnus

Member
Joined
Dec 5, 2019
Messages
55
Likes
3
Location
Västerås, Sweden
Hi, three short question:
  1. Will the lightning dongle get a DT770 80 ohm enough power to sound good from my iPhone 11?
  2. Will a usb-c dongle work with RPI4 running moode audio player (including a 12 band peq) and power same DT770 80 ohm?
  3. And same usb-c but from my pc running win10 and powering the DT770?
And I’m living in Sweden so will be the EU dongles?
Thanks
 
Last edited:

Foulchet

Member
Joined
Jun 22, 2021
Messages
84
Likes
50
My EU (France) Lightning -> Jack dongle is enough for my AKG 712 Pro
I must set the iPhone 11 Pro at around 2/3-3/4 of the maximum level.
Honestly speaking, the difference vs a gear with enough power is audible but quite small.
 

Niklasmagnus

Member
Joined
Dec 5, 2019
Messages
55
Likes
3
Location
Västerås, Sweden
Hi, three short question:
  1. Will the lightning dongle get a DT770 80 ohm enough power to sound good from my iPhone 11?
  2. Will a usb-c dongle work with RPI4 running moode audio player (including a 12 band peq) and power same DT770 80 ohm?
  3. And same usb-c but from my pc running win10 and powering the DT770?
And I’m living in Sweden so will be the EU dongles?
Thanks

I’ve been Googling and found some answers.
1.
In this link below, the guy tested the EU version (500mV output) with Dt770 250 ohm and it’s a bit low volume. But will it work with the 80 ohm version?? A confirmation would still be nice.

https://www.reddit.com/r/headphones/comments/ixrr9d
If calculating the SPL for DT770; 80 ohm and 96 dB/mW we get 100dB with 0.45 Vrms.
http://www.digizoid.com/headphones-power.html

Compared to DT770 250 ohm = 100 dB at 0.79 Vrms

2.
usb-c dongle works with RPI according to this reply:

https://www.audiosciencereview.com/...b-as-a-bath-audio-streamer.21446/#post-711829

3.
work according to this link
non-EU I guess), but one must plug a device into the dongle for windows to find it, se notes:

https://forums.serverbuilds.net/t/o...youre-not-sure-what-to-buy-buy-this-8-00/2093

My EU (France) Lightning -> Jack dongle is enough for my AKG 712 Pro
I must set the iPhone 11 Pro at around 2/3-3/4 of the maximum level.
Honestly speaking, the difference vs a gear with enough power is audible but quite small.

Thanks, if use Lehman calc with input; 62ohm, 105 dB/V and 500mV = SPL 111 dB
https://www.lehmannaudio.com/service/headphone-calculator.html
big difference to ~ 100dB for the DT770 80ohm.
 

CuteStudio

Active Member
Joined
Nov 23, 2017
Messages
119
Likes
65
usb-c dongle works with RPI according to this reply:

I will try to see if it works on the Pi4, it's been proven on the Pi3, as long as the kernel is 4.19.
I have not seen it work correctly on the later Kernel 5 (Since 27/05/2020) except at 48000 (no 44100 rate available).
- but would be interested to see anyone else getting it working with the Linux 5 kernel

(I think it's the 'snd_usb_audio' module at issue - try lsmod | grep audio)
 

Niklasmagnus

Member
Joined
Dec 5, 2019
Messages
55
Likes
3
Location
Västerås, Sweden
I will try to see if it works on the Pi4, it's been proven on the Pi3, as long as the kernel is 4.19.
I have not seen it work correctly on the later Kernel 5 (Since 27/05/2020) except at 48000 (no 44100 rate available).
- but would be interested to see anyone else getting it working with the Linux 5 kernel

(I think it's the 'snd_usb_audio' module at issue - try lsmod | grep audio)
In this reply the member write:
“ I have a Pi3b running kernel 5.10.27-v7+“
https://www.audiosciencereview.com/...-bath-audio-streamer.21446/page-3#post-766525
Are you able to test for confirmation?
 
Top Bottom