Scroll Lock unter Linux

OP #7681869
Lesenswert?

Full Size IBM Tastaturen haben im klassischen Format 3 LEDs zum Anzeigen des Toggle-Zustands der Lock Tasten. Das sind die Caps-Lock (auch Shift-Lock), die Num-Lock (sofern die Tastatur einen Zahlenblock hat) und die Scroll-Lock Taste. Die Toggle Funktion wird nicht in der Tastatur sondern im PC gemacht. Für NumLock kann man in vielen Bios angeben wie der Initialisierungszustand sein soll.

Unter Ubuntu 22.04 ist mir nun aufgefallen, daß die Scroll-Lock Taste bzw. deren Toggle LED nicht funktioniert.


Bitte hier keine Diskussion darüber, daß man das sowieso nicht braucht.


Tastatur ist eine Cherry KC1000 als USB HID. Die gleiche Tastatur funktionert unter Windows einwandfrei und wird auch am Linux PC vor dem Booten von Ubuntu aus dem BIOS her korrekt angesteuert. Erst wenn Ubuntu die Enumeration übernimmt, funktioniert die Scroll-Lock LED nicht mehr.

Ich möchte die Scroll Lock Taste bzw. LED in einer eigenen Anwendung benutzen. Tatsächlich meldet auch Ubuntu bei einer Betätigung den Event Code 145, steuert aber auf dem HID Out Point die dazu passende LED nicht an.

Wie verhält sich die Scroll-Lock Taste bzw. LED bei Euch / anderen Linux Distri ?

#7681888
Lesenswert?

J. V. schrieb:

Wie verhält sich die Scroll-Lock Taste bzw. LED bei Euch / anderen Linux Distri ?

Debian stable (und oldstable) xev zeigt:

1
KeyPress event, serial 38, synthetic NO, window 0x3e00001,
2
    root 0x1cb, subw 0x0, time 1518685, (38,-27), root:(1080,59),
3
    state 0x0, keycode 78 (keysym 0xff14, Scroll_Lock), same_screen YES,
4
    XLookupString gives 0 bytes: 
5
    XmbLookupString gives 0 bytes: 
6
    XFilterEvent returns: False
7

8
KeyRelease event, serial 38, synthetic NO, window 0x3e00001,
9
    root 0x1cb, subw 0x0, time 1518813, (38,-27), root:(1080,59),
10
    state 0x0, keycode 78 (keysym 0xff14, Scroll_Lock), same_screen YES,
11
    XLookupString gives 0 bytes: 
12
    XFilterEvent returns: False

jedoch keine LED. Die Frage wäre, reicht der evend diese Info nicht zurück an den Tatstaturtreiber damit dieser den passenden Code an die Tastatur sendet?

EDIT Premature send…

1
xmodmap -e 'add mod3 = Scroll_Lock'
#7681894
Lesenswert?

Du kannst die Tastaturleds unabhängig vom jeweiligen Status verwenden, auch pro Tastatur anders, und auch automatisch an bestimmte "Signalquellen" koppeln

1
# Meine Tastatur ist "input3" geworden
2
cd sys/class/leds/input3::scrolllock
3
echo 1 > brightness # an
4
echo 0 > brightness # aus
5

6
# oder auch was automatisches
7
echo disk-activity > trigger # extra Platten-LED
8

9
# Schauen was für trigger möglich sind (sonst modprobe ledtrig-netdev usw)
10
cat trigger
11

12
# Default-Verhalten:
13
echo kbd-scrolllock > trigger
#7681954
Lesenswert?

1
daniel@evilspeak:~$ lsb_release -a
2
No LSB modules are available.
3
Distributor ID: Debian
4
Description:    Debian GNU/Linux 11 (bullseye)
5
Release:        11
6
Codename:       bullseye
7
daniel@evilspeak:~$

-> keine led

Dergute W. schrieb:

Moin, xmodmap -e 'add mod3 = Scroll_Lock' und schon gehts (Hier unter BLFS mit Compaq Keyboard).

same here

EDIT: ich weiß immer noch nicht, wofür die Taste und die LED überhaupt da sind ;-)

#7682099
Lesenswert?

Franko S. schrieb:

und falls das trotz sudo nicht geht: sudo bash -c 'echo disk-activity > trigger'

"sudo echo disk-activity > trigger" führt das "echo" völlig sinnfrei als root aus, den Zugriff auf "trigger" aber mit User-Rechten, was nicht geht. Dein Code führt beides als root aus, auch wenn das für "echo" eigentlich nicht nötig ist. oft sieht man Konstrukte wie "echo disk-activity | sudo tee trigger" da wird nur der Zugriff auf das "trigger"-File als root gemacht, falls man "echo" nicht so wirklich traut...

oder man macht gleich ein "sudo -i" und kümmert sich nicht weiter drum.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren