2015-12-15 22:05:10 +08:00
|
|
|
#
|
|
|
|
# For a description of the syntax of this configuration file,
|
|
|
|
# see the file kconfig-language.txt in the NuttX tools repository.
|
|
|
|
#
|
|
|
|
|
|
|
|
menu "LED Support"
|
|
|
|
|
2015-12-15 22:23:53 +08:00
|
|
|
config USERLED
|
|
|
|
bool "LED driver"
|
|
|
|
default n
|
|
|
|
---help---
|
|
|
|
Enable standard user LED upper half driver.
|
|
|
|
|
|
|
|
if USERLED
|
|
|
|
|
|
|
|
config USERLED_LOWER
|
|
|
|
bool "Generic Lower Half LED Driver"
|
|
|
|
default n
|
2020-06-06 18:22:49 +08:00
|
|
|
depends on ARCH_HAVE_LEDS
|
2015-12-15 22:23:53 +08:00
|
|
|
---help---
|
|
|
|
If the board supports the standard LED interfaces as
|
|
|
|
defined in include/nuttx/board.h header file, then this
|
|
|
|
standard LED lower half driver might be usable.
|
|
|
|
|
|
|
|
In order for this generic driver to be usable:
|
|
|
|
|
|
|
|
1. The board implementation must provide the LED
|
|
|
|
interfaces as defined in include/nuttx/board.h
|
|
|
|
|
|
|
|
If your board does not meet these requirements, then the
|
|
|
|
userled_lower.c file can still be copied to your your
|
|
|
|
board src/ directory and modified for your specific board
|
|
|
|
requirements.
|
|
|
|
|
2021-10-18 16:03:33 +08:00
|
|
|
config USERLED_LOWER_READSTATE
|
|
|
|
bool "LED Driver Read Actual Pin State"
|
|
|
|
default n
|
|
|
|
depends on USERLED_LOWER
|
|
|
|
---help---
|
|
|
|
Extends the standard LED interface as defined in the
|
|
|
|
include/nuttx/board.h header file with a function that
|
|
|
|
checks the actual state of the pin controlling the LED,
|
|
|
|
which can be used to find malfunctioning LEDs.
|
|
|
|
|
2023-06-26 23:00:09 +08:00
|
|
|
config USERLED_EFFECTS
|
|
|
|
bool "LED driver supports LED effects"
|
|
|
|
default n
|
|
|
|
---help---
|
|
|
|
Enable support for LED effects (PWM, blinking, breathing).
|
|
|
|
|
2015-12-15 22:23:53 +08:00
|
|
|
endif # USERLED
|
|
|
|
|
2017-09-19 06:48:55 +08:00
|
|
|
config LEDS_APA102
|
|
|
|
bool "APA102 LED Strip"
|
|
|
|
default n
|
|
|
|
select SPI
|
|
|
|
---help---
|
|
|
|
Enable support for the APA102 LED Strip driver.
|
|
|
|
|
2018-07-23 05:13:39 +08:00
|
|
|
config LEDS_MAX7219
|
|
|
|
bool "MAX7219 Numeric Display"
|
|
|
|
default n
|
|
|
|
select SPI
|
|
|
|
---help---
|
|
|
|
Enable support for the MAX7219 to control 7-segment displays.
|
|
|
|
|
2016-02-22 22:43:32 +08:00
|
|
|
config RGBLED
|
2019-10-06 11:39:12 +08:00
|
|
|
bool "RGB LED Driver Support"
|
|
|
|
default n
|
|
|
|
---help---
|
|
|
|
This selection enables building of the "upper-half" RGB LED driver.
|
|
|
|
See include/nuttx/rgbled.h for further PWM driver information.
|
2016-02-22 22:43:32 +08:00
|
|
|
|
2023-07-04 16:35:16 +08:00
|
|
|
config RGBLED_PWM_FREQ
|
|
|
|
int "PWM Frequency (Hz)"
|
|
|
|
depends on RGBLED
|
|
|
|
default 100
|
|
|
|
---help---
|
|
|
|
This controls the frequency of the PWM channel powering each led.
|
|
|
|
|
2017-07-27 21:43:59 +08:00
|
|
|
config RGBLED_INVERT
|
|
|
|
bool "Invert RGB LED Output"
|
|
|
|
depends on RGBLED
|
|
|
|
default n
|
|
|
|
---help---
|
|
|
|
If the board has a common anode RGB LED (a LOW output turns ON
|
|
|
|
each LED), this selection inverts the outputs so that the
|
|
|
|
colors are displayed correctly.
|
|
|
|
|
2017-07-28 20:54:38 +08:00
|
|
|
config RGBLED_LIGHTNESS_CORRECTION
|
|
|
|
bool "Apply Lightness Correction"
|
|
|
|
depends on RGBLED
|
|
|
|
default n
|
|
|
|
---help---
|
|
|
|
This selection enables an approximate CIE 1931 lightness
|
|
|
|
correction which helps the RGB LED visually fade and blend
|
|
|
|
in a more linear, smooth, and visually appealing fashion.
|
|
|
|
|
2022-12-22 00:13:48 +08:00
|
|
|
config LP503X
|
|
|
|
|
|
|
|
bool "LP503X I2C LED Driver"
|
|
|
|
default n
|
|
|
|
select I2C
|
|
|
|
---help---
|
|
|
|
Enable support for the TI LP503X LED driver which can be
|
|
|
|
utilized to drive up to 36 (12 RGB) LEDs.
|
|
|
|
|
|
|
|
if LP503X
|
|
|
|
|
|
|
|
config LP503X_LOG_MODE
|
|
|
|
bool "Enable logarithmic mode (y) or linear mode (n)"
|
|
|
|
default y
|
|
|
|
---help---
|
|
|
|
Determines whether brightness scale is logarithmic or linear
|
|
|
|
|
|
|
|
config LP503X_POWER_SAVE
|
|
|
|
bool "Enable power save mode"
|
|
|
|
default y
|
|
|
|
---help---
|
|
|
|
Enable/disable automatic power saving mode
|
|
|
|
|
|
|
|
config LP503X_DITHER_MODE
|
|
|
|
bool "Enable PWM dithering"
|
|
|
|
default y
|
|
|
|
---help---
|
|
|
|
Enable/disable PWM dithering mode
|
|
|
|
|
|
|
|
config LP503X_MAX_CURRENT
|
|
|
|
bool "Enable Max current option (25.5mA (n), or 35mA (y))"
|
|
|
|
default n
|
|
|
|
---help---
|
|
|
|
Sets maximum output current to 25.5mA (default) or 35mA
|
|
|
|
|
|
|
|
config LP503X_GLOBAL_SHUTDOWN
|
|
|
|
bool "Enable global LED shutdown"
|
|
|
|
default n
|
|
|
|
---help---
|
|
|
|
When enabled (y), all LEDs will be turned off/disabled until re-enabled
|
|
|
|
|
|
|
|
config DEBUG_LP503X
|
|
|
|
bool "Enable debug support for the LP503X"
|
|
|
|
default n
|
|
|
|
---help---
|
2023-02-26 02:14:11 +08:00
|
|
|
Enables debug support for the LP503X
|
2022-12-22 00:13:48 +08:00
|
|
|
|
|
|
|
endif # LP503X
|
|
|
|
|
2015-12-15 22:05:10 +08:00
|
|
|
config PCA9635PW
|
|
|
|
bool "PCA9635PW I2C LED Driver"
|
|
|
|
default n
|
|
|
|
select I2C
|
|
|
|
---help---
|
|
|
|
Enable support for the NXP PCA9635PW LED driver which can be
|
|
|
|
utilized to drive up to 16 LED's.
|
|
|
|
|
2016-06-15 06:09:30 +08:00
|
|
|
config NCP5623C
|
|
|
|
bool "NCP5623C I2C LED Driver"
|
|
|
|
default n
|
|
|
|
select I2C
|
|
|
|
---help---
|
|
|
|
Enable support for the onsemi NCP5623C LED driver which can be
|
|
|
|
utilized to drive up to 3 LED's.
|
|
|
|
|
2020-09-15 04:41:49 +08:00
|
|
|
config WS2812
|
|
|
|
bool "WS2812 LED Driver"
|
|
|
|
default n
|
|
|
|
select SPI
|
|
|
|
---help---
|
|
|
|
Enable support for the Worldsemi WS2812 LED driver which commonly
|
|
|
|
found in LED strips.
|
2022-08-15 03:04:18 +08:00
|
|
|
NOTE: Depending on the board selected, this device may require
|
2022-06-30 10:28:04 +08:00
|
|
|
exclusive use of an SPI bus as ws2812 LEDs have no CS or
|
|
|
|
RESET line.
|
2020-09-15 04:41:49 +08:00
|
|
|
|
2022-06-30 10:28:04 +08:00
|
|
|
# NOTE: Once the older SPI driver is migrated to the new model
|
|
|
|
# we should remove the "select SPI" in the above config.
|
|
|
|
|
|
|
|
config WS2812_NON_SPI_DRIVER
|
|
|
|
bool "Support the new non-SPI WS2812 driver."
|
|
|
|
default n
|
2020-09-15 04:41:49 +08:00
|
|
|
depends on WS2812
|
2022-06-30 10:28:04 +08:00
|
|
|
---help---
|
|
|
|
The original driver used SPI hardware to clock bits to the
|
|
|
|
pixels. The driver is being re-designed to support other
|
|
|
|
implementations. Selecting this option builds the new
|
|
|
|
model driver.
|
|
|
|
|
|
|
|
config WS2812_LED_COUNT
|
|
|
|
int "Number of ws2812s connected."
|
|
|
|
default 1
|
|
|
|
range 1 65535
|
|
|
|
depends on WS2812
|
|
|
|
---help---
|
2023-02-26 02:14:11 +08:00
|
|
|
The number of ws2812s chained to this port. Although the
|
2022-06-30 10:28:04 +08:00
|
|
|
driver allows up to 65,535 ws2812s the practical limit will
|
|
|
|
depend on processor speed and other resources.
|
2020-09-15 04:41:49 +08:00
|
|
|
|
2022-06-30 10:28:04 +08:00
|
|
|
config WS2812_HAS_WHITE
|
|
|
|
bool "ws2812s have white LED."
|
|
|
|
default n
|
|
|
|
depends on WS2812
|
|
|
|
---help---
|
|
|
|
Some ws2812 work-alike chips have a white LED in addition
|
|
|
|
to the standard red, green, and blue LEDs. This option
|
|
|
|
enables support for such chips. Note that the driver does
|
|
|
|
not support chains with a mix of RGB and RGBW pixels.
|
|
|
|
|
|
|
|
config WS2812_FREQUENCY
|
|
|
|
int "WS2812 Bit Frequency (Hz)"
|
|
|
|
default 800000
|
|
|
|
depends on WS2812
|
|
|
|
---help---
|
2022-08-13 23:33:10 +08:00
|
|
|
Frequency in Hz.
|
|
|
|
On SPI mode (WS2812_NON_SPI_DRIVER not selected), this is
|
|
|
|
the SPI frequency (commonly a few MHz) to generate the required
|
|
|
|
waveforms to represent a 0/1 symbol.
|
|
|
|
On non SPI mode (WS2812_NON_SPI_DRIVER selected), this should be set
|
|
|
|
to the bit frequency of the ws2812s being used. Newer chips use an
|
|
|
|
800 kHz bit frequency (the default); although, some older chips run
|
|
|
|
at 400 kHz.
|
2023-02-26 02:14:11 +08:00
|
|
|
|
2015-12-15 22:05:10 +08:00
|
|
|
endmenu # LED Support
|