ESP32 DotStar Methods - Makuna/NeoPixelBus GitHub Wiki
These methods all use DMA behind the scenes for async transfer, and most of the SPI buses support multiple pin outputs. Here is a summary of available buses and their supported bit width:
MCU | Spi1 | Spi2 | Spi3 |
---|---|---|---|
ESP32 | 1x, 2x, 4x | 1x, 2x, 4x | 1x, 2x, 4x |
ESP32-S2 | - | 1x, 2x, 4x, 8x | 1x |
ESP32-S3 | - | 1x, 2x, 4x, 8x | 1x, 2x, 4x |
ESP32-C3 | - | 1x, 2x, 4x | - |
For all of the following methods if a Spi bus number isn't specified then Spi2 will be used by default. A default speed of 10Mhz will be used
Spi bus names
The older ESP32 parts (ESP32, ESP32-S2) used different names for the SPI buses. For example ESP32 used Hspi and Vspi for Spi2 and Spi3, respectively. ESP32-S2 used Fspi and Hspi for Spi2 and Spi3. The newer parts (ESP32-S3, ESP32-C3) dropped these names and is only using the numbered buses. We will always use the numbered buses to avoid the ambiguity
Parallel data
Please note that the current implementation doesn't transpose the output for parallel output methods. Hopefully coming soon