diff --git a/platformio.ini b/platformio.ini index 447f5d9353..3b788b2107 100644 --- a/platformio.ini +++ b/platformio.ini @@ -130,7 +130,7 @@ upload_speed = 115200 lib_compat_mode = strict lib_deps = IRremoteESP8266 @ 2.8.2 - https://github.com/Makuna/NeoPixelBus.git#a0919d1c10696614625978dd6fb750a1317a14ce + https://github.com/willmmiles/NeoPixelBus.git#71112f0627e1db397f1770881a4cffc6c067a420 https://github.com/Aircoookie/ESPAsyncWebServer.git#v2.4.2 marvinroger/AsyncMqttClient @ 0.9.0 # for I2C interface diff --git a/wled00/bus_wrapper.h b/wled00/bus_wrapper.h index dd6e3cc58c..1467ba35a6 100644 --- a/wled00/bus_wrapper.h +++ b/wled00/bus_wrapper.h @@ -248,6 +248,15 @@ #if !defined(WLED_USE_SHARED_RMT) && !defined(__riscv) #include #define NeoEsp32RmtMethod(x) NeoEsp32RmtHIN ## x ## Method +#elif defined(CONFIG_IDF_TARGET_ESP32C3) +// We're going to cheat and use bitbanging +// Wrapper type strips the 'channel' argument +template class NPBMethodStripChannelWrapper : public T { +public: + NPBMethodStripChannelWrapper(uint8_t pin, uint16_t pixelCount, size_t elementSize, size_t settingsSize, NeoBusChannel channel) : T(pin, pixelCount, elementSize, settingsSize) { + }; +}; +#define NeoEsp32RmtMethod(x) NPBMethodStripChannelWrapper #else #define NeoEsp32RmtMethod(x) NeoEsp32RmtN ## x ## Method #endif