• In an attempt to provide more information, I created a 70 second you tube video ... see here:


    The Script I am using is as follows:

    var i = 0;
    var esp8266 = require("ESP8266");
    pinMode(D4, "output");
    function colorLeds(red, green, blue) {
      var data = [];
      for (var i=0; i<20; i++) {
      esp8266.neopixelWrite(NodeMCU.D4, data);
    setInterval(function() {
      console.log("Changing ...!");
      if ((i % 3) === 0) {
      } else if ((i%3) === 1) {
      } else {
          colorLeds(0,0, 255);
    }, 1000);

    which alternates a string of 20 pixels between red, green and blue once a second. The Espruino build is the downloadable binaries for 1v87. The ESP8266 is a NodeMCU DevKit module.

    When I started capturing the video, all was working as expected. At about the 20 second mark, we can start to see the weirdness creep in ... this goes on until about 1:00 and then we seem to "resynch". There doesn't appear to be any patterns ... it can start generating ambiguity immediately or can be "correct" immediately ... the duration between weirdness and correctness also appears to be non deterministic. I have tried a variety of different pixels, power sources, pixel strings and pixel types.

    I'm very much open to the notion that I am doing something wrong in my setup ... but I'm hoping to hear experiences from other NeoPixel users ... how "stable" are your outputs? What are your configurations? etc etc.


Avatar for Kolban @Kolban started