| Type | Name |
|---|---|
| esp_err_t | led_strip_clear (led_strip_handle_t strip) Clear LED strip (turn off all LEDs) |
| esp_err_t | led_strip_del (led_strip_handle_t strip) Free LED strip resources. |
| esp_err_t | led_strip_refresh (led_strip_handle_t strip) Refresh memory colors to LEDs. |
| esp_err_t | led_strip_set_pixel (led_strip_handle_t strip, uint32_t index, uint32_t red, uint32_t green, uint32_t blue) Set RGB for a specific pixel. |
| esp_err_t | led_strip_set_pixel_hsv (led_strip_handle_t strip, uint32_t index, uint16_t hue, uint8_t saturation, uint8_t value) Set HSV for a specific pixel. |
| esp_err_t | led_strip_set_pixel_rgbw (led_strip_handle_t strip, uint32_t index, uint32_t red, uint32_t green, uint32_t blue, uint32_t white) Set RGBW for a specific pixel. |
led_strip_clearClear LED strip (turn off all LEDs)
esp_err_t led_strip_clear (
led_strip_handle_t strip
)
Parameters:
strip LED stripReturns:
led_strip_delFree LED strip resources.
esp_err_t led_strip_del (
led_strip_handle_t strip
)
Parameters:
strip LED stripReturns:
led_strip_refreshRefresh memory colors to LEDs.
esp_err_t led_strip_refresh (
led_strip_handle_t strip
)
Parameters:
strip LED stripReturns:
Note:
: After updating the LED colors in the memory, a following invocation of this API is needed to flush colors to strip.
led_strip_set_pixelSet RGB for a specific pixel.
esp_err_t led_strip_set_pixel (
led_strip_handle_t strip,
uint32_t index,
uint32_t red,
uint32_t green,
uint32_t blue
)
Parameters:
strip LED stripindex index of pixel to setred red part of colorgreen green part of colorblue blue part of colorReturns:
led_strip_set_pixel_hsvSet HSV for a specific pixel.
esp_err_t led_strip_set_pixel_hsv (
led_strip_handle_t strip,
uint32_t index,
uint16_t hue,
uint8_t saturation,
uint8_t value
)
Parameters:
strip LED stripindex index of pixel to sethue hue part of color (0 - 360)saturation saturation part of color (0 - 255, rescaled from 0 - 1. e.g. saturation = 0.5, rescaled to 127)value value part of color (0 - 255, rescaled from 0 - 1. e.g. value = 0.5, rescaled to 127)Returns:
led_strip_set_pixel_rgbwSet RGBW for a specific pixel.
esp_err_t led_strip_set_pixel_rgbw (
led_strip_handle_t strip,
uint32_t index,
uint32_t red,
uint32_t green,
uint32_t blue,
uint32_t white
)
Note:
Only call this function if your led strip does have the white component (e.g. SK6812-RGBW)
Note:
Also see led_strip_set_pixel if you only want to specify the RGB part of the color and bypass the white component
Parameters:
strip LED stripindex index of pixel to setred red part of colorgreen green part of colorblue blue part of colorwhite separate white componentReturns:
| Type | Name |
|---|---|
| struct | led_strip_rmt_config_t LED Strip RMT specific configuration. |
| Type | Name |
|---|---|
| esp_err_t | led_strip_new_rmt_device (const led_strip_config_t *led_config, const led_strip_rmt_config_t *rmt_config, led_strip_handle_t *ret_strip) Create LED strip based on RMT TX channel. |
led_strip_rmt_config_tLED Strip RMT specific configuration.
Variables:
rmt_clock_source_t clk_src
RMT clock source
struct led_strip_rmt_config_t::@0 flags
Extra driver flags
size_t mem_block_symbols
How many RMT symbols can one RMT channel hold at one time. Set to 0 will fallback to use the default size.
uint32_t resolution_hz
RMT tick resolution, if set to zero, a default resolution (10MHz) will be applied
uint32_t with_dma
Use DMA to transmit data
led_strip_new_rmt_deviceCreate LED strip based on RMT TX channel.
esp_err_t led_strip_new_rmt_device (
const led_strip_config_t *led_config,
const led_strip_rmt_config_t *rmt_config,
led_strip_handle_t *ret_strip
)
Parameters:
led_config LED strip configurationrmt_config RMT specific configurationret_strip Returned LED strip handleReturns:
| Type | Name |
|---|---|
| struct | led_strip_spi_config_t LED Strip SPI specific configuration. |
| Type | Name |
|---|---|
| esp_err_t | led_strip_new_spi_device (const led_strip_config_t *led_config, const led_strip_spi_config_t *spi_config, led_strip_handle_t *ret_strip) Create LED strip based on SPI MOSI channel. |
led_strip_spi_config_tLED Strip SPI specific configuration.
Variables:
spi_clock_source_t clk_src
SPI clock source
struct led_strip_spi_config_t::@1 flags
Extra driver flags
spi_host_device_t spi_bus
SPI bus ID. Which buses are available depends on the specific chip
uint32_t with_dma
Use DMA to transmit data
led_strip_new_spi_deviceCreate LED strip based on SPI MOSI channel.
esp_err_t led_strip_new_spi_device (
const led_strip_config_t *led_config,
const led_strip_spi_config_t *spi_config,
led_strip_handle_t *ret_strip
)
Note:
Although only the MOSI line is used for generating the signal, the whole SPI bus can't be used for other purposes.
Parameters:
led_config LED strip configurationspi_config SPI specific configurationret_strip Returned LED strip handleReturns:
| Type | Name |
|---|---|
| enum | led_model_t LED strip model. |
| enum | led_pixel_format_t LED strip pixel format. |
| struct | led_strip_config_t LED Strip Configuration. |
| typedef struct led_strip_t * | led_strip_handle_t LED strip handle. |
led_model_tLED strip model.
enum led_model_t {
LED_MODEL_WS2812,
LED_MODEL_SK6812,
LED_MODEL_INVALID
};
Note:
Different led model may have different timing parameters, so we need to distinguish them.
led_pixel_format_tLED strip pixel format.
enum led_pixel_format_t {
LED_PIXEL_FORMAT_GRB,
LED_PIXEL_FORMAT_GRBW,
LED_PIXEL_FORMAT_INVALID
};
led_strip_config_tLED Strip Configuration.
Variables:
struct led_strip_config_t::@2 flags
Extra driver flags
uint32_t invert_out
Invert output signal
led_model_t led_model
LED model
led_pixel_format_t led_pixel_format
LED pixel format
uint32_t max_leds
Maximum LEDs in a single strip
int strip_gpio_num
GPIO number that used by LED strip
led_strip_handle_tLED strip handle.
typedef struct led_strip_t* led_strip_handle_t;
| Type | Name |
|---|---|
| struct | led_strip_t LED strip interface definition. |
| typedef struct led_strip_t | led_strip_t |
led_strip_tLED strip interface definition.
Variables:
esp_err_t(* clear
Clear LED strip (turn off all LEDs)
Parameters:
strip LED strip
timeout_ms timeout value for clearing taskReturns:
ESP_FAIL: Clear LEDs failed because some other error occurred
esp_err_t(* del
Free LED strip resources.
Parameters:
strip LED strip
Returns:
ESP_FAIL: Free resources failed because error occurred
esp_err_t(* refresh
Refresh memory colors to LEDs.
Parameters:
strip LED strip
timeout_ms timeout value for refreshing taskReturns:
Note:
: After updating the LED colors in the memory, a following invocation of this API is needed to flush colors to strip.
esp_err_t(* set_pixel
Set RGB for a specific pixel.
Parameters:
strip LED strip
index index of pixel to setred red part of colorgreen green part of colorblue blue part of colorReturns:
ESP_FAIL: Set RGB for a specific pixel failed because other error occurred
esp_err_t(* set_pixel_rgbw
Set RGBW for a specific pixel. Similar to set_pixelbut also set the white component.
Parameters:
strip LED strip
index index of pixel to setred red part of colorgreen green part of colorblue blue part of colorwhite separate white componentReturns:
led_strip_ttypedef struct led_strip_t led_strip_t;
Type of LED strip