chore: sync local state
This commit is contained in:
@@ -1 +1 @@
|
||||
67d2744208e9c12d8b1992d21c979396c1726e57cb7e35e7c171c515be20f8ea
|
||||
28c6509a727ef74925b372ed404772aeedf11cce10b78c3f69b3c66799095e2d
|
||||
@@ -1,3 +1,19 @@
|
||||
## 2.5.5
|
||||
|
||||
- Simplified the led_strip component dependency, the time of full build with ESP-IDF v5.3 can now be shorter.
|
||||
|
||||
## 2.5.4
|
||||
|
||||
- Inserted extra delay when initialize the SPI LED device, to ensure all LEDs are in the reset state correctly
|
||||
|
||||
## 2.5.3
|
||||
|
||||
- Extend reset time (280us) to support WS2812B-V5
|
||||
|
||||
## 2.5.2
|
||||
|
||||
- Added API reference doc (api.md)
|
||||
|
||||
## 2.5.0
|
||||
|
||||
- Enabled support for IDF4.4 and above
|
||||
|
||||
@@ -1,22 +1,31 @@
|
||||
include($ENV{IDF_PATH}/tools/cmake/version.cmake)
|
||||
|
||||
set(srcs "src/led_strip_api.c")
|
||||
set(public_requires)
|
||||
|
||||
# Starting from esp-idf v5.x, the RMT driver is rewritten
|
||||
if("${IDF_VERSION_MAJOR}.${IDF_VERSION_MINOR}" VERSION_GREATER_EQUAL "5.0")
|
||||
if(CONFIG_SOC_RMT_SUPPORTED)
|
||||
list(APPEND srcs "src/led_strip_rmt_dev.c" "src/led_strip_rmt_encoder.c")
|
||||
endif()
|
||||
else()
|
||||
else()
|
||||
list(APPEND srcs "src/led_strip_rmt_dev_idf4.c")
|
||||
endif()
|
||||
|
||||
# the SPI backend driver relies on something that was added in IDF 5.1
|
||||
# the SPI backend driver relies on some feature that was available in IDF 5.1
|
||||
if("${IDF_VERSION_MAJOR}.${IDF_VERSION_MINOR}" VERSION_GREATER_EQUAL "5.1")
|
||||
if(CONFIG_SOC_GPSPI_SUPPORTED)
|
||||
list(APPEND srcs "src/led_strip_spi_dev.c")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
# Starting from esp-idf v5.3, the RMT and SPI drivers are moved to separate components
|
||||
if("${IDF_VERSION_MAJOR}.${IDF_VERSION_MINOR}" VERSION_GREATER_EQUAL "5.3")
|
||||
list(APPEND public_requires "esp_driver_rmt" "esp_driver_spi")
|
||||
else()
|
||||
list(APPEND public_requires "driver")
|
||||
endif()
|
||||
|
||||
idf_component_register(SRCS ${srcs}
|
||||
INCLUDE_DIRS "include" "interface"
|
||||
REQUIRES "driver")
|
||||
REQUIRES ${public_requires})
|
||||
|
||||
28
managed_components/espressif__led_strip/Doxyfile
Normal file
28
managed_components/espressif__led_strip/Doxyfile
Normal file
@@ -0,0 +1,28 @@
|
||||
# Set this to the header file you want
|
||||
INPUT = \
|
||||
include/ \
|
||||
interface/
|
||||
|
||||
# Output goes into doxygen directory, which is added to gitignore
|
||||
OUTPUT_DIRECTORY = doxygen
|
||||
|
||||
# Warning-related settings, it's recommended to keep them enabled
|
||||
WARN_IF_UNDOC_ENUM_VAL = YES
|
||||
WARN_AS_ERROR = YES
|
||||
|
||||
# Other common settings
|
||||
FULL_PATH_NAMES = YES
|
||||
ENABLE_PREPROCESSING = YES
|
||||
MACRO_EXPANSION = YES
|
||||
OPTIMIZE_OUTPUT_FOR_C = YES
|
||||
EXPAND_ONLY_PREDEF = YES
|
||||
EXTRACT_ALL = YES
|
||||
PREDEFINED = $(ENV_DOXYGEN_DEFINES)
|
||||
HAVE_DOT = NO
|
||||
GENERATE_XML = YES
|
||||
XML_OUTPUT = xml
|
||||
GENERATE_HTML = NO
|
||||
HAVE_DOT = NO
|
||||
GENERATE_LATEX = NO
|
||||
QUIET = YES
|
||||
MARKDOWN_SUPPORT = YES
|
||||
@@ -14,12 +14,12 @@
|
||||
|
||||
| Type | Name |
|
||||
| ---: | :--- |
|
||||
| esp\_err\_t | [**led\_strip\_clear**](#function-led_strip_clear) ([**led\_strip\_handle\_t**](#struct-led_strip_t) strip) <br>_Clear LED strip (turn off all LEDs)_ |
|
||||
| esp\_err\_t | [**led\_strip\_del**](#function-led_strip_del) ([**led\_strip\_handle\_t**](#struct-led_strip_t) strip) <br>_Free LED strip resources._ |
|
||||
| esp\_err\_t | [**led\_strip\_refresh**](#function-led_strip_refresh) ([**led\_strip\_handle\_t**](#struct-led_strip_t) strip) <br>_Refresh memory colors to LEDs._ |
|
||||
| esp\_err\_t | [**led\_strip\_set\_pixel**](#function-led_strip_set_pixel) ([**led\_strip\_handle\_t**](#struct-led_strip_t) strip, uint32\_t index, uint32\_t red, uint32\_t green, uint32\_t blue) <br>_Set RGB for a specific pixel._ |
|
||||
| esp\_err\_t | [**led\_strip\_set\_pixel\_hsv**](#function-led_strip_set_pixel_hsv) ([**led\_strip\_handle\_t**](#struct-led_strip_t) strip, uint32\_t index, uint16\_t hue, uint8\_t saturation, uint8\_t value) <br>_Set HSV for a specific pixel._ |
|
||||
| esp\_err\_t | [**led\_strip\_set\_pixel\_rgbw**](#function-led_strip_set_pixel_rgbw) ([**led\_strip\_handle\_t**](#struct-led_strip_t) strip, uint32\_t index, uint32\_t red, uint32\_t green, uint32\_t blue, uint32\_t white) <br>_Set RGBW for a specific pixel._ |
|
||||
| esp\_err\_t | [**led\_strip\_clear**](#function-led_strip_clear) ([**led\_strip\_handle\_t**](#typedef-led_strip_handle_t) strip) <br>_Clear LED strip (turn off all LEDs)_ |
|
||||
| esp\_err\_t | [**led\_strip\_del**](#function-led_strip_del) ([**led\_strip\_handle\_t**](#typedef-led_strip_handle_t) strip) <br>_Free LED strip resources._ |
|
||||
| esp\_err\_t | [**led\_strip\_refresh**](#function-led_strip_refresh) ([**led\_strip\_handle\_t**](#typedef-led_strip_handle_t) strip) <br>_Refresh memory colors to LEDs._ |
|
||||
| esp\_err\_t | [**led\_strip\_set\_pixel**](#function-led_strip_set_pixel) ([**led\_strip\_handle\_t**](#typedef-led_strip_handle_t) strip, uint32\_t index, uint32\_t red, uint32\_t green, uint32\_t blue) <br>_Set RGB for a specific pixel._ |
|
||||
| esp\_err\_t | [**led\_strip\_set\_pixel\_hsv**](#function-led_strip_set_pixel_hsv) ([**led\_strip\_handle\_t**](#typedef-led_strip_handle_t) strip, uint32\_t index, uint16\_t hue, uint8\_t saturation, uint8\_t value) <br>_Set HSV for a specific pixel._ |
|
||||
| esp\_err\_t | [**led\_strip\_set\_pixel\_rgbw**](#function-led_strip_set_pixel_rgbw) ([**led\_strip\_handle\_t**](#typedef-led_strip_handle_t) strip, uint32\_t index, uint32\_t red, uint32\_t green, uint32\_t blue, uint32\_t white) <br>_Set RGBW for a specific pixel._ |
|
||||
|
||||
## Functions Documentation
|
||||
|
||||
@@ -131,8 +131,8 @@ esp_err_t led_strip_set_pixel_hsv (
|
||||
- `strip` LED strip
|
||||
- `index` index of pixel to set
|
||||
- `hue` hue part of color (0 - 360)
|
||||
- `saturation` saturation part of color (0 - 255)
|
||||
- `value` value part of color (0 - 255)
|
||||
- `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:**
|
||||
|
||||
@@ -190,7 +190,7 @@ Also see `led_strip_set_pixel` if you only want to specify the RGB part of the c
|
||||
|
||||
| Type | Name |
|
||||
| ---: | :--- |
|
||||
| esp\_err\_t | [**led\_strip\_new\_rmt\_device**](#function-led_strip_new_rmt_device) (const [**led\_strip\_config\_t**](#struct-led_strip_config_t) \*led\_config, const [**led\_strip\_rmt\_config\_t**](#struct-led_strip_rmt_config_t) \*rmt\_config, [**led\_strip\_handle\_t**](#struct-led_strip_t) \*ret\_strip) <br>_Create LED strip based on RMT TX channel._ |
|
||||
| esp\_err\_t | [**led\_strip\_new\_rmt\_device**](#function-led_strip_new_rmt_device) (const [**led\_strip\_config\_t**](#struct-led_strip_config_t) \*led\_config, const [**led\_strip\_rmt\_config\_t**](#struct-led_strip_rmt_config_t) \*rmt\_config, [**led\_strip\_handle\_t**](#typedef-led_strip_handle_t) \*ret\_strip) <br>_Create LED strip based on RMT TX channel._ |
|
||||
|
||||
## Structures and Types Documentation
|
||||
|
||||
@@ -202,7 +202,7 @@ Variables:
|
||||
|
||||
- rmt\_clock\_source\_t clk_src <br>RMT clock source
|
||||
|
||||
- struct [**led\_strip\_rmt\_config\_t**](#struct-led_strip_rmt_config_t) flags <br>Extra driver flags
|
||||
- struct led\_strip\_rmt\_config\_t::@0 flags <br>Extra driver flags
|
||||
|
||||
- size\_t mem_block_symbols <br>How many RMT symbols can one RMT channel hold at one time. Set to 0 will fallback to use the default size.
|
||||
|
||||
@@ -249,7 +249,7 @@ esp_err_t led_strip_new_rmt_device (
|
||||
|
||||
| Type | Name |
|
||||
| ---: | :--- |
|
||||
| esp\_err\_t | [**led\_strip\_new\_spi\_device**](#function-led_strip_new_spi_device) (const [**led\_strip\_config\_t**](#struct-led_strip_config_t) \*led\_config, const [**led\_strip\_spi\_config\_t**](#struct-led_strip_spi_config_t) \*spi\_config, [**led\_strip\_handle\_t**](#struct-led_strip_t) \*ret\_strip) <br>_Create LED strip based on SPI MOSI channel._ |
|
||||
| esp\_err\_t | [**led\_strip\_new\_spi\_device**](#function-led_strip_new_spi_device) (const [**led\_strip\_config\_t**](#struct-led_strip_config_t) \*led\_config, const [**led\_strip\_spi\_config\_t**](#struct-led_strip_spi_config_t) \*spi\_config, [**led\_strip\_handle\_t**](#typedef-led_strip_handle_t) \*ret\_strip) <br>_Create LED strip based on SPI MOSI channel._ |
|
||||
|
||||
## Structures and Types Documentation
|
||||
|
||||
@@ -261,7 +261,7 @@ Variables:
|
||||
|
||||
- spi\_clock\_source\_t clk_src <br>SPI clock source
|
||||
|
||||
- struct [**led\_strip\_spi\_config\_t**](#struct-led_strip_spi_config_t) flags <br>Extra driver flags
|
||||
- struct led\_strip\_spi\_config\_t::@1 flags <br>Extra driver flags
|
||||
|
||||
- spi\_host\_device\_t spi_bus <br>SPI bus ID. Which buses are available depends on the specific chip
|
||||
|
||||
@@ -346,13 +346,13 @@ _LED Strip Configuration._
|
||||
|
||||
Variables:
|
||||
|
||||
- struct [**led\_strip\_config\_t**](#struct-led_strip_config_t) flags <br>Extra driver flags
|
||||
- struct led\_strip\_config\_t::@2 flags <br>Extra driver flags
|
||||
|
||||
- uint32\_t invert_out <br>Invert output signal
|
||||
|
||||
- led\_model\_t led_model <br>LED model
|
||||
- [**led\_model\_t**](#enum-led_model_t) led_model <br>LED model
|
||||
|
||||
- led\_pixel\_format\_t led_pixel_format <br>LED pixel format
|
||||
- [**led\_pixel\_format\_t**](#enum-led_pixel_format_t) led_pixel_format <br>LED pixel format
|
||||
|
||||
- uint32\_t max_leds <br>Maximum LEDs in a single strip
|
||||
|
||||
|
||||
@@ -1,6 +1,9 @@
|
||||
dependencies:
|
||||
idf:
|
||||
version: '>=4.4'
|
||||
idf: '>=4.4'
|
||||
description: Driver for Addressable LED Strip (WS2812, etc)
|
||||
repository: git://github.com/espressif/idf-extra-components.git
|
||||
repository_info:
|
||||
commit_sha: 60c14263f3b69ac6e98ecae79beecbe5c18d5596
|
||||
path: led_strip
|
||||
url: https://github.com/espressif/idf-extra-components/tree/master/led_strip
|
||||
version: 2.5.3
|
||||
version: 2.5.5
|
||||
|
||||
@@ -60,8 +60,8 @@ esp_err_t led_strip_set_pixel_rgbw(led_strip_handle_t strip, uint32_t index, uin
|
||||
* @param strip: LED strip
|
||||
* @param index: index of pixel to set
|
||||
* @param hue: hue part of color (0 - 360)
|
||||
* @param saturation: saturation part of color (0 - 255)
|
||||
* @param value: value part of color (0 - 255)
|
||||
* @param saturation: saturation part of color (0 - 255, rescaled from 0 - 1. e.g. saturation = 0.5, rescaled to 127)
|
||||
* @param value: value part of color (0 - 255, rescaled from 0 - 1. e.g. value = 0.5, rescaled to 127)
|
||||
*
|
||||
* @return
|
||||
* - ESP_OK: Set HSV color for a specific pixel successfully
|
||||
|
||||
@@ -177,12 +177,14 @@ esp_err_t led_strip_new_spi_device(const led_strip_config_t *led_config, const l
|
||||
};
|
||||
|
||||
ESP_GOTO_ON_ERROR(spi_bus_add_device(spi_strip->spi_host, &spi_dev_cfg, &spi_strip->spi_device), err, TAG, "Failed to add spi device");
|
||||
|
||||
//ensure the reset time is enough
|
||||
esp_rom_delay_us(10);
|
||||
int clock_resolution_khz = 0;
|
||||
spi_device_get_actual_freq(spi_strip->spi_device, &clock_resolution_khz);
|
||||
// TODO: ideally we should decide the SPI_BYTES_PER_COLOR_BYTE by the real clock resolution
|
||||
// But now, let's fixed the resolution, the downside is, we don't support a clock source whose frequency is not multiple of LED_STRIP_SPI_DEFAULT_RESOLUTION
|
||||
ESP_GOTO_ON_FALSE(clock_resolution_khz == LED_STRIP_SPI_DEFAULT_RESOLUTION / 1000, ESP_ERR_NOT_SUPPORTED, err,
|
||||
// clock_resolution between 2.2MHz to 2.8MHz is supported
|
||||
ESP_GOTO_ON_FALSE((clock_resolution_khz < LED_STRIP_SPI_DEFAULT_RESOLUTION / 1000 + 300) && (clock_resolution_khz > LED_STRIP_SPI_DEFAULT_RESOLUTION / 1000 - 300), ESP_ERR_NOT_SUPPORTED, err,
|
||||
TAG, "unsupported clock resolution:%dKHz", clock_resolution_khz);
|
||||
|
||||
spi_strip->bytes_per_pixel = bytes_per_pixel;
|
||||
|
||||
Reference in New Issue
Block a user