The solution here was tested on:

  • Asus K401U
  • Linux Mint 18 Mate
  • Nvidia GeForce 940MX

First, do some troubleshooting. Check if your Fn keys are responding. In Asus, the Fn keys for brightness control are Fn+F5 and Fn+F6. Use the acpi_listen command and then press the Fn+F5 or Fn+F6 keys.

$ acpi_listen 
video/brightnessdown BRTDN 00000087 00000000 K
 PNP0C14:01 000000ff 00000000
video/brightnessup BRTUP 00000086 00000000 K
 PNP0C14:01 000000ff 00000000

Normally, the keys are responding and the events are mapped correctly. It is the video device that is not getting triggered to adjust the brightness. That is why even if you installed xbacklight or do it via desktop ui settings, it won’t adjust the brightness.

Optional:
This is just for testing but it’s interesting to try it out. You can adjust directly in /sys/class/backlight. This will contain the different devices that you have e.g. intel_backlight or acpi_video. Inside each folder, you will find the brightness and max_brightness files. Take note of their values and update the brightness file to increase or decrease the brightness without exceeding the max_brightness value.

$ cat max_brightness
937
$ cat brightness
500
$ sudo echo 200 | sudo tee brightness
200

Did the screen brightness change?

Now for the permanent fix.

Update grub and add acpi_osi= and acpi_backlight=native

$ sudo vi /etc/default/grub

e.g.

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash acpi_osi= acpi_backlight=native"
$ sudo update-grub

Restart.

$ sudo reboot

This worked for me even with bumblebee installed.