Soundkarte miniDSP USBStreamer - keine Erkennung beim Booten - USB-compliance

AW_CompBase

Cadet 4th Year
Registriert
Nov. 2012
Beiträge
98
Ich habe eine Soundkarte miniDSP USBStreamer
https://www.minidsp.com/products/usb-audio-interface/usbstreamer

Diese wird beim Booten/Reboot "nie" erkannt. Ich muss immer das Kabel aus-und einstecken. Nur so wird sie erkannt.

Ich habe noch 2 andere USB-Soundkarten (Creative Soundblaster HD). Diese habe das Problem nicht.

Ich habe:
Linux Korora kororaproject.org
Korora 25 Gurgle
Kernel: x86_64 Linux 4.10.15-200.fc25.x86_64

"lsubs" zeigt auch nur "Bus 001 Device 012: ID 2752:0016" an. Keine Beschreibung.

Bei der Soundblaster kommt: "Bus 001 Device 004: ID 041e:30d7 Creative Technology, Ltd"

Bei anderen USB-Geräten kommt auch immer eine Beschreibung.

Ich vermute, dass die USBStreamer den Anforderungen von USB.org nicht genügt hinsichtlich compliance etc.

http://compliance.usb.org/

Kann man die compliance von USB-Soundkarten testen? Mit was (ausser den offiz. tools von usb.org)?

Gruss
AW
 
Keine Ahnung, wie du weitere Compliance tests machen kannst, aber ich hab ein Tool gefunden, welches dir helfen kann. Mach dir ein Systemd service file vom typ "Oneshot", welches das Tool beim Booten aufruft, und den Port zurücksetzt. Dann sollte es funktionieren, ohne dass du jedes mal das Gerät ab- und wieder anstecken musst.
Eventuell musst du n Wrapper Skript in Bash schreiben, welches die Ausgabe von lsusb verarbeitet, um an die richtige Device Nummer zu kommen, da sich diese (je nach Reihenfolge, in der die Geräte erkannt werden bzw Kernel Module geladen werden) ändern kann.

Ich hatte mal n ähnliches Problem mit meinem onboard Lan. Immer, als ich von Windows ins Linux rebootet habe, funktionierte es nicht mehr. Bei nem sauberen Boot direkt ins Linux aber schon. Als Übeltäter stellte sich dann der Windows Treiber heraus, der den Lan Adapter beim Neustart nicht sauber "deinitialisierte". Falls du eine Dual-Boot Umgebung hast, könnte etwas ähnliches die Ursache bei dir sein. Ein wechseln des Treibers könnte dann helfen.
 
Zuletzt bearbeitet:
Hallo

etwas verspätet: Vielen Dank!

Ich habe das Tool usbreset kompiliert, aber das funktioniert nicht mehr. Das ist veraltet. Das ist aus dem Jahre 2010. Ich habe unter "/dev/usb/" nur noch hidden devices. Jetzt werden die Geräte mit udev - Dynamic device management verwaltet.

Das Skript

#!/bin/bash

set -euo pipefail
IFS=$'\n\t'

VENDOR="2752"
PRODUCT="0016"

for DIR in $(find /sys/bus/usb/devices/ -maxdepth 1 -type l); do
if [[ -f $DIR/idVendor && -f $DIR/idProduct &&
$(cat $DIR/idVendor) == $VENDOR && $(cat $DIR/idProduct) == $PRODUCT ]]; then
echo 0 > $DIR/authorized
sleep 0.5
echo 1 > $DIR/authorized
fi
done

scheint aber zu funktionieren.

Das setzt ein einzelnes USB-Audiogerät zurück. Allerdings behebt, das nicht das anormale Verhalten des Geräts an USB. Das ist aber wahrscheinlich die Implementation der usb devices descriptors in dem UB-Gerät. Deshalb meine ursprüngliche Frage nach USB-compliance-tests.

Aber immerhin kann ich jetzt mit Skripts die USB-Audiogeräte zurücksetzen. Das hilft schon.



Gruss
AW
 
Zurück
Oben