ESP8266/WS2812: Difference between revisions

From Noisebridge
Jump to navigation Jump to search
mNo edit summary
(It BLINKS! #777777)
Line 1: Line 1:
Using LED strips with ESP8266
Using LED strips with ESP8266


Looking to create an easy to use setup for connecting WS2812b LED strips with esp8266's, ideally using the Arduino IDE for dev. Here are some links to various projects, currently in the process of testing/implementing a few of them.
Overview of an easy to use setup for connecting WS2812b LED strips with esp8266's, ideally using the [[ESP8266#Arduino_IDE]] for dev. There are various links below on different libraries, approaches and projects of doing such.


Particular considerations, LUA vs C/Arduino, i2s/UART, etc.
A fairly in depth look at the particulars of these LEDs and in particular how the data protocol works can be found here https://cpldcpu.wordpress.com/2014/01/14/light_ws2812-library-v2-0-part-i-understanding-the-ws2812/
 
 
== I2S ==
 
This seems to be the most promising approach, using the specific architecture and optimizations available on the chip. Originally developed by cnlohr, JoDaNl has since made a [[ESP8266#Arduino_IDE]] friendly version available, that looks to be a work in progress, it is thus far functional.
 
* https://github.com/JoDaNl/esp8266_ws2812_i2s
* https://github.com/cnlohr/esp8266ws2812i2s
 
 
== UART ==
 
The NeoPixelBus was originally developed for use with Arduino hardware, and has since added support for the esp8266. Specifically there is a UART driven branch, while this version does work with the current version of the Arduino IDE (1.6.5) it is unclear as to how well this implementation functions overall and what the trade offs are. One advantage of this version however, is that you can use any GPIO pin, and conceivably multiple pins/strips as well.
 
Installation instructions are provided on the github page. The example code seemed to be a bit glitchy, below is a functional simple starter sketch.
 
* https://github.com/Makuna/NeoPixelBus/tree/UartDriven
 
<pre>
...please stanbdy
</pre>
 
 
== Resources ==


* http://tech.scargill.net/esp8266-ws2812b-leds-on-a-plate/
* http://tech.scargill.net/esp8266-ws2812b-leds-on-a-plate/
* https://github.com/cnlohr/esp8266ws2812i2s
* http://pance.mk/index.php/wifi-light-with-esp8266-and-arduino-code/
* http://pance.mk/index.php/wifi-light-with-esp8266-and-arduino-code/
* https://github.com/Makuna/NeoPixelBus/tree/UartDriven
* https://github.com/einsteinx2/ESP8266
* https://github.com/einsteinx2/ESP8266
* https://github.com/JoDaNl/esp8266_ws2812_i2s

Revision as of 18:49, 1 November 2015

Using LED strips with ESP8266

Overview of an easy to use setup for connecting WS2812b LED strips with esp8266's, ideally using the ESP8266#Arduino_IDE for dev. There are various links below on different libraries, approaches and projects of doing such.

A fairly in depth look at the particulars of these LEDs and in particular how the data protocol works can be found here https://cpldcpu.wordpress.com/2014/01/14/light_ws2812-library-v2-0-part-i-understanding-the-ws2812/


I2S

This seems to be the most promising approach, using the specific architecture and optimizations available on the chip. Originally developed by cnlohr, JoDaNl has since made a ESP8266#Arduino_IDE friendly version available, that looks to be a work in progress, it is thus far functional.


UART

The NeoPixelBus was originally developed for use with Arduino hardware, and has since added support for the esp8266. Specifically there is a UART driven branch, while this version does work with the current version of the Arduino IDE (1.6.5) it is unclear as to how well this implementation functions overall and what the trade offs are. One advantage of this version however, is that you can use any GPIO pin, and conceivably multiple pins/strips as well.

Installation instructions are provided on the github page. The example code seemed to be a bit glitchy, below is a functional simple starter sketch.

...please stanbdy


Resources