# ESP32 Neopixel Driver
High-performance low-level driver for WS2812B LEDs.
# Example Application
```cpp
#include <sys/fcntl.h>
#include <sys/unistd.h>
#include <freertos/FreeRTOS.h>
#include <freertos/task.h>
#include "esp_log.h"
#include "driver/gpio.h"
#include "neopixel.h"
#include "helpers.h"
#define PIXEL_COUNT 44
#define NEOPIXEL_PIN GPIO_NUM_27
void app_main(void)
{
   tNeopixelContext neopixel;
   uint32_t iteration;
   uint32_t refreshRate;
   uint32_t taskDelay;
   neopixel = neopixel_Init(PIXEL_COUNT, NEOPIXEL_PIN);
   refreshRate = neopixel_GetRefreshRate(neopixel);
   ESP_LOGI(__func__, "Refresh rate: %" PRIu32, refreshRate);
   iteration = 0;
   taskDelay = MAX(1, pdMS_TO_TICKS(1000UL / refreshRate));
   for(;;)
   {
      tNeopixel pixel[] =
      {
          { (iteration)   % PIXEL_COUNT, NP_RGB(0, 0, 0) },
          { (iteration+5) % PIXEL_COUNT, NP_RGB(0, 0, 1) },
      };
      neopixel_SetPixel(neopixel, pixel, ARRAY_SIZE(pixel));
      ++iteration;
      vTaskDelay(taskDelay);
   }
   neopixel_Deinit(neopixel);
}
```
                            
                        
                    
                
            idf.py add-dependency "zorxx/neopixel^1.0.0"