На Linux-боксе вы можете видеть и влиять на состояние и яркость различных светодиодов через подкаталоги /sys/class/leds .
В моей системе:
> ls -l /sys/class/leds/
lrwxrwxrwx 1 root root 0 Jul 12 19:36 ath5k-phy0::rx -> ../../devices/pci0000:00/0000:00:14.0/0000:07:00.0/leds/ath5k-phy0::rx/
lrwxrwxrwx 1 root root 0 Jul 12 19:36 ath5k-phy0::tx -> ../../devices/pci0000:00/0000:00:14.0/0000:07:00.0/leds/ath5k-phy0::tx/
Давайте посмотрим в подкаталог ath5k-phy0::rx:
> ls -l
drwxr-xr-x 2 root root 0 Jul 12 21:26 power/
-rw-r--r-- 1 root root 4,096 Jul 12 21:26 brightness
lrwxrwxrwx 1 root root 0 Jul 12 21:26 device -> ../../../0000:07:00.0/
-r--r--r-- 1 root root 4,096 Jul 12 21:26 max_brightness
lrwxrwxrwx 1 root root 0 Jul 12 19:36 subsystem -> ../../../../../../class/leds/
-rw-r--r-- 1 root root 4,096 Jul 12 21:26 trigger
-rw-r--r-- 1 root root 4,096 Jul 12 19:36 uevent
Если вы изучите содержимое показанных файлов, это станет интересным.
посмотрите на триггер, вы можете увидеть, какие «встроенные» триггеры доступны, и какой из них используется в данный момент:
> cat trigger
none ADP1-online BAT0-charging-or-full BAT0-charging BAT0-full BAT0-charging-blink-full-solid rfkill0 rfkill1 [phy0rx] phy0tx phy0assoc phy0radio rfkill2
Найдите запись в квадратных скобках (справа), это показывает, что этот светодиод в данный момент контролируется состоянием беспроводного приемника. Он светится оранжевым (в этой системе), когда получает пакет.
Вы можете отобразить имя этого файла триггера, чтобы изменить то, что его контролирует. Хотите показать, когда батарея заряжается или полностью заряжена?
(as root!)
> echo BAT0-charging-or-full > trigger
Если для контроллера установлено значение none, ВЫ можете выводить значения в файл яркости для управления включением / выключением светодиода.
Всегда хорошо обращаться к документации ядра для получения дополнительной информации. GIYF
Я играл с этим в прошлом, но ничего особо недавнего. Доступные светодиоды зависят исключительно от вашего оборудования и драйверов / модулей ядра. YMMV.