The Notebook Review forums were hosted by TechTarget, who shut down them down on January 31, 2022. This static read-only archive was pulled by NBR forum users between January 20 and January 31, 2022, in an effort to make sure that the valuable technical information that had been posted on the forums is preserved. For current discussions, many NBR forum users moved over to NotebookTalk.net after the shutdown.
Problems? See this thread at archive.org.

    [Tutorial] Lenovo Y500 Ubuntu/Linux Brightness Key Fix

    Discussion in 'Lenovo' started by djjonastybe, Apr 22, 2013.

  1. djjonastybe

    djjonastybe Notebook Consultant

    Reputations:
    13
    Messages:
    183
    Likes Received:
    11
    Trophy Points:
    31
    I do not own the nvidiabl module, I only made the script better so it is synchronized with the brightness applet of Unity, Gnome 3, KDE, ... The script on ubuntuforums was not synchronized and was not working properly together with the GUI. This tutorial below does. I really spent a lot of time searching how it could be made better, so here it is:

    In theory we do not need the nvidiabl module. When I find the workaround I can make some slight modifications to get rid of nvidiabl.

    My work is based upon this post

    1. Install latest nvidiabl debian package from https://github.com/guillaumezin/nvidiabl/downloads
    2. Now open the terminal and type
      Code:
      $ sudo gedit /etc/acpi/events/lenovo_backlight_up
      Enter
      Code:
      event=video LCD 00000086 00000000
      action=/etc/acpi/lenovo_backlight.sh
      And now save and close the file.

      Code:
      $ sudo gedit /etc/acpi/events/lenovo_backlight_down
      Enter
      Code:
      event=video LCD 00000087 00000000
      action=/etc/acpi/lenovo_backlight.sh
      And now save and close the file.

      Code:
      $ sudo gedit /etc/acpi/lenovo_backlight.sh
      Enter
      Code:
      #!/bin/bash
      test -f /sys/class/backlight/nvidia_backlight/brightness || exit 0
      NEW_VALUE=`cat /sys/class/backlight/acpi_video0/brightness`
      let BRIGHTNESS=$NEW_VALUE*8+7
      echo -n $BRIGHTNESS > /sys/class/backlight/nvidia_backlight/brightness
      And now save and close the file.
    3. Now let's set the necessary permissions for all the files we need to access
      Code:
      $ sudo chmod +x /etc/acpi/lenovo_backlight.sh
      sudo chown YOURUSERNAME /sys/class/backlight/nvidia_backlight/brightness
    4. Now let's load nvidiabl at boot time, in terminal type:
      Code:
      sudo gedit /etc/modules
      add to the bottom:
      Code:
      nvidiabl
      close and save.
    5. reboot

    This is the best method, Now the brightness is synchronized with the brightness slider applet.

    Here is the tutorial on my personal website https://sites.google.com/site/jonashendrickxcommunity/lenovo-y500/linux/fixing-the-brightness-keys

    Don't forget to buy me a beer if you like it ;)
    donation link
     
  2. RoundSparrow

    RoundSparrow Notebook Enthusiast

    Reputations:
    0
    Messages:
    22
    Likes Received:
    0
    Trophy Points:
    5
    I have the very new 750M GPU on my Y500. I'm not SLI, just single at this point.

    This doesn't seem to work for me. I'm running the now-released Ubuntu 13.04 x64.

    I'm using nouveau driver for now. All the Nvidia drivers for Linux don't seem to work yet for the Y500 and 13.04's Unity desktops (the login screen comes up fine, but the menus and icons won't work on Desktop if you try the Nvidia drivers).
     
  3. Githlar

    Githlar Newbie

    Reputations:
    0
    Messages:
    4
    Likes Received:
    0
    Trophy Points:
    5
    That's sad to hear as I have recently ordered the Y500 with GT 750M. It'll get here.... someday. Anyway, on a side note I hate that Lenovo kept the same model number like for these two distinctly different models. They couldn't have called it a Y501? Most of the Q/A that I see for "Y500" are for the GT 650M with or without SLI.

    Anyway, unfortunately I don't have an answer for you at the moment, but I'll do a little research and try to get back to you. Hopefully I don't have to wait until June 3 (my birthday, coicidentally) to get the notebook I ordered on the 26th of April.
     
  4. Githlar

    Githlar Newbie

    Reputations:
    0
    Messages:
    4
    Likes Received:
    0
    Trophy Points:
    5
    The nvidiabl module does not have support for the GeForce GT 750M, however, it's fairly trivial to add the support into nvidiabl. Since the 750M is Kepler-based, we need to add the 750M as a kepler device in the code.

    • Download the source form the git repository: git clone git://github.com/guillaumezin/nvidiabl
    • cd nvidiabl
    • Edit the nvidiabl-laptops.h file and and add the following line:
      NVIDIABL_DECLARE_LAPTOP_MODEL("LENOVO", "20193", PCI_ANY_ID, NVIDIABL_SC_AUTO, NVIDIABL_AUTO, NVIDIABL_AUTO, 0x1FFFF),
      Note: This is my code for my 59371969. The "20193" section may be different for your particular model, it can be found by the command
      Code:
      cat /sys/class/dmi/id/product_name
    • In nvidiabl-gpu.h add the line:
      NVIDIABL_DECLARE_GPU_MODEL(0x0fe4, nv5x_driver_data),
    • Install via DKMS

    The other instructions on how to add the scrips and such still apply, but this is one more required step for 750M-based laptops.

    The is one annoying bug about this though, and the guys over at nvidiabl can't seen to figure out why this happens. If your backlight is set lower than max, as soon as you load an OpenGL layer (be it Flash in Firefox, a Wine game, whatever) the backlight will kick back up to max brightnes making you have to do the Fn+Down thing all over again. This also causes the Gnome backlight indicator to get out of sync too, but that's no big deal to me.
     
  5. Aftrumpet

    Aftrumpet Newbie

    Reputations:
    0
    Messages:
    9
    Likes Received:
    0
    Trophy Points:
    5
    Does this work even if proprietary drivers are not installed on my 750M Y500? I can't figure out how to install the drivers without booting to a black screen.
     
  6. Githlar

    Githlar Newbie

    Reputations:
    0
    Messages:
    4
    Likes Received:
    0
    Trophy Points:
    5
    Yes, it does work with the proprietary drivers. Noveau drivers won't work with the 750M because it is too new, though sometimes the LiveCD/USB was able to boot to a graphical GUI for me.
     
  7. sorrowstyr

    sorrowstyr Newbie

    Reputations:
    0
    Messages:
    1
    Likes Received:
    0
    Trophy Points:
    5

    I have a lenovo y510p, which has dual 750M in SLI. The product name is slightly different, its 20217.

    I recompiled the DKMS module from source like you, and updated the nvidiabl_laptop.h and nvidiabl_gpu.h files. The module builds and loads just fine. The acpi script seem to change the values for brightness, but unfortunately the laptop's brightness never changes regards whatever I echo into the brightness variable.

    Suggestions ?
    I cant seem to figure out how to make the nvidiabl to work.

    -Gary
     
  8. _harshpatil

    _harshpatil Newbie

    Reputations:
    0
    Messages:
    1
    Likes Received:
    0
    Trophy Points:
    5
    Why not simply use proprietary driver from NVIDIA itself for 750m. Works like charm, and the best part, no command required!