Perché il controllo della luminosità del mio Thinkpad salta i passaggi?


15

Il problema: ci sono 16 livelli di luminosità sul mio laptop, ma premendo i tasti di scelta rapida Fn+Home, si Fn+Endregola la luminosità di 3 passaggi alla volta (ad esempio da 0 a 3 o da 15 a 12).

Trovo importante notare che nella schermata di accesso i tasti di scelta rapida funzionano correttamente . Ma dopo il login appare quel comportamento strano.

Inoltre, se mi concentro su un menu (ad esempio, fai clic sul menu File in Firefox), i tasti di scelta rapida funzionano bene .

xdotool key XF86MonBrightnessDownfunziona bene, regolando la luminosità di 1 passo (controllato con cat /sys/devices/pci0000:00/0000:00:02.0/backlight/acpi_video0/brightness).

Ho anche installato indicator-brightness- mostra 16 leves (0-15).

Ho provato ad ambientarmi acpi_backlight=vendorin grub (ispirato a questo argomento: http://ubuntuforums.org/showthread.php?t=1909184 con un problema simile). Ha funzionato in quel tasto di scelta rapida ha funzionato bene. Ma sono sorti problemi con la notifica OSD, xdotool e l'indicatore di luminosità. Quindi penso che non sia una soluzione giusta.

Sembra che dopo il login qualcosa interferisca nello schema di elaborazione dei tasti di scelta rapida. Qualche idea?

Modifica (informazioni aggiuntive)

  • Ho osservato che i tasti di scelta rapida funzionano a livello hardware: posso regolare la luminosità immediatamente dopo aver acceso il mio laptop (ad es. Sullo schermo del BIOS).

  • Dopo i $ killall gnome-settings-daemontasti di scelta rapida, regolare la luminosità di un passo, ma non vengono visualizzate notifiche. A breve gnome-settings-daemonsi riprende, e ritorna triple emissione passo.

  • acpi_listen fornisce il seguente output (entrambi i tasti in sequenza):

    $ acpi_listen
    ibm/hotkey HKEY 00000080 00001010
    video LCD0 00000086 00000000
    ibm/hotkey HKEY 00000080 00001011
    video LCD0 00000087 00000000
    

    A questo punto ho pensato che (1) i tasti di scelta rapida funzionano a livello hardware; (2) ibm/hotkeysi occupa dei tasti di scelta rapida; (3) si videoprende cura anche di te. Pertanto, viene visualizzato il problema del passaggio triplo.

    Ho provato a inserire nella lista nera dei video (mi aspettavo che questo avrebbe comportato un doppio passo), ma non è cambiato nulla.

Come soluzione alternativa, ho creato i miei tasti di scelta rapida in Gestione impostazioni CompizConfig, come descritto qui , ma con --clearmodifiersargomento:

xdotool key --clearmodifiers XF86MonBrightnessUp
xdotool key --clearmodifiers XF86MonBrightnessDown

Quindi ora posso usare i tasti di scelta rapida iniziali o quelli nuovi per regolazioni più precise.

Domande aperte

Si è già discusso del caso con un doppio passaggio: Lenovo ThinkPads, i tasti funzione di luminosità eseguono due passaggi anziché uno, in cerca di soluzioni alternative :

l'hardware lo fa e poi invia anche un segnale che dice che il pulsante è stato premuto. Forse potresti disinserire la scorciatoia in Sistema -> Preferenze -> Scorciatoie da tastiera per questa azione?

Ma sono ansioso di sapere,

  1. Perché riscontro un problema in tre passaggi?
  2. Come posso annullare l'elaborazione di questi tasti di scelta rapida?

Le sarei molto grato se qualcuno lo spiegasse.

Risposte:


14

Da dove vengono i 3 passaggi per 1 pressione dei tasti?

Ottieni tre passaggi di luminosità per un tasto premuto perché:

  1. Il driver ACPI / video standard regola il passaggio 1
  2. Il thinkpad_acpidriver dice al BIOS di regolare il passaggio 2 ma inoltra comunque l'evento di pressione dei tasti
  3. Il daemon di potenza GNOME intercetta questo tasto e dice ad ACPI di regolare ancora una volta il passaggio 3

1. Disabilitare il driver video di regolare la luminosità da solo

Questo elimina uno dei tre passaggi (passaggio 1) sopra.

  • Apri il terminale
  • genere sudo sh -c 'echo -n 0 > /sys/module/video/parameters/brightness_switch_enabled'
  • Prova, ora dovresti avere il controllo della luminosità in due passaggi
  • Per disabilitarlo automaticamente all'avvio, apri il /etc/rc.localtuo editor preferito e prima dell'ultima riga ( exit 0), aggiungi:

    echo -n 0> / sys / module / video / parametri / luminosità_interruttore_abilitato

2. Ricompilare il thinkpad_acpimodulo per risolvere il problema della doppia pressione

  • Dobbiamo fermata thinkpad_acpidalla regolazione della luminosità tramite BIOS e farlo solo in avanti la pressione del tasto di GNOME, in modo che GNOME rende l'unica fase di regolazione
  • Questo è un bug noto che è stato corretto nel kernel 3.4+
  • Per risolverlo con Ubuntu 12.04 / Precise, dovremo correggere la sua versione thinkpad_acpie ricompilarla:

    1. Installa le intestazioni del kernel: sudo apt-get install linux-headers-$(uname -r)
    2. Installa strumenti di compilazione sudo apt-get install build-essential
    3. Crea una directory temporanea e modificala:
      mkdir ~ / tpacpi-bright && cd ~ / tpacpi-bright
    4. Scarica e patch il file sorgente thinkpad_acpi.cdal repository git Ubuntu Kernel:

      wget -O- "http: //kernel.ubuntu.com/git? p = ubuntu / ubuntu-precise.git; \
      a = blob_plain; f = drivers / platform / x86 / thinkpad_acpi.c; hb = TESTA "\
      | sed -e 's / tp_features.bright_acpimode && acpi_video / acpi_video / g' \
      > thinkpad_acpi.c
    5. Nella stessa cartella in cui thinkpad_acpi.cè stato scaricato, sarà necessario un "Makefile". Puoi scaricarlo direttamente da questo Pastebin , usando:

      wget -OMakefile http://pastebin.com/raw.php?i=ybpnxeUT

    O incolla il seguente in un file chiamato Makefile,:

    obj-m + = thinkpad_acpi.o
    tutti: make -C / lib / modules / $ (shell uname -r) / build M = $ (PWD) moduli
    pulito: make -C / lib / modules / $ (shell uname -r) / build M = $ (PWD) pulito
    1. Ora digita makeper creare il modulo; vedrai un thinkpad_acpi.kofile nella cartella al termine.
  • Testare il modulo con patch dopo averlo caricato con:

    sudo rmmod thinkpad_acpi && sudo lsmod thinkpad_acpi.ko
  • Se la luminosità è ora fissa e ti dà il pieno controllo, sostituisci il modulo stock con il modulo patchato:

    TPDIR = / lib / modules / $ (uname -r) / kernel / drivers / platform / x86
    sudo mv $ TPDIR / thinkpad_acpi.ko $ TPDIR / thinkpad_acpi.ko.stock
    sudo mv ~ / tpacpi-bright / thinkpad_acpi.ko $ TPDIR / thinkpad_acpi.ko
    
  • Puoi ripulire la cartella di build con make clean; tenerlo in giro per futuri aggiornamenti del kernel!


grazie per la tua risposta! La tua soluzione ha funzionato completamente per me. L'unico problema - il controllo della luminosità non funziona ora nella schermata di accesso (mi sembra di capire perché - perché ne thinkpad_acpiviene utilizzato uno nuovo , ma il demone di potenza di GNOME è ancora fuori servizio).
Andrey,

Per motivi di apprendimento, potresti dirmi, c'è un modo per dire al demone di potenza di GNOME di non elaborare i tasti di scelta rapida della luminosità, come abbiamo fatto con il videodriver? Ubuntu fornisce la GUI ( All Settings -> Keyboard -> Shortcuts) per personalizzare i tasti di scelta rapida audio (Volume su / giù, Muto), ma non ho trovato dove posso cambiare o disabilitare i tasti di luminosità.
Andrey,

@Andrey: prego! Ho un Thinkpad T520 quindi questa è stata una buona opportunità per risolvere il problema. Per quanto riguarda la schermata di accesso, penso che il modo per risolverlo sia mettere la disabilitazione non in rc.localma in ~/.profile, in modo che si attivi solo dopo il login. Se esiste un modo semplice per disabilitare il demone dell'alimentazione GNOME dall'elaborazione dei tasti di scelta rapida della luminosità, disabiliterà anche l'OSD (come backlight=vendor); farlo correttamente potrebbe richiedere la modifica del codice sorgente ... Proverò a dargli un'occhiata. Ad ogni modo, una volta uscito il 12.10, rilasceranno il kernel backport fisso per 12.04, quindi funzionerà.
ish

2

Avevo lo stesso identico problema che hai riscontrato e che il mio sistema ha sempre iniziato con lo schermo spento.

Vorrei ringraziarti per avermi indicato nella giusta direzione, ha acpi_backlight=vendorfatto il trucco per me senza nessuno dei problemi che hai riscontrato. Sto usando un HP G7 1116sg con grafica ibrida (Intel HD3000 (attualmente utilizzo solo Intel a causa di problemi ibridi in Ubuntu. Lo dico solo perché l'X220 è elencato come avente lo stesso adattatore grafico) / Radeon HD6870) e Ubuntu 12.04.

Volevo solo dire che i cambiamenti di grub hanno funzionato per me senza problemi apparenti.

Buona fortuna a trovare una soluzione.


Sono contento che abbia funzionato per te!
Andrey,

0

L'impostazione di /sys/module/video/parameters/brightness_switch_enableda 0non mi consente di controllare affatto la luminosità sul mio Thinkpad X230 tramite i tasti di scelta rapida, sia in tty che in xfce 4.10. Ho dovuto dire a xfce4-power-manager di non modificare la luminosità degli eventi chiave. Puoi farlo impostando una delle due chiavi di configurazione nascoste. Il primo è:

xfconf-query -c xfce4-power-manager -n -t bool -p /xfce4-power-manager/change-brightness-on-key-events -s false

E il secondo:

xfconf-query -c xfce4-power-manager -n -t bool -p /xfce4-power-manager/show-brightness-popup -s false

Nota: entrambe queste impostazioni disabilitano la schermata popup di luminosità sul mio sistema, ma almeno riesco a ripristinare tutti i 16 livelli di luminosità!

Puoi leggere ulteriori informazioni su questo problema in questa pagina e nella parte inferiore di questa pagina .


0

Nel mio laptop Lenovo S205 ho avuto questo problema in cui sia il driver video che lo gnomo hanno regolato la luminosità.

Ma la mia esperienza nella disabilitazione della brightness_switch_enabledproprietà è che gnome è lento e sembra audace quando aggiorno la retroilluminazione --- per esempio se lascio i tasti premuti per un paio di secondi e poi lascio andare, gnome impiega ancora 5-10 secondi per elaborare gli eventi.

Quindi preferisco invece lasciare che il driver video esegua le regolazioni e impedisca a gnome di eseguirle.

sudo chmod -x /usr/lib/gnome-settings-daemon/gsd-backlight-helper

Disabilitare il ha gsd-backlight-helperfatto il trucco per me. Ho eseguito la scansione dei siti Internet e non sembra esserci un'opzione visibile all'utente per fare lo stesso.

Ho perso l'OSD della luminosità, ma ora i cambiamenti di luminosità vengono elaborati all'istante e, come bonus, ho ancora il controllo della luminosità sul tty.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.