| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107 |
- ==================
- Leds BlinkM driver
- ==================
- The leds-blinkm driver supports the devices of the BlinkM family.
- They are RGB-LED modules driven by a (AT)tiny microcontroller and
- communicate through I2C. The default address of these modules is
- 0x09 but this can be changed through a command. By this you could
- daisy-chain up to 127 BlinkMs on an I2C bus.
- The device accepts RGB and HSB color values through separate commands.
- Also you can store blinking sequences as "scripts" in
- the controller and run them. Also fading is an option.
- The interface this driver provides is 3-fold:
- a) LED multicolor class interface for use with triggers
- #######################################################
- The registration follows the scheme::
- blinkm-<i2c-bus-nr>-<i2c-device-nr>:rgb:indicator
- $ ls -h /sys/class/leds/blinkm-1-9:rgb:indicator
- brightness device max_brightness multi_index multi_intensity power subsystem trigger uevent
- Hue is controlled by the multi_intensity file and lightness is controlled by
- the brightness file.
- The order in which to write the intensity values can be found in multi_index.
- Exactly three values between 0 and 255 must be written to multi_intensity to
- change the color::
- $ echo 255 100 50 > multi_intensity
- The overall lightness be changed by writing a value between 0 and 255 to the
- brightness file.
- b) LED class interface for use with triggers
- ############################################
- The registration follows the scheme::
- blinkm-<i2c-bus-nr>-<i2c-device-nr>-<color>
- $ ls -h /sys/class/leds/blinkm-6-*
- /sys/class/leds/blinkm-6-9-blue:
- brightness device max_brightness power subsystem trigger uevent
- /sys/class/leds/blinkm-6-9-green:
- brightness device max_brightness power subsystem trigger uevent
- /sys/class/leds/blinkm-6-9-red:
- brightness device max_brightness power subsystem trigger uevent
- (same is /sys/bus/i2c/devices/6-0009/leds)
- We can control the colors separated into red, green and blue and
- assign triggers on each color.
- E.g.::
- $ cat blinkm-6-9-blue/brightness
- 05
- $ echo 200 > blinkm-6-9-blue/brightness
- $
- $ modprobe ledtrig-heartbeat
- $ echo heartbeat > blinkm-6-9-green/trigger
- $
- b) Sysfs group to control rgb, fade, hsb, scripts ...
- #####################################################
- This extended interface is available as folder blinkm
- in the sysfs folder of the I2C device.
- E.g. below /sys/bus/i2c/devices/6-0009/blinkm
- $ ls -h /sys/bus/i2c/devices/6-0009/blinkm/
- blue green red test
- Currently supported is just setting red, green, blue
- and a test sequence.
- E.g.::
- $ cat *
- 00
- 00
- 00
- #Write into test to start test sequence!#
- $ echo 1 > test
- $
- $ echo 255 > red
- $
- as of 07/2024
- dl9pf <at> gmx <dot> de
- jstrauss <at> mailbox <dot> org
|