Here we try to push E1.31 UDP data received wirelessly via ESP8266 and pushed to NeoPixel in the fastest way possible.

Other projects with E1.31 support:

I also demonstrate how to setup and use Jinx!, ledfx and xLights

GitHub: debsahu/E131_PixelPusher

Minimalistic Async code around Async E131 for ESP8266/ESP32

  • Completely Async
  • Web-interface to set starting universe, unicast/umulticast, total number of universes
  • WiFiManager Captive Portal to get WiFi credentials (Compile with -DUSE_EADNS for ESP8266)
  • Subscribes to E131 multicast
  • Connect RX/GPIO3 to DIN of NeoPixel strip, and any PIN (<GPIO32) specified for ESP32
  • Upload included firmware.bin at http://<IP_ADDRESS>/update for ESP8266, compile your own for ESP32
  • Included relavent lines for APA102/Dotstar LED strip: Comment //#define USE_NEOPIXELS xxx and uncomment #define USE_DOTSTAR
    • ESP8266 Hardware SPI: Uses GPIO14(SCK) for CLOCK and GPIO13(MOSI) for DATA
    • ESP32 Hardware SPI: Uses GPIO18(SCK) for CLOCK and GPIO23(MOSI) for DATA

Libraries Needed

platformio.ini is included, use PlatformIO and it will take care of installing the following libraries.

LibraryLinkPlatform
ESPAsyncE131https://github.com/forkineye/ESPAsyncE131ESP8266/32
ESPAsyncUDPhttps://github.com/me-no-dev/ESPAsyncUDPESP8266
ESPAsyncTCPhttps://github.com/me-no-dev/ESPAsyncTCPESP8266
NeoPixelBushttps://github.com/Makuna/NeoPixelBusESP8266/32
ESPAsyncWiFiManagerhttps://github.com/alanswx/ESPAsyncWiFiManagerESP8266/32
ESPAsyncDNSServerhttps://github.com/devyte/ESPAsyncDNSServerESP8266
ESP Async WebServerhttps://github.com/me-no-dev/ESPAsyncWebServerESP8266/32
AsyncTCPhttps://github.com/me-no-dev/AsyncTCPESP32
Adafruit’s Dot Starhttps://github.com/debsahu/Adafruit_DotStarESP8266/32

Pushing E1.31 UDP Data

Jinx

  • Download Jinx from here
  • Setup instructions: see video

LEDfx

  • Download and installation instructions for LEDfx are here
  • Setup instructions: see video

xLights

  • Download xLights from here
  • Setup instructions: see video