staging.inyokaproject.org

Hintergrundbeleuchtung der Tastatur einschalten

Status: Gelöst | Ubuntu-Version: Ubuntu MATE 20.04 (Focal Fossa)
Antworten |

DocHifi

Avatar von DocHifi

Anmeldungsdatum:
21. Oktober 2008

Beiträge: 692

Folgende Situation:

Ich habe hier ein Sony Vaio sve171e13m Laptop mit beleuchteter Tastatur.

Diese leuchtet bis kurz vor dem Start des Displaymanager und geht dann aus und lässt sich nicht mehr einschalten.

Einen Schalter gibt es nicht, unter Windows wird das mit einer Sony Software geschaltet.

Bei meiner Suche im Netz bin ich auf das Modul "sony_laptop" gestoßen, und habe mir mit modinfo mal die Parameter angesehen.

parm:           kbd_backlight:set this to 0 to disable keyboard backlight, 1 to enable it with automatic control and 2 to have it always on (default: no change from current value) (int)

Also habe ich in modprobe.d eine sony_laptop.conf angelegt mit dem Inhalt:

options sony-laptop kbd_backlight=2

Nach einem Neustart weiterhin keine Beleuchtung.

Irgendwas im System muss ja dafür verantwortlich sein, was die Beleuchtung abschaltet, also müsste man dem nur klar machen, sie nicht abzuschalten.

Aber jetzt kommt es:

Versetze ich das System in Bereitschaft und wecke es wieder auf, geht die Beleuchtung.

Hat da jemand eine Idee zu, wie ich die Beleuchtung immer zum leuchten bringe ?

Gruß DH

dingsbums

Anmeldungsdatum:
13. November 2010

Beiträge: 3337

Falscher Name in der conf-Datei?

modinfo sony-laptop
...
name:           sony_laptop
...

Ggf. mußt du das Modul auch noch laden.

sudo modprobe -v sony_laptop

DocHifi

(Themenstarter)
Avatar von DocHifi

Anmeldungsdatum:
21. Oktober 2008

Beiträge: 692

Hallo dingsbums

Das war ein Schreibfehler von mir.

Die Datei und der Inhalt sind schon richtig geschrieben.

Geladen wird es beim Systemstart bereits.

Gruß DH

dingsbums

Anmeldungsdatum:
13. November 2010

Beiträge: 3337

Was findet denn ein

find /sys/devices -name *backlight*

DocHifi

(Themenstarter)
Avatar von DocHifi

Anmeldungsdatum:
21. Oktober 2008

Beiträge: 692

dingsbums schrieb:

Was findet denn ein

find /sys/devices -name *backlight*

Leider nichts.

dingsbums

Anmeldungsdatum:
13. November 2010

Beiträge: 3337

Noch ein paar Ideen zum Ausprobieren:

Geladen wird es beim Systemstart bereits.

Was passiert, wenn du es entlädst und wieder lädst?

Diese leuchtet bis kurz vor dem Start des Displaymanager

Versetze ich das System in Bereitschaft und wecke es wieder auf, geht die Beleuchtung.

Was passiert, wenn du den Displaymanager per virtueller Konsole beendest, das Modul neu lädst und den DM wieder startest?

Ubuntu MATE 20.04

Wie verhalten sich ein jeweils aktuelles 22.04-Livesystem und ein 20.04-Livesystem?

dingsbums

Anmeldungsdatum:
13. November 2010

Beiträge: 3337

ChickenLipsRfun2eat Team-Icon

Supporter
Avatar von ChickenLipsRfun2eat

Anmeldungsdatum:
6. Dezember 2009

Beiträge: 12070

dingsbums schrieb:

https://askubuntu.com/questions/1191252/enabling-keyboard-backlight-on-sony-vaio-on-ubuntu-19-10

Bitte nicht das dort angegebene

sudo nautilus

Nutze

echo 1 | sudo tee /sys/devices/platform/sony-laptop/kbd_backlight

Prüfe aber vorher, ob es den Pfad gibt!

DocHifi

(Themenstarter)
Avatar von DocHifi

