17

I would like turn on/turn off some of my leds running a command on linux.

I use Ubuntu 12.04 LTS.

I tried

xset led named "Scroll Lock"
xset led named "Num Lock"
xset led 2             (this is the number of Scroll Lock as `xset q` says)
xset led 1

but nothing works.

Tried

setleds +num
setleds +scroll

but I got a error message saying Error reading the current settings of flags. Maybe you're not on the console? (I was in a terminal).

So, how can I perform this?

Devid
  • 6,455
  • 13
  • 58
  • 75
GarouDan
  • 605

7 Answers7

9

xdotool key Num_Lock

Is the an answer (the easiest you're likely to find); inverting the state, it also provides a path to search (xinput and modifying a slave keyboard state) if you really just want to set an led status.

I too ran across my Num Lock keyboard LED and X11 state differing recently (happens with remote desktops, games, etc)

This reference explains what's going on, and almost has the complete solution (but it has a case-typo, you need Num_Lock not Num_lock).

http://blog.ssokolow.com/archives/2013/04/18/how-to-invert-your-x11-numlock-led/

6

To turn Scroll Lock led on run:

xset -led 2 led on

To turn it off run:

xset -led 2 led off
5

There is also solution without any extra software. Just use:

echo "1" > /sys/class/leds/input20::scrolllock/brightness
#Or
echo "1" > /sys/class/leds/input20::/brightness

as root.

ddd ddd111111
  • 51
  • 1
  • 2
1

As noted in this answer, if your screen is on TTY1, but you try to control the LEDs from somewhere else (such as an SSH session), you can use setleds in the following way:

setleds -L +num +caps +scroll < /dev/tty1
cdauth
  • 517
1

Press Ctrl+Alt+F1, login, and then try setleds.

VenkatH
  • 636
-1

Just use the command:

numlockx on 

or

numlockx off

to change the state.

slhck
  • 235,242
minux
  • 1
-1

Install xf86-input-keyboard if you don't have it.

Set kbd_mode -u

Make sure you don't have multiple instances of the KB (check what XINPUT: reports).

Overmind
  • 10,308