Jump to content
Sign in to follow this  
lintweaker

Linux USB2 driver for the Mytek Stereo192-DSD DAC

Rate this topic

Recommended Posts

After some weeks of intensive work, I have uploaded a Linux USB2 driver for the Mytek.

It's based on the USB2 driver for the Terratec 6Fire currently available in the kernel. I have adapted it to work with the Mytek.

 

With thanks to Jesus from Sonore for getting some documentation.

 

You'll have to compile the driver yourself, instructions can be found in the INSTALL, FIRMWARE, ISSUES and README.md files.

 

my github repo

 

Let me know how it works!

Share this post


Link to post
Share on other sites

Great! :)

 

On Ubuntu 12.04 the module builds and loads without errors but no devices appear anywhere on ALSA side...

 

I patched the makefile a little and added dkms.conf so that the driver can be managed through DKMS, but that shouldn't affect the actual functionality.

 

(and Mytek stays in "no lock" -state)


Signalyst - Developer of HQPlayer

Pulse & Fidelity - Software Defined Amplifiers

Share this post


Link to post
Share on other sites
Great! :)

 

On Ubuntu 12.04 the module builds and loads without errors but no devices appear anywhere on ALSA side...

 

I patched the makefile a little and added dkms.conf so that the driver can be managed through DKMS, but that shouldn't affect the actual functionality.

 

(and Mytek stays in "no lock" -state)

Thanks for testing. If I recall correctly when set to usb2 the mytek should lock to a freq even without a driver loaded.

Have you tried the work around mentioned in the ISSUES file regarding problems loading firmware? On one of my systems it never loads all levels without me having to interfere.

Share this post


Link to post
Share on other sites
Thanks for testing. If I recall correctly when set to usb2 the mytek should lock to a freq even without a driver loaded.

 

No, it remains in "no lock" state until a driver is loaded. This happens with Windows too, it stays in "no lock" until Windows loads the driver.

 

Have you tried the work around mentioned in the ISSUES file regarding problems loading firmware? On one of my systems it never loads all levels without me having to interfere.

 

modprobe of the driver doesn't output anything to stderr, and the only thing in dmesg is:

usb 1-1.1: new high-speed USB device number 5 using ehci_hcd

 

But the driver get's loaded (and stays even when unplugged):

[email protected]:~$ lsmod | grep mytek

snd_usb_mytek 23235 0

snd_pcm 97188 4 snd_usb_mytek,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec

 

It doesn't show up in "aplay -l" nor at HQPlayer's device enumeration. I forgot to check /proc ...

 

Firmware files are in /lib/firmware/mytek and I checked that the SHA-1 hashes match.

 

I'll try to find time at some point to look up in more detail where things go wrong...

 

By the way, if you have enough docs for the DSD streaming, I would be happy to participate in introducing similar DSD sample formats as the ASIO ones for ALSA to avoid DoP-hack and do DSD a proper way on Linux too...


Signalyst - Developer of HQPlayer

Pulse & Fidelity - Software Defined Amplifiers

Share this post


Link to post
Share on other sites
No, it remains in "no lock" state until a driver is loaded. This happens with Windows too, it stays in "no lock" until Windows loads the driver.

 

 

 

modprobe of the driver doesn't output anything to stderr, and the only thing in dmesg is:

usb 1-1.1: new high-speed USB device number 5 using ehci_hcd

 

But the driver get's loaded (and stays even when unplugged):

[email protected]:~$ lsmod | grep mytek

snd_usb_mytek 23235 0

snd_pcm 97188 4 snd_usb_mytek,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec

 

It doesn't show up in "aplay -l" nor at HQPlayer's device enumeration. I forgot to check /proc ...

 

Firmware files are in /lib/firmware/mytek and I checked that the SHA-1 hashes match.

 

I'll try to find time at some point to look up in more detail where things go wrong...

 

By the way, if you have enough docs for the DSD streaming, I would be happy to participate in introducing similar DSD sample formats as the ASIO ones for ALSA to avoid DoP-hack and do DSD a proper way on Linux too...

 

I have installed all the iterations to date without issue including the version in github over the latest Kernel in Vortexbox. I turn on my server and wait for command line then flip the switch on the Mytek. What does command line display when you turn on the Mytek? What does dmesg record?

 

Jesus R

http://www.sonore.us

Share this post


Link to post
Share on other sites
What does command line display when you turn on the Mytek? What does dmesg record?

 

Nothing, but on Ubuntu by default none of the kernel messages go to console anyway. In dmesg there's only that single line about the new USB device and nothing else.


Signalyst - Developer of HQPlayer

Pulse & Fidelity - Software Defined Amplifiers

Share this post


Link to post
Share on other sites
Nothing, but on Ubuntu by default none of the kernel messages go to console anyway. In dmesg there's only that single line about the new USB device and nothing else.

There should be multiple blocks of the following lines, each block represents one level being loaded:

 

 

[ 2154.280052] usb 1-5.4: new high-speed USB device number 34 using ehci_hcd

[ 2154.368549] usb 1-5.4: New USB device found, idVendor=25ce, idProduct=000e

[ 2154.368554] usb 1-5.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3

[ 2154.368557] usb 1-5.4: Product: STEREO192-DSD DAC

[ 2154.368560] usb 1-5.4: Manufacturer: Mytek Digital

[ 2154.368562] usb 1-5.4: SerialNumber: 00000000000XXXXX

 

I have made a silly helper script to unload and load the module a few times to get all the firmware level loaded (its in github).

 

BTW I'd like to get back on your offer regarding ASIO, I think I have enough documentation.

Edited by lintweaker
typo

Share this post


Link to post
Share on other sites
There should be multiple blocks of the following lines, each block represents one level being loaded:

 

 

 

 

I have made a silly helper script to unload and load the module a few times to get all the firmware level loaded (its in github).

 

BTW I'd like to get back on your offer regarding ASIO, I think I have enough documentation.

Hi! Do i need to compile the kernel with support for the DMX 6Fire USB to be able to 1. Compile , 2. Use the Mytek driver?


Yay!

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×
×
  • Create New...