12#include <driver/gpio.h>
14#include <esp_idf_version.h>
15#include <driver/rmt_tx.h>
27 void setup()
override;
68#if ESP_IDF_VERSION >= ESP_IDF_VERSION_VAL(5, 3, 0)
uint32_t max_refresh_rate_
void set_pin(uint8_t pin)
float get_setup_priority() const override
void set_inverted(bool inverted)
size_t get_buffer_size_() const
light::LightTraits get_traits() override
void clear_effect_data() override
void set_rmt_symbols(uint32_t rmt_symbols)
rmt_encoder_handle_t encoder_
void write_state(light::LightState *state) override
void set_use_dma(bool use_dma)
void set_num_leds(uint16_t num_leds)
light::ESPColorView get_view_internal(int32_t index) const override
int32_t size() const override
void set_max_refresh_rate(uint32_t interval_us)
Set a maximum refresh rate in µs as some lights do not like being updated too often.
rmt_channel_handle_t channel_
void set_led_params(uint32_t bit0_high, uint32_t bit0_low, uint32_t bit1_high, uint32_t bit1_low, uint32_t reset_time_high, uint32_t reset_time_low)
void set_channel_colors(light::ChannelColors channel_colors)
light::ChannelColors channel_colors_
void dump_config() override
void set_use_psram(bool use_psram)
ESPColorCorrection correction_
This class represents the communication layer between the front-end MQTT layer and the hardware outpu...
This class is used to represent the capabilities of a light.
Which byte of an addressable LED's data carries each colour.
ESPColorView view(uint8_t *buf, uint8_t *effect_data, int32_t index, const ESPColorCorrection *correction) const
View of LED index in buf; a scratch pixel while buf or effect_data is unallocated (failed setup()).
static constexpr uint8_t NO_WHITE
Value of w for a strip that only has red, green and blue channels.
uint8_t bytes_per_led() const
LightTraits traits() const
Colour modes of a strip with this channel order.