Anmeldungsdatum:
21. Oktober 2008

Beiträge: 692

Was passiert, wenn du es entlädst und wieder lädst?

Nichts, die Beleuchtung bleibt an oder aus, je nach Zustand, das Modul scheint hier nicht zuständig zu sein.

Doch sie ist jetzt aus, aber nach dem wieder laden bleibt sie aus.

Was passiert, wenn du den Displaymanager per virtueller Konsole beendest, das Modul neu lädst und den DM wieder startest?

Wird nichts bringen, die Beleuchtung geht kurz vorher aus.

Wie verhalten sich ein jeweils aktuelles 22.04-Livesystem und ein 20.04-Livesystem?

Getestet hab ich 20.04 Mate und das aktuelle Mint mit Cinnamon, bei beiden das gleiche Verhalten.

DocHifi

(Themenstarter)
Avatar von DocHifi

Anmeldungsdatum:
21. Oktober 2008

Beiträge: 692

echo 1 | sudo tee /sys/devices/platform/sony-laptop/kbd_backlight

Ergibt:

tee: /sys/devices/platform/sony-laptop/kbd_backlight: Keine Berechtigung

Der Pfad existiert.

ChickenLipsRfun2eat Team-Icon

Supporter
Avatar von ChickenLipsRfun2eat

Anmeldungsdatum:
6. Dezember 2009

Beiträge: 12070

Du könntest als einfaches Tool brightnessctl nutzen. Das ermittelt dir die korrekten Pfade.


Machen wir es mal etwas ausführlicher. Generell findest du Tastaturen (und deren Beleuchtung) unter /sys/class/input/ Dort existiert auch eine Datei Namens devices. Mittels

grep -A4 -B8 120013 /proc/bus/input/devices 

(120013 steht für die Eigenschaften einer Tastatur, genauer die möglichen Event-Typen SYN,KEY,MSC,LED und REP) findest du alle angeschlossenen Tastaturen. Dort stehen dann auch die korrekten sysfs-Pfade drin. Beispiel für einen X220:

I: Bus=0011 Vendor=0001 Product=0001 Version=ab54
N: Name="AT Translated Set 2 keyboard"
P: Phys=isa0060/serio0/input0
S: Sysfs=/devices/platform/i8042/serio0/input/input0
U: Uniq=
H: Handlers=sysrq kbd leds event0
B: PROP=0
B: EV=120013
B: KEY=402000000 3803078f800d001 feffffdfffefffff fffffffffffffffe
B: MSC=10
B: LED=7

Wenn du nun (mit angehängtem /sys) in diesen Pfad guckst, findest du eine Auflistung vieler Dateien, die alle irgendwas™ mit der Tastatur zu tun haben:

me@x220[~/Downloads]› ll /sys//devices/platform/i8042/serio0/input/input0
total 0
drwxr-xr-x 9 root root    0 Dec 25 16:49 .
drwxr-xr-x 3 root root    0 Dec 25 16:49 ..
drwxr-xr-x 2 root root    0 Jan  2 13:54 capabilities
lrwxrwxrwx 1 root root    0 Jan  2 13:54 device -> ../../../serio0
drwxr-xr-x 3 root root    0 Dec 25 16:49 event0
drwxr-xr-x 2 root root    0 Jan  2 13:54 id
drwxr-xr-x 3 root root    0 Dec 25 16:49 input0::capslock
drwxr-xr-x 3 root root    0 Dec 25 16:49 input0::numlock
drwxr-xr-x 3 root root    0 Dec 25 16:49 input0::scrolllock
drwxr-xr-x 2 root root    0 Jan  2 13:54 power
lrwxrwxrwx 1 root root    0 Dec 25 16:49 subsystem -> ../../../../../../class/input
-rw-r--r-- 1 root root 4.0K Jan  2 13:54 inhibited
-r--r--r-- 1 root root 4.0K Dec 25 17:31 modalias
-r--r--r-- 1 root root 4.0K Dec 25 16:49 name
-r--r--r-- 1 root root 4.0K Jan  2 13:54 phys
-r--r--r-- 1 root root 4.0K Jan  2 13:54 properties
-rw-r--r-- 1 root root 4.0K Dec 25 16:49 uevent
-r--r--r-- 1 root root 4.0K Jan  2 13:54 uniq
me@x220[~/Downloads]›

