USE OF Fn+KEY TO CONTROL DISPLAY AND BACKLIT KEYBOARD ON DELL Latitude E6410
(This is a supplement to: my Linux laptop web page.)

UPDATES 31 Dec 2014:
Now running Fedora 20
3.17.6-200.fc20.x86_64 #1 SMP Mon Dec 8 15:21:05 UTC 2014


__________________________________________________________________________________________

I am grateful to Matthew Saltzman for sending me information about the effect of
function keys on back-lighting of the keyboard, the brightness of the screen and
whether the ambient light sensor is on or not.

The information below is based partly on the information he sent me and my own
experimentation on linux and windows.
(Any errors here are my fault. I welcome corrections.)

In what follows 'Fn' refers to the function key next to Ctrl on the left.
'Fn-Left' refers to the action of:
   holding down the Fn key, then pressing the Left Arrow key
   (on right of keyboard.)

REVISED INFORMATION (13 Jul 2010):

    Fn-Left: toggle ambient light sensor On-Off

        INTENDED behaviour (as found in windows 7)

            When On it controls screen brightness

            When Off it lets user determine screen brightness as below.

        ACTUAL behaviour (at least on my machine with Fedora 13 up to Fedora 18):

            When ON the ambient light sensor controls display brightness,
            and the user can also control brightness, but sometimes the
            user's setting is overridden by changes in sensed ambient light.
            This can be very annoying.

        BUG:
            When OFF the brightness is set at a fixed value.
            possibly a setting I selected for the bios), and in that state
            neither the light sensor nor the Up/Down key actions  cause
            screen brightness to change.
            THIS IS A SERIOUS BUG (Seems to have been fixed, some time before F18)

    Fn-Down: dim the screen

        Works only when ambient light sensor is ON ? state (toggled by Fn-Left)
        (See bug above)

    Fn-Up: brighten the screen

        Works only when ambient light sensor is in the On state (toggled by Fn-Left)
        (See bug above)

    Fn-Right: toggle keyboard backlight setting

        This switches between three states:

        1. Backlighting off (whatever the ambient light level)

        2. Backlighting controlled by ambient light level and whether typing is in progress.

           Backlighting comes on when typing starts, if the ambient light level is low.
            Backlight goes off after no typing for some interval.

        3. Backlighting stays on (whatever the ambient light level)

        (In Windows 7 it is also possible to set the brightness level for the
        backlighting. I have not found a way to do this on linux, apart from
        using the bios.)

