Seite 2 von 2
Re: Asus Xonar U1
Verfasst: Samstag 8. November 2025, 08:25
von Allfred
Hat hier jemand Lust einen Blick auf die spartanischen 20 Zeilen der .sh zu werfen und mir sagen, warum das Skript nicht läuft?
Code: Alles auswählen
#!/bin/sh
#Asus Xonar U1 does not preserve the configuration on hibernate
#We will manully unbind the usbhid driver from the device and
#bind it again on thaw, so that udev can pick up the event and spawn
#a new xonard instance
case "$1" in
hibernate)
#Remove any stale temporary file
rm -f -- /tmp/asus-xonar-u1-devices
#Unbind Xonar U1 devices and store their IDs
for dev in /sys/bus/usb/drivers/usbhid/[0-9]*
do
if [ -d $dev/0003:0B05:1743.* ]
then
devname=`basename $dev`;
echo "$devname" >> /tmp/asus-xonar-u1-devices
echo "$devname" > /sys/bus/usb/drivers/usbhid/unbind
fi
done
;;
thaw)
#Rebind stored Xonar U1 devices
for devname in `cat /tmp/asus-xonar-u1-devices`
do
echo "$devname" > /sys/bus/usb/drivers/usbhid/bind
done
#Remove the temporary file
rm -f -- /tmp/asus-xonar-u1-devices
;;
*) exit $NA
;;
esac
Re: Asus Xonar U1
Verfasst: Samstag 8. November 2025, 15:35
von Siliziumfuchs
Das steht nicht im Script, sondern vermutlich in der Fehlermeldung
Re: Asus Xonar U1
Verfasst: Samstag 8. November 2025, 16:07
von Allfred
Es gibt keine Fehlermeldung:
Code: Alles auswählen
[voll@voll-ga890gpaud3h asus-xonar-u1-utils-master]$ sh 16-asus-xonar-u1.sh
[voll@voll-ga890gpaud3h asus-xonar-u1-utils-master]$
Re: Asus Xonar U1
Verfasst: Samstag 8. November 2025, 16:56
von Siliziumfuchs
Also es läuft, tut nur nicht das erwartete... damit bin ich eigentlich raus. Das mit der Shell-Programmierung ist schon sehr lange her und war dann auch nicht sh, sonder bash...
Aber wegen dem
Muss man dem Skript beim Aufruf nicht noch einen Parameter mitgeben in dem steht was das Skript machen soll (dieser Parameter landet dann in "$1")? Wenn man nichts oder was falsches angibt, dann landet man unten beim 'exit'
Also entweder
oder
Re: Asus Xonar U1
Verfasst: Samstag 8. November 2025, 17:17
von Allfred
"...damit bin ich eigentlich raus"
Ich war nie drin.
Nee, im Ernst. Ich kann sowas wirklich nur rudimentär lesen und es hat mich auch gewundert.
Bei meiner Lösungssuche fand ich auf Github diese (hoffendliche) Lösung:
https://github.com/alexp-sssup/asus-xonar-u1-utils
Leider kenne ich mich mit Github nicht aus. Hilft Dir das irgendwie weiter?
Re: Asus Xonar U1
Verfasst: Samstag 8. November 2025, 19:36
von Siliziumfuchs
Mir kann das nichts helfen, ich habe diese Technik hier nicht. Aber über das Script '16-asus-xonar-u1.sh' aus dem Link reden wir doch gerade...
Re: Asus Xonar U1
Verfasst: Sonntag 16. November 2025, 19:32
von Allfred
Es geht weiter !!
Ich habe es im Terminal versucht:
Code: Alles auswählen
[voll@voll-ga890gpaud3h ~]$ git clone https://github.com/nan0desu/asus-xonar-u1-utils.git ~/xonar/
Klone nach '/home/voll/xonar'...
remote: Enumerating objects: 183, done.
remote: Total 183 (delta 0), reused 0 (delta 0), pack-reused 183 (from 1)
Empfange Objekte: 100% (183/183), 50.56 KiB | 1.05 MiB/s, fertig.
Löse Unterschiede auf: 100% (98/98), fertig.
[voll@voll-ga890gpaud3h ~]$ cd ~/xonar/
[voll@voll-ga890gpaud3h xonar]$ make
rm -rf *.o
rm -f xonard
rm -f xonarctl
gcc -Wall -o xonard xonard.c
xonard.c: In Funktion »main«:
xonard.c:403:38: Warnung: Ausgabe der »%s«-Direktive könnte abgeschnitten sein, beim Schreiben von bis zu 255 Bytes in eine Region der Größe 250 [-Wformat-truncation=]
403 | snprintf(logMessage, 256, "NAME: %s", nameBuffer);
| ^~ ~~~~~~~~~~
xonard.c:403:5: Anmerkung: »snprintf« hat zwischen 7 und 262 Bytes in das Ziel der Größe 256 ausgegeben
403 | snprintf(logMessage, 256, "NAME: %s", nameBuffer);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
gcc -Wall -o xonarctl xonarctl.c
[voll@voll-ga890gpaud3h xonar]$ sudo make install
[sudo] Passwort für voll:
rm -rf /etc/udev/rules.d/16-asus-xonar-u1.rules
rm -rf /etc/pm/sleep.d/16-asus-xonar-u1.sh
killall -q xonard | true
rm -rf /usr/local/bin/xonard
rm -rf /usr/local/bin/xonarctl
cp -a 16-asus-xonar-u1.rules /etc/udev/rules.d/
cp -a 16-asus-xonar-u1.sh /etc/pm/sleep.d/
cp: reguläre Datei '/etc/pm/sleep.d/' kann nicht angelegt werden: Datei oder Verzeichnis nicht gefunden
make: *** [Makefile:28: install] Fehler 1
Ich habe gerade nachgeschaut, in etc gibt es keinen Ordner pm.
Siliziumfuchs hat geschrieben:eine Suche im Web sagt: powermanagement
Gibt es aber offenbar nicht mehr, weil's jetzt eine Aufgabe von systemd ist (also das Powermanagement)
Fällt jemanden im Forum Abhilfe dazu was ein?
Re: Asus Xonar U1
Verfasst: Sonntag 16. November 2025, 21:44
von gosia
Hallo Allfred,
nun ja, die Skripte in dem Link sind ja immer noch 13 Jahre alt, insofern hat sich schon vieles geändert. Ein weiteres Problem ist, dass nur diejenigen testen können, die auch so ein Gerät benutzen.
Deshalb unter ganz grossem Vorbehalt: Ich habe einfach erstmal ein Verzeichnis /etc/pm/sleep.d/ angelegt, damit der make install Vorgang fehlerfrei durchläuft. Dass Skripte /etc/pm/sleep.d/ mit systemd nicht mehr berücksichtigt werden kann man erstmal vernachlässigen, weil diese ja "nur" für den Schlaf-Modus (suspend) Bedeutung haben. Wichtiger ist, ob das Skript xonarctl in /usr/local/bin/ überhaupt funktioniert. Wenn ich es aufrufe
kommt zumindest mal die Hilfeseite mit den möglichen Optionen:
Code: Alles auswählen
Usage: xonarctl [options]
OPTIONS:
-h, --help Print this message.
-b, --blue Set color to blue.
-r, --red Set color to red.
-p, --purple Set color to purple.
--blue-red Set blinking blue to red.
--red-blue Set blinking from red to blue.
--purple-blue Set color from purple to blue.
--purple-red Set color from purple to red.
--disable Disable the LEDs.
-s, --still Make the LED still.
-a, --audio Make the red LED react to audio.
-v, --volume Make the red LED behaviour volume dependent.
-d, --duty-cycle <value> Specify time spent on vs time spent off in %.
--period <value> Specify time spent off vs time spent on in ms (max 255).
Da kann ich mangels Gerät nichts machen, aber Du könntest schon mal etwas davon probieren, z.B. --blue oder --red, ob da eine entsprechende Reaktion erfolgt. Wenn da nichts passiert spielt IMHO der Rest auch keine Rolle mehr. Wenn aber doch, dann kannst Du probieren, die Datei 16-asus-xonar-u1.sh von Hand ins für systemd-relevante Verzeichnis /usr/lib/systemd/system-sleep/ zu kopieren.
Aber ich bin sehr skeptisch und empfehle auf jeden Fall vorher ein Backup zu machen, damit Du wieder zurück kannst.
viele Grüsse gosia
Re: Asus Xonar U1
Verfasst: Montag 17. November 2025, 07:42
von Allfred
Läuft!
Seit Win7 eingestampft wurde weinte ich diesem Teil nach.
Jetzt nacht es wieder Spass.
Wie sich das mit dem Schlafmodus macht, weiß ich noch nicht, werde aber berichten.
Nachtrag: Standby funktioniert, die Xonar U1 bleibt ohne Eingriffe nach dem Standby aktiv.
Problem gelöst !
Danke an alle Helfenden.