File Index
Files and directories
Sign in
FILE

leds-blinkm.rst

File preview with syntax highlighting.

linux-6.19.14/Documentation/leds/leds-blinkm.rst RESTRUCTUREDTEXT
  1==================
  2Leds BlinkM driver
  3==================
  4
  5The leds-blinkm driver supports the devices of the BlinkM family.
  6
  7They are RGB-LED modules driven by a (AT)tiny microcontroller and
  8communicate through I2C. The default address of these modules is
  90x09 but this can be changed through a command. By this you could
 10daisy-chain up to 127 BlinkMs on an I2C bus.
 11
 12The device accepts RGB and HSB color values through separate commands.
 13Also you can store blinking sequences as "scripts" in
 14the controller and run them. Also fading is an option.
 15
 16The interface this driver provides is 3-fold:
 17
 18a) LED multicolor class interface for use with triggers
 19#######################################################
 20
 21The registration follows the scheme::
 22
 23  blinkm-<i2c-bus-nr>-<i2c-device-nr>:rgb:indicator
 24
 25  $ ls -h /sys/class/leds/blinkm-1-9:rgb:indicator
 26  brightness  device  max_brightness  multi_index  multi_intensity  power  subsystem  trigger  uevent
 27
 28Hue is controlled by the multi_intensity file and lightness is controlled by
 29the brightness file.
 30
 31The order in which to write the intensity values can be found in multi_index.
 32Exactly three values between 0 and 255 must be written to multi_intensity to
 33change the color::
 34
 35  $ echo 255 100 50 > multi_intensity
 36
 37The overall lightness be changed by writing a value between 0 and 255 to the
 38brightness file.
 39
 40b) LED class interface for use with triggers
 41############################################
 42
 43The registration follows the scheme::
 44
 45  blinkm-<i2c-bus-nr>-<i2c-device-nr>-<color>
 46
 47  $ ls -h /sys/class/leds/blinkm-6-*
 48  /sys/class/leds/blinkm-6-9-blue:
 49  brightness  device  max_brightness  power  subsystem  trigger  uevent
 50
 51  /sys/class/leds/blinkm-6-9-green:
 52  brightness  device  max_brightness  power  subsystem  trigger  uevent
 53
 54  /sys/class/leds/blinkm-6-9-red:
 55  brightness  device  max_brightness  power  subsystem  trigger  uevent
 56
 57(same is /sys/bus/i2c/devices/6-0009/leds)
 58
 59We can control the colors separated into red, green and blue and
 60assign triggers on each color.
 61
 62E.g.::
 63
 64  $ cat blinkm-6-9-blue/brightness
 65  05
 66
 67  $ echo 200 > blinkm-6-9-blue/brightness
 68  $
 69
 70  $ modprobe ledtrig-heartbeat
 71  $ echo heartbeat > blinkm-6-9-green/trigger
 72  $
 73
 74
 75b) Sysfs group to control rgb, fade, hsb, scripts ...
 76#####################################################
 77
 78This extended interface is available as folder blinkm
 79in the sysfs folder of the I2C device.
 80E.g. below /sys/bus/i2c/devices/6-0009/blinkm
 81
 82  $ ls -h /sys/bus/i2c/devices/6-0009/blinkm/
 83  blue  green  red  test
 84
 85Currently supported is just setting red, green, blue
 86and a test sequence.
 87
 88E.g.::
 89
 90  $ cat *
 91  00
 92  00
 93  00
 94  #Write into test to start test sequence!#
 95
 96  $ echo 1 > test
 97  $
 98
 99  $ echo 255 > red
100  $
101
102
103
104as of 07/2024
105
106dl9pf <at> gmx <dot> de
107jstrauss <at> mailbox <dot> org
~/ Read-only file preview.