OTHER BUTTONS (Mostly Windows only, but see linux below)

    Fn-8: cycle through display devices

        As far as I know this does not work on linux.

        On Linux:
        Try using the lxrandr tool for much more precise control, including selecting
        resolution of laptop and external display. (For me it usually works perfectly.)

    Fn-7: launch DCP
            Dell Control Point (Windows only)
            May not be installed: included in one of the Dell CDs.
            If present this is also in the TaskBar tray.
            Useful for setting brightness levels, keyboard backlighting, and
            ambient light sensor behaviour (among other things).
            The Dell manual for users of the 'Dell Control Point' package is here (PDF).

    Fn-F3: display battery state

            Works on windows only

    LINUX
        Older Linux only
            For older versions of linux (e.g. before Fedora 18)

            Do
                cat /proc/acpi/battery/BATT0/state

                or try the gnome power controls.

            Unchanging information about the battery:
                cat /proc/acpi/battery/BATT0/info

                In GNOME, this pops up a status window?

        
        Update: 27 Sep 2013
        Newer Linux (e.g. Fedora 18 with kernel 3.10.12 64 bit)

            The command
                cat /sys/class/power_supply/BAT0/uevent

            now prints out information in this form:

            With AC adapter plugged in:

                POWER_SUPPLY_NAME=BAT0
                POWER_SUPPLY_STATUS=Full
                POWER_SUPPLY_PRESENT=1
                POWER_SUPPLY_TECHNOLOGY=Li-ion
                POWER_SUPPLY_CYCLE_COUNT=0
                POWER_SUPPLY_VOLTAGE_MIN_DESIGN=11250000
                POWER_SUPPLY_VOLTAGE_NOW=12689000
                POWER_SUPPLY_CURRENT_NOW=1000
                POWER_SUPPLY_CHARGE_FULL_DESIGN=8400000
                POWER_SUPPLY_CHARGE_FULL=7586000
                POWER_SUPPLY_CHARGE_NOW=8400000
                POWER_SUPPLY_CAPACITY=110
                POWER_SUPPLY_MODEL_NAME=DELL C207204
                POWER_SUPPLY_MANUFACTURER=Samsung SDI
                POWER_SUPPLY_SERIAL_NUMBER=xxxxxx

            With AC adapter out, and discharging:
                POWER_SUPPLY_NAME=BAT0
                POWER_SUPPLY_STATUS=Discharging
                POWER_SUPPLY_PRESENT=1
                POWER_SUPPLY_TECHNOLOGY=Li-ion
                POWER_SUPPLY_CYCLE_COUNT=0
                POWER_SUPPLY_VOLTAGE_MIN_DESIGN=11250000
                POWER_SUPPLY_VOLTAGE_NOW=12584000
                POWER_SUPPLY_CURRENT_NOW=656000
                POWER_SUPPLY_CHARGE_FULL_DESIGN=8400000
                POWER_SUPPLY_CHARGE_FULL=7586000
                POWER_SUPPLY_CHARGE_NOW=7426000
                POWER_SUPPLY_CAPACITY=97
                POWER_SUPPLY_MODEL_NAME=DELL C207204
                POWER_SUPPLY_MANUFACTURER=Samsung SDI
                POWER_SUPPLY_SERIAL_NUMBER=xxxxxx

  (That information can be read into a program and displayed in some other
   way as I do in the Ved editor)
     Fri Sep 27 20:46:01 BST 2013
     STATE: Discharging  Voltage: 12.54  Current: 678.0 POWER_SUPPLY_CAPACITY=97
     Manufacturer: Samsung SDI
     [voltage_now 12.54 charge_now 7.38 charge_full_design 8.4]
     % Power left: 87.89
     @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@87.89%--------
     TOTAL 5.71 hours, 7.38 mWh left
     NOW :-  Fri Sep 27 20:46:01 BST 2013


    Fn-F2: toggle battery charging control

        Works on windows only (but can be set in BIOS):

        There are two states that can be controlled in the bios settings. This may
        give access to those states while windows is running:

            When charging toggle 'Express charge' On or Off

            When AC power is connected, toggle battery charging On or Off

    Fn-F1: Sleep
        Does not work for me on linux, unless programmed separately, e.g.
        via window manager settings. (Works in Gnome.)

        Update 27 Sep 2013:
        works for me on Fedora 18 with kernel: 3.10.12-100.fc18.x86_64
        Also F20

If you have more detailed information or corrections, please let me know, if possible
with links to sources of information. Thanks A.Sloman [AT] cs.bham.ac.uk

OLD ITEMS

UPDATES 27 Sep 2013:
I am now using Fedora 18, with kernel 3.10.12-100.fc18.x86_64

I've had a message from "maxigas" ( http://research.metatron.sh/ ) saying

    "...just read your page at http://www.cs.bham.ac.uk/~axs/laptop/dell-e6410-fn-keys.html
    i just got an e6400 xfr, installed debian, and i have similar behaviour, except one:
    the fn+f1 key works as expected, e.g. puts computer to sleep."
As a result I tried fn+f1 with F18 on my e6410 and it also suspends
(as in pm-suspend, not pm-hibernate).
Moreover, shutting the lid also invokes suspend, which can be a nuisance.
I expect there's a way to turn that off, possibly in Bios. I'll investigate.
Also, the information about /proc/acpi/battery below is now out of date.
In newer kernels a different structure is used. See battery update below.

NOTE ADDED 13 Jul 2010:

On Matthew's suggestion I checked out behaviour in Windows 7 and found that I had previously misdescribed the situation.

I now think there is a bug in the linux software handling the fn+key combinations on E6410 (and perhaps other machines).


Maintained by Aaron Sloman A.Sloman@cs.bham.ac.uk
This web site was first created in July 2010
Last updated:13 Jul 2010; 27 Sep 2013