Dieser hat allerdings kein Backlight, weswegen mein Beispiel an der Stelle endet 😉 Aber in dieser Ordnerstruktur findest du Numlock, etc. die auch eine LED zum Ein-/Ausschalten haben.

In den meisten Fällen existieren Symlinks nach /sys/class/leds und/oder /sys/class/backlight, die entsprechend ein kbd_backlight anbieten. Reingucken, ist nicht einheitlich wo sich das befindet. /sys ist extrem miteinander verlinkt, du kommst also über jeden Ansatz irgendwann dahin. Bei Helligkeiten/LEDs gibt es meist mehrere zuständige Dateien. min_brightness, max_brightness, brightness, current_brightness,… Namen sind nicht immer gleich. Du kannst dir also mit min (meist 0) und max angucken welche Möglichkeiten zur Einstellung es gibt. Bei Tastaturbeleuchtungen ist max oftmals 2, beim Bildschirm meist eine 2er-Potenz (512, 4096 oder sowas). Das ist der Rahmen, in dem du dich bewegen kannst. Da kannst du dann mittels echo 2 > DATEI bspw. die Tastaturbeleuchtung auf maximale Helligkeit setzen.

Du musst also für deine Tastatur den entsprechenden syspath ermitteln und die zuständigen Dateien lokalisieren. Dann kannst du mit tee den Inhalt ändern. Einfach blind Pfade irgendwo kopieren kann auch schiefgehen… im Idealfall passiert einfach nichts. Kann aber auch dazu benutzt werden, um CPUs kaputtzuwirtschaften. Ein gewisses Mitdenken und Vorsicht ist also anzuraten.

Als Helferlein gibt es einige Tools, ich empfehle immer o.g. brightnessctl, da es simpel und selbsterklärend ist.

DocHifi

(Themenstarter)
Avatar von DocHifi

Anmeldungsdatum:
21. Oktober 2008

Beiträge: 692

Was passiert, wenn du es entlädst und wieder lädst?

Nochmal getestet, nach dem entladen bleibt sie an, nach dem laden geht sie aus.

DocHifi

(Themenstarter)
Avatar von DocHifi

Anmeldungsdatum:
21. Oktober 2008

Beiträge: 692

grep -A4 -B8 120013 /proc/bus/input/devices 

Ergibt:

I: Bus=0011 Vendor=0001 Product=0001 Version=ab41
N: Name="AT Translated Set 2 keyboard"
P: Phys=isa0060/serio0/input0
S: Sysfs=/devices/platform/i8042/serio0/input/input2
U: Uniq=
H: Handlers=sysrq kbd event2 leds 
B: PROP=0
B: EV=120013
B: KEY=402000000 3803078f800d001 feffffdfffefffff fffffffffffffffe
B: MSC=10
B: LED=7

DocHifi

(Themenstarter)
Avatar von DocHifi

Anmeldungsdatum:
21. Oktober 2008

Beiträge: 692

Da das laden des Moduls die Beleuchtung ausschaltet, hab ich jetzt mal das Modul gesperrt.

Und siehe da, nach einem Neustart ist die Beleuchtung an.

Also macht das Modul genau das Gegenteil, was es laut Parameter machen soll.

Scheint also so, als ob das Modul hier auf diesem Gerät nicht richtig funktioniert.

ChickenLipsRfun2eat Team-Icon

Supporter
Avatar von ChickenLipsRfun2eat

Anmeldungsdatum:
6. Dezember 2009

Beiträge: 12070

DocHifi schrieb:

Also macht das Modul genau das Gegenteil, was es laut Parameter machen soll.

Gibt es denn bei geladenem Modul Fehlermeldungen? (journalctl). Falls das reproduzierbar ist, wäre da ggf. ein Bugreport sinnvoll, falls Sony sich für sowas interessiert.

Antworten |