Run NeoPixel strands as controlled by IR remote on AVR, Teensy 3.1, ESP8266, and ESP32
Other C++ C
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


This is a combined example code that does neopixel animations while listening for IR commands (given a capable enough chip)

It supports 6 different libraries, 2 for IR and 4 for Neopixels:

Supported/tested chips are:

  • basic AVRs like Uno/328p, Mega, Leonardo and so forth - they only allow concurrent IR if you remove interrupt disabling in the neopixel library, or you can update the neopixel strip and then listen for IR for a while.
  • Teensy v3.1 - this allows talking to neopixels while listening for IR
  • ESP8266 - also allows both thanks to esp8266_ws2812_i2s which doesn't tie up the CPU
  • ESP32 - also allows both thanks to ESP32-Digital-RGB-LED-Drivers/RMT which also doesn't tie up the CPU.

Photos and videos: image image image

Quick video showing the problem of running Neopixels or IR: For a demo of neopixel patterns: (jump to 3:50)

Longer Video Showing the whole story and details: