Improved LED Ring

This commit is contained in:
simon 2026-04-26 11:43:59 +02:00
parent 479162e47b
commit 2845c33955
3 changed files with 35 additions and 37 deletions

View File

@ -12,7 +12,7 @@ dependencies:
idf:
source:
type: idf
version: 5.5.4
version: 5.5.1
direct_dependencies:
- espressif/led_strip
- idf

View File

@ -1,3 +1,4 @@
#include "bosch456.h"
#include "driver/gpio.h"
#include "driver/i2c_master.h"
#include "driver/i2c_types.h"
@ -8,7 +9,7 @@
#include "led_strip.h"
#include "uart.h"
#include <stdint.h>
#include "bosch456.h"
#include <sys/types.h>
#define LED_GPIO 21
#define TASTER_GPIO 12
@ -19,6 +20,8 @@
#define I2C_SDA 6
#define LED_RING 7
#define RING_LEDS 95
#define I2C_PORT 0
#define IO_EXPANDER_ADDRESS 0x20
@ -80,23 +83,32 @@ void vTaskInput(void *pvParameters) {
void vTaskRingBlink(void *pvParameters) {
ESP_LOGI("GPIO_TASK", "GPIO ring blink task started");
static bool state;
uint8_t c1 = 255, c2 = 255, c3 = 255;
while (1) {
if (state) {
// GREEN
led_strip_set_pixel(led_ring, 0, 25, 0, 0);
led_strip_set_pixel(led_ring, 10, 25, 0, 0);
for (int i = 0; i < RING_LEDS; i++) {
led_strip_set_pixel(led_ring, i, c1, c2, c3);
led_strip_refresh(led_ring);
vTaskDelay(pdMS_TO_TICKS(10));
}
} else {
led_strip_set_pixel(led_ring, 0, 0, 0, 0);
led_strip_set_pixel(led_ring, 10, 0, 0, 0);
for (int i = 0; i < RING_LEDS; i++) {
led_strip_set_pixel(led_ring, i, 0, 0, 0);
led_strip_refresh(led_ring);
vTaskDelay(pdMS_TO_TICKS(10));
}
}
led_strip_refresh(led_ring);
state = !state;
vTaskDelay(pdMS_TO_TICKS(1000));
uint8_t temp = c1;
c1 = c3;
c3 = c2;
c2 = temp;
vTaskDelay(pdMS_TO_TICKS(100));
}
}
@ -121,7 +133,7 @@ void app_main(void) {
/* LED Ring config */
led_strip_config_t ring_config = {
.strip_gpio_num = LED_RING,
.max_leds = 94,
.max_leds = RING_LEDS,
};
led_strip_rmt_config_t rmt_ring_config = {
.resolution_hz = 10 * 1000 * 1000, // 10 MHz

View File

@ -1,6 +1,6 @@
#
# Automatically generated file. DO NOT EDIT.
# Espressif IoT Development Framework (ESP-IDF) 5.5.4 Project Configuration
# Espressif IoT Development Framework (ESP-IDF) 5.5.1 Project Configuration
#
CONFIG_SOC_ADC_SUPPORTED=y
CONFIG_SOC_UART_SUPPORTED=y
@ -124,6 +124,7 @@ CONFIG_SOC_GPIO_OUT_RANGE_MAX=48
CONFIG_SOC_GPIO_VALID_DIGITAL_IO_PAD_MASK=0x0001FFFFFC000000
CONFIG_SOC_GPIO_CLOCKOUT_BY_IO_MUX=y
CONFIG_SOC_GPIO_CLOCKOUT_CHANNEL_NUM=3
CONFIG_SOC_GPIO_SUPPORT_HOLD_IO_IN_DSLP=y
CONFIG_SOC_DEDIC_GPIO_OUT_CHANNELS_NUM=8
CONFIG_SOC_DEDIC_GPIO_IN_CHANNELS_NUM=8
CONFIG_SOC_DEDIC_GPIO_OUT_AUTO_ENABLE=y
@ -184,7 +185,7 @@ CONFIG_SOC_RMT_CHANNELS_PER_GROUP=8
CONFIG_SOC_RMT_MEM_WORDS_PER_CHANNEL=48
CONFIG_SOC_RMT_SUPPORT_RX_PINGPONG=y
CONFIG_SOC_RMT_SUPPORT_RX_DEMODULATION=y
CONFIG_SOC_RMT_SUPPORT_ASYNC_STOP=y
CONFIG_SOC_RMT_SUPPORT_TX_ASYNC_STOP=y
CONFIG_SOC_RMT_SUPPORT_TX_LOOP_COUNT=y
CONFIG_SOC_RMT_SUPPORT_TX_LOOP_AUTO_STOP=y
CONFIG_SOC_RMT_SUPPORT_TX_SYNCHRO=y
@ -207,7 +208,6 @@ CONFIG_SOC_LCDCAM_RGB_DATA_WIDTH=16
CONFIG_SOC_RTC_CNTL_CPU_PD_DMA_BUS_WIDTH=128
CONFIG_SOC_RTC_CNTL_CPU_PD_REG_FILE_NUM=549
CONFIG_SOC_RTC_CNTL_TAGMEM_PD_DMA_BUS_WIDTH=128
CONFIG_SOC_RTC_CNTL_NEEDS_ATOMIC_ACCESS=y
CONFIG_SOC_RTCIO_PIN_COUNT=22
CONFIG_SOC_RTCIO_INPUT_OUTPUT_SUPPORTED=y
CONFIG_SOC_RTCIO_HOLD_SUPPORTED=y
@ -234,6 +234,10 @@ CONFIG_SOC_SPI_SCT_SUPPORTED=y
CONFIG_SOC_SPI_SCT_REG_NUM=14
CONFIG_SOC_SPI_SCT_BUFFER_NUM_MAX=y
CONFIG_SOC_SPI_SCT_CONF_BITLEN_MAX=0x3FFFA
CONFIG_SOC_MEMSPI_SRC_FREQ_120M_SUPPORTED=y
CONFIG_SOC_MEMSPI_SRC_FREQ_80M_SUPPORTED=y
CONFIG_SOC_MEMSPI_SRC_FREQ_40M_SUPPORTED=y
CONFIG_SOC_MEMSPI_SRC_FREQ_20M_SUPPORTED=y
CONFIG_SOC_SPIRAM_SUPPORTED=y
CONFIG_SOC_SPIRAM_XIP_SUPPORTED=y
CONFIG_SOC_SYSTIMER_COUNTER_NUM=2
@ -356,7 +360,6 @@ CONFIG_SOC_SPI_MEM_SUPPORT_WRAP=y
CONFIG_SOC_MEMSPI_TIMING_TUNING_BY_MSPI_DELAY=y
CONFIG_SOC_MEMSPI_CORE_CLK_SHARED_WITH_PSRAM=y
CONFIG_SOC_SPI_MEM_SUPPORT_CACHE_32BIT_ADDR_MAP=y
CONFIG_SOC_SPI_MEM_FLASH_SUPPORT_HPM=y
CONFIG_SOC_COEX_HW_PTI=y
CONFIG_SOC_EXTERNAL_COEX_LEADER_TX_LINE=y
CONFIG_SOC_SDMMC_USE_GPIO_MATRIX=y
@ -368,7 +371,6 @@ CONFIG_SOC_WIFI_HW_TSF=y
CONFIG_SOC_WIFI_FTM_SUPPORT=y
CONFIG_SOC_WIFI_GCMP_SUPPORT=y
CONFIG_SOC_WIFI_WAPI_SUPPORT=y
CONFIG_SOC_WIFI_TXOP_SUPPORT=y
CONFIG_SOC_WIFI_CSI_SUPPORT=y
CONFIG_SOC_WIFI_MESH_SUPPORT=y
CONFIG_SOC_WIFI_SUPPORT_VARIABLE_BEACON_WINDOW=y
@ -653,16 +655,8 @@ CONFIG_APPTRACE_LOCK_ENABLE=y
#
# Common Options
#
#
# BLE Log
#
# CONFIG_BLE_LOG_ENABLED is not set
# end of BLE Log
# CONFIG_BT_BLE_LOG_SPI_OUT_ENABLED is not set
# CONFIG_BT_BLE_LOG_UHCI_OUT_ENABLED is not set
# CONFIG_BT_LE_USED_MEM_STATISTICS_ENABLED is not set
# end of Common Options
# end of Bluetooth
@ -916,7 +910,6 @@ CONFIG_SPI_SLAVE_ISR_IN_IRAM=y
# ESP-Driver:TWAI Configurations
#
# CONFIG_TWAI_ISR_IN_IRAM is not set
# CONFIG_TWAI_IO_FUNC_IN_IRAM is not set
# CONFIG_TWAI_ISR_CACHE_SAFE is not set
# CONFIG_TWAI_ENABLE_DEBUG_LOG is not set
# end of ESP-Driver:TWAI Configurations
@ -1019,7 +1012,6 @@ CONFIG_ESP_HTTPS_SERVER_EVENT_POST_TIMEOUT=2000
#
# Hardware Settings
#
CONFIG_ESP_HW_SUPPORT_FUNC_IN_IRAM=y
#
# Chip revision
@ -1080,8 +1072,6 @@ CONFIG_RTC_CLK_SRC_INT_RC=y
# CONFIG_RTC_CLK_SRC_EXT_OSC is not set
# CONFIG_RTC_CLK_SRC_INT_8MD256 is not set
CONFIG_RTC_CLK_CAL_CYCLES=1024
CONFIG_RTC_CLK_FUNC_IN_IRAM=y
CONFIG_RTC_TIME_FUNC_IN_IRAM=y
# end of RTC Clock Config
#
@ -1135,9 +1125,9 @@ CONFIG_ESP_INTR_IN_IRAM=y
#
# ESP-Driver:LCD Controller Configurations
#
# CONFIG_LCD_ENABLE_DEBUG_LOG is not set
# CONFIG_LCD_RGB_ISR_IRAM_SAFE is not set
# CONFIG_LCD_RGB_RESTART_IN_VSYNC is not set
# CONFIG_LCD_ENABLE_DEBUG_LOG is not set
# end of ESP-Driver:LCD Controller Configurations
#
@ -1191,9 +1181,9 @@ CONFIG_ESP_PHY_IRAM_OPT=y
#
# Power Management
#
# CONFIG_PM_SLEEP_FUNC_IN_IRAM is not set
CONFIG_PM_SLEEP_FUNC_IN_IRAM=y
# CONFIG_PM_ENABLE is not set
# CONFIG_PM_SLP_IRAM_OPT is not set
CONFIG_PM_SLP_IRAM_OPT=y
CONFIG_PM_POWER_DOWN_CPU_IN_LIGHT_SLEEP=y
CONFIG_PM_RESTORE_CACHE_TAGMEM_AFTER_LIGHT_SLEEP=y
# end of Power Management
@ -1405,10 +1395,10 @@ CONFIG_ESP_WIFI_MBEDTLS_TLS_CLIENT=y
#
# CONFIG_ESP_WIFI_WPS_STRICT is not set
# CONFIG_ESP_WIFI_WPS_PASSPHRASE is not set
# CONFIG_ESP_WIFI_WPS_RECONNECT_ON_FAIL is not set
# end of WPS Configuration Options
# CONFIG_ESP_WIFI_DEBUG_PRINT is not set
# CONFIG_ESP_WIFI_TESTING_OPTIONS is not set
CONFIG_ESP_WIFI_ENTERPRISE_SUPPORT=y
# CONFIG_ESP_WIFI_ENT_FREE_DYNAMIC_BUFFER is not set
# end of Wi-Fi
@ -1741,7 +1731,6 @@ CONFIG_LWIP_IPV6_ND6_NUM_NEIGHBORS=5
CONFIG_LWIP_IPV6_ND6_NUM_PREFIXES=5
CONFIG_LWIP_IPV6_ND6_NUM_ROUTERS=3
CONFIG_LWIP_IPV6_ND6_NUM_DESTINATIONS=10
# CONFIG_LWIP_IPV6_ND6_ROUTE_INFO_OPTION_SUPPORT is not set
# CONFIG_LWIP_PPP_SUPPORT is not set
# CONFIG_LWIP_SLIP_SUPPORT is not set
@ -1972,7 +1961,6 @@ CONFIG_MQTT_TRANSPORT_WEBSOCKET_SECURE=y
# LibC
#
CONFIG_LIBC_NEWLIB=y
# CONFIG_LIBC_PICOLIBC is not set
CONFIG_LIBC_MISC_IN_IRAM=y
CONFIG_LIBC_LOCKS_PLACE_IN_IRAM=y
CONFIG_LIBC_STDOUT_LINE_ENDING_CRLF=y
@ -1986,7 +1974,6 @@ CONFIG_LIBC_TIME_SYSCALL_USE_RTC_HRT=y
# CONFIG_LIBC_TIME_SYSCALL_USE_RTC is not set
# CONFIG_LIBC_TIME_SYSCALL_USE_HRT is not set
# CONFIG_LIBC_TIME_SYSCALL_USE_NONE is not set
CONFIG_LIBC_ASSERT_BUFFER_SIZE=200
# end of LibC
#
@ -2007,8 +1994,6 @@ CONFIG_LIBC_ASSERT_BUFFER_SIZE=200
#
# CONFIG_OPENTHREAD_SPINEL_ONLY is not set
# end of OpenThread Spinel
# CONFIG_OPENTHREAD_DEBUG is not set
# end of OpenThread
#
@ -2397,6 +2382,7 @@ CONFIG_WPA_MBEDTLS_TLS_CLIENT=y
# CONFIG_WPA_WPS_SOFTAP_REGISTRAR is not set
# CONFIG_WPA_WPS_STRICT is not set
# CONFIG_WPA_DEBUG_PRINT is not set
# CONFIG_WPA_TESTING_OPTIONS is not set
# CONFIG_ESP32_ENABLE_COREDUMP_TO_FLASH is not set
# CONFIG_ESP32_ENABLE_COREDUMP_TO_UART is not set
CONFIG_ESP32_ENABLE_COREDUMP_TO_NONE=y