diff --git a/device_hal/device/esp32c2_devkit_m/device.c b/device_hal/device/esp32c2_devkit_m/device.c index 30f7d3c04..fe3b8b59c 100644 --- a/device_hal/device/esp32c2_devkit_m/device.c +++ b/device_hal/device/esp32c2_devkit_m/device.c @@ -28,6 +28,7 @@ led_driver_config_t led_driver_get_config() led_driver_config_t config = { .gpio = LED_GPIO_PIN, .channel = LED_CHANNEL, + .output_invert = 1, }; return config; } diff --git a/device_hal/led_driver/gpio/led_driver.c b/device_hal/led_driver/gpio/led_driver.c index d7604157c..c8bb3e8a6 100644 --- a/device_hal/led_driver/gpio/led_driver.c +++ b/device_hal/led_driver/gpio/led_driver.c @@ -47,6 +47,7 @@ led_driver_handle_t led_driver_init(led_driver_config_t *config) .timer_sel = LEDC_TIMER_1, .duty = 0, .hpoint = 0, + .flags.output_invert = config->output_invert, }; err = ledc_channel_config(&ledc_channel); if (err != ESP_OK) { diff --git a/device_hal/led_driver/include/led_driver.h b/device_hal/led_driver/include/led_driver.h index 97981ebf3..9f319d0a7 100644 --- a/device_hal/led_driver/include/led_driver.h +++ b/device_hal/led_driver/include/led_driver.h @@ -23,6 +23,7 @@ extern "C" { typedef struct { int gpio; int channel; + bool output_invert; } led_driver_config_t; typedef void *led_driver_handle_t;