Raspberry PI 2B/3 and USB audio

Karl Denninger karl at denninger.net
Mon Nov 26 19:43:38 UTC 2018


This one works fine on my Pi2.... (and it was dirt cheap too)

uaudio0 on uhub1
uaudio0: <C-Media Electronics Inc. USB Audio Device, class 0/0, rev
1.10/1.00, addr 6> on usbus0
uaudio0: Play: 48000 Hz, 2 ch, 16-bit S-LE PCM format, 2x8ms buffer.
uaudio0: Play: 44100 Hz, 2 ch, 16-bit S-LE PCM format, 2x8ms buffer.
uaudio0: Record: 48000 Hz, 1 ch, 16-bit S-LE PCM format, 2x8ms buffer.
uaudio0: Record: 44100 Hz, 1 ch, 16-bit S-LE PCM format, 2x8ms buffer.
uaudio0: No MIDI sequencer.
pcm1: <USB audio> on uaudio0
uaudio0: HID volume keys found.

It was a no-name, and is a "full speed"....

ugen0.6: <C-Media Electronics Inc. USB Audio Device> at usbus0, cfg=0
md=HOST spd=FULL (12Mbps) pwr=ON (100mA)

FreeBSD 11.0-STABLE #1 r313159M: Wed Feb 15 13:36:01 CST 2017    
freebsd at NewFS.denninger.net:/pics/Crochet-work/obj/arm.armv6/pics/CrossBuild/src/sys/RPI2

Older kernel and OS, but working fine.  I use it to play synthesized
voice and MP3s.


On 11/26/2018 13:21, Herbert J. Skuhra wrote:
> On Mon, 12 Nov 2018 20:46:13 +0100, "Herbert J. Skuhra" wrote:
>> On Sun, 11 Nov 2018 13:52:14 +0100, Hans Petter Selasky wrote:
>>> On 11/10/18 12:24 PM, Herbert J. Skuhra wrote:
>>>> Hi,
>>>>
>>>> if you use an USB sound card on your Raspberry PI 2B/3, can you please
>>>> answer the following questions:
>>>>
>>>> - which USB sound card?
>>>> - do you have bad audio on current or stable/12 after r339388?
>>>>
>>>> My "Creative Technology Ltd Sound Blaster Play 2" device sounds very
>>>> bad. Meanwhile more changes were commited but they don't fix audio
>>>> completly.
>>>>
>>> Hi,
>>>
>>> Some background:
>>>
>>> The USB controller in Raspberry PI is running HIGH-speed USB. Many USB
>>> audio device are FULL-speed USB. In order for a FULL-speed USB device
>>> to work in a HIGH-speed USB environment all data transfers need to go
>>> through a so-called transaction translator. This transaction
>>> translator operate on chunks of data, 171 bytes maximum. That means if
>>> a USB audio stream generates 1000 packets per second, then suddenly a
>>> bunch of smaller packets will be needed. This puts some stress on the
>>> DWC OTG driver and there might be some room for improvement in this
>>> area too, but the basic sympthom is that the DWC OTG driver in FreeBSD
>>> is not always able to keep up with the timing required for these
>>> so-called split transactions. One idea is to move all DWC OTG IRQ
>>> handling away from CPU-0. I'm not sure if cpuset supports this yet on
>>> armv7 // arm64. Might have to be done in the driver.
>>>
>>> Further some audio device use non-adaptive clocks, which means the
>>> recording channel must be active along with the playback channel else
>>> jitter will occur.
>>>
>>> The recommendation for RPI is a HIGH-speed USB audio device (should be
>>> clearly marked in the specification). Using a HIGH-speed USB audio
>>> device will reduce the number of interrupts significantly.
>> Well, the sound card worked perfectly fine so far... both on FreeBSD
>> and Arch Linux ARM... no luck with NetBSD. Never mind! I am obviously
>> the only user affected by this "fix" (r339388).
> Unfortunally I've purchased another full-speed usb audio device:
>
> uaudio0 on uhub1
> uaudio0: <Creative Technology Ltd Sound Blaster Play 3, class 0/0, rev 2.00/1.06, addr 4> on usbus0
> uaudio0: Play: 96000 Hz, 2 ch, 24-bit S-LE PCM format, 2x8ms buffer.
> uaudio0: Play: 88200 Hz, 2 ch, 24-bit S-LE PCM format, 2x8ms buffer.
> uaudio0: Play: 48000 Hz, 2 ch, 24-bit S-LE PCM format, 2x8ms buffer.
> uaudio0: Play: 44100 Hz, 2 ch, 24-bit S-LE PCM format, 2x8ms buffer.
> uaudio0: Record: 48000 Hz, 2 ch, 24-bit S-LE PCM format, 2x8ms buffer.
> uaudio0: Record: 44100 Hz, 2 ch, 24-bit S-LE PCM format, 2x8ms buffer.
> uaudio0: No MIDI sequencer.
> pcm0: <USB audio> on uaudio0
> uaudio0: HID volume keys found.
>
> While it works fine under Linux (pulse), MacOS and Windows, it
> produces only bad noise under FreeBSD (Raspberry PI3B)! :-(
>
> How can I get it working? Can anyone recommend an USB audio device for
> FreeBSD? Should DACs from Pro-Ject work?
>
> Thanks.
>
> --
> Herbert
> _______________________________________________
> freebsd-arm at freebsd.org mailing list
> https://lists.freebsd.org/mailman/listinfo/freebsd-arm
> To unsubscribe, send any mail to "freebsd-arm-unsubscribe at freebsd.org"

-- 
Karl Denninger
karl at denninger.net <mailto:karl at denninger.net>
/The Market Ticker/
/[S/MIME encrypted email preferred]/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 4897 bytes
Desc: S/MIME Cryptographic Signature
URL: <http://lists.freebsd.org/pipermail/freebsd-arm/attachments/20181126/0476329f/attachment.bin>


More information about the freebsd-arm mailing list