Looking for DAC with 32bit for FreeBSD 14.2

Here is my Harrison 32 Ci:
Code:
uaudio1 on uhub0
uaudio1: <Icon Global 32Ci4, class 0/0, rev 2.00/1.00, addr 2> on usbus3
uaudio1: Play[0]: 192000 Hz, 14 ch, 32-bit S-LE PCM format, 2x4ms buffer. (selected)
uaudio1: Play[0]: 176400 Hz, 14 ch, 32-bit S-LE PCM format, 2x4ms buffer.
uaudio1: Play[0]: 96000 Hz, 14 ch, 32-bit S-LE PCM format, 2x4ms buffer.
uaudio1: Play[0]: 88200 Hz, 14 ch, 32-bit S-LE PCM format, 2x4ms buffer.
uaudio1: Play[0]: 48000 Hz, 14 ch, 32-bit S-LE PCM format, 2x4ms buffer.
uaudio1: Play[0]: 44100 Hz, 14 ch, 32-bit S-LE PCM format, 2x4ms buffer.
uaudio1: Record[0]: 192000 Hz, 14 ch, 32-bit S-LE PCM format, 2x4ms buffer. (selected)
uaudio1: Record[0]: 176400 Hz, 14 ch, 32-bit S-LE PCM format, 2x4ms buffer.
uaudio1: Record[0]: 96000 Hz, 14 ch, 32-bit S-LE PCM format, 2x4ms buffer.
uaudio1: Record[0]: 88200 Hz, 14 ch, 32-bit S-LE PCM format, 2x4ms buffer.
uaudio1: Record[0]: 48000 Hz, 14 ch, 32-bit S-LE PCM format, 2x4ms buffer.
uaudio1: Record[0]: 44100 Hz, 14 ch, 32-bit S-LE PCM format, 2x4ms buffer.
 
Pretty much all of them should work out of the box - all of the commonly used chipsets will work via the snd_uaudio driver.
So it basically just depends on how much you want to spend.

I've used (and still occasionally use) Fiio E10K (micro-USB and USB-C version) for several years and currently a SMSL DL200 without any issues:

Code:
uaudio0 on uhub1
uaudio0: <SMSL USB AUDIO> on usbus0
uaudio0: Play[0]: 384000 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
uaudio0: Play[0]: 352800 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
uaudio0: Play[0]: 192000 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
uaudio0: Play[0]: 176400 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
uaudio0: Play[0]: 96000 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
uaudio0: Play[0]: 88200 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
uaudio0: Play[0]: 48000 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
uaudio0: Play[0]: 44100 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
[...]
uaudio1 on uhub1
uaudio1: <FiiO USB DAC-E10> on usbus0
uaudio1: Play[0]: 384000 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
uaudio1: Play[0]: 352800 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
uaudio1: Play[0]: 192000 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
uaudio1: Play[0]: 176400 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
uaudio1: Play[0]: 96000 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
uaudio1: Play[0]: 88200 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
uaudio1: Play[0]: 48000 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
uaudio1: Play[0]: 44100 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.

Just make sure to nuke crap like (especially!) pulseaudio from the system and use OSS directly, ideally with bitperfect if possible. Otherwise there won't be any reason to use a high-bitrate DAC if there's (multiple) software layers inbetween that work at lower bitrates/sampling rates and (significantly) lower the sound quality.
 
hi mate

i used to use a fiio usb dac that worked great on Freebsd
( unfortunately not working any more )


a google search for "fiio 32bit"

turns up this

 
Not everything USB Audio class compliant works in FreeBSD without problems. Linux has a driver that is full of quirks for individual pieces. And we don't. I seem to recall a Fiio product was affected.
 
Hi, who can suggest a DAC, with 32bit sound output that will be working out of the box with FreeBSD 14.2?
Thank you.

Any particular use case that requires 32bit? The difference to 24bit is unnoticeable unless you need an unusually high dynamic range for recording. At less than 100€ the quality of the DA converters and amps will be much more critical. Unfortunately the DACs I could recommend are all more costly.

Here is my Harrison 32 Ci:

Nice one! Somehow reminds me of my old and trustworthy SPL Crimson.

Not everything USB Audio class compliant works in FreeBSD without problems. Linux has a driver that is full of quirks for individual pieces. And we don't. I seem to recall a Fiio product was affected.

We do have some quirks for individual models, but these are mostly older ones. I think USB audio class compliance has improved in recent years, hardware is now tested against multiple implementations (Windows, macOS, iOS).
 
I have a SMSL C200 fed by the optical port out on my workstation; no issues with FreeBSD (or Linux or Windows).

It was around $200 two years ago when I got it. Not sure of the current prices. It replaced a Topping unit which is serving duty somewhere else now.
 
What works for me with 32bit (fixed, float is not tested):
  • Chord Mojo
  • FiiO Q3 (2021)
  • FiiO M11 (DAP, connected with DAC mode via USB)
  • Princeton PAV-HADSD
DSD is untested. All of them can do sampling rates 384KHz.
All of them works as USB audio class devices, but all are already discontinued.

Example dmesg (Mojo)
Code:
ugen0.8: <Chord Electronics Ltd Mojo> at usbus0
uaudio0 on uhub1
uaudio0: <Chord Electronics Ltd Mojo, class 239/2, rev 2.00/1.97, addr 7> on usbus0
uaudio0: Play[0]: 384000 Hz, 2 ch, 32-bit S-LE PCM format, 2x4ms buffer. (selected)
uaudio0: Play[0]: 352800 Hz, 2 ch, 32-bit S-LE PCM format, 2x4ms buffer.
uaudio0: Play[0]: 192000 Hz, 2 ch, 32-bit S-LE PCM format, 2x4ms buffer.
uaudio0: Play[0]: 176400 Hz, 2 ch, 32-bit S-LE PCM format, 2x4ms buffer.
uaudio0: Play[0]: 96000 Hz, 2 ch, 32-bit S-LE PCM format, 2x4ms buffer.
uaudio0: Play[0]: 88200 Hz, 2 ch, 32-bit S-LE PCM format, 2x4ms buffer.
uaudio0: Play[0]: 48000 Hz, 2 ch, 32-bit S-LE PCM format, 2x4ms buffer.
uaudio0: Play[0]: 44100 Hz, 2 ch, 32-bit S-LE PCM format, 2x4ms buffer.
uaudio0: Play[0]: 32000 Hz, 2 ch, 32-bit S-LE PCM format, 2x4ms buffer.
uaudio0: No recording.
uaudio0: No MIDI sequencer.
pcm6 on uaudio0
uaudio0: No HID volume keys found.
 
What is the real number of bits of an 32bit device? That has been my first question, too. If the effective numer of bits of the converter is not too far below, it needs excellent hardware not to spoil the overall performance. Therefore I would be careful with low cost devices. They will have 32bit for sure. But the performance can be worse than 24bit or even 16bit.

This is one reference about converter specs: https://www.analog.com/media/en/training-seminars/tutorials/MT-003.pdf
 
What is the real number of bits of an 32bit device? That has been my first question, too. If the effective numer of bits of the converter is not too far below, it needs excellent hardware not to spoil the overall performance. Therefore I would be careful with low cost devices. They will have 32bit for sure. But the performance can be worse than 24bit or even 16bit.

FWIW, the professional RME devices I know use 32bit resolution in the hardware mixer, but AD/DA are 24bit, same as digital connectors like SPDIF and ADAT. Kinda makes sense to have some headroom for computation. For a properly scaled output signal, more than 24bit is probably overkill, limited by the DA circuit noise floor.

Sample rate is a bit different in my experience, I had some devices where higher sample rate could make up for badly engineered AD/DA circuits, MOTU in particular. At least noticeable up to 96kHz, beware that higher sample rates tend to introduce more high frequency noise. On a well-made DAC, you already need very good speakers and hearing to differentiate 96kHz from 48kHz.
 
I have an SMSL AO200 USB DAC/Amp powering a pair of floor standing speakers in my office. I use musicpd and bitperfect.

The only issue I've had is if I enable power saver mode and skip a song, it can clip the first half second of the next song.

Also the amp's volume control isn't host controllable in bitperfect mode. I may setup a hack with IR ports later.

Code:
Dec 11 16:50:13 swain kernel: ugen1.10: <SMSL SMSL USB AUDIO> at usbus1
Dec 11 16:50:13 swain kernel: uaudio2 on uhub2
Dec 11 16:50:13 swain kernel: uaudio2: <SMSL USB AUDIO> on usbus1
Dec 11 16:50:13 swain kernel: uaudio2: Play[0]: 384000 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
Dec 11 16:50:13 swain kernel: uaudio2: Play[0]: 352800 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
Dec 11 16:50:13 swain kernel: uaudio2: Play[0]: 192000 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
Dec 11 16:50:13 swain kernel: uaudio2: Play[0]: 176400 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
Dec 11 16:50:13 swain kernel: uaudio2: Play[0]: 96000 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
Dec 11 16:50:13 swain kernel: uaudio2: Play[0]: 88200 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
Dec 11 16:50:13 swain kernel: uaudio2: Play[0]: 48000 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
Dec 11 16:50:13 swain kernel: uaudio2: Play[0]: 44100 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
 
i have fiio e17 which has an internal battery
and can be powered when its plugged in with usb

the buttons on the front no longer work

so i took the back off and the battery is swollen
and pushing the buttons on the front out so they cant be depressed

i either have to replace the battery
or see if its possible to disconnect it

 
Back
Top