11 votes
Accepted

NeoPixel library performance: Adafruit vs. FastLED

You can't rely on the timing reported by millis when comparing FastLED and Adafruit's neopixel library. Writing out Neopixel data involves disabling interrupts, which is what the clock uses to ...
rDg's user avatar
  • 146
5 votes
Accepted

Adafruit Neopixel Library- only the first 16 LEDs respond

When something works, but not completely, it's often due to power issues. Embedded things, microcontrollers/Arduino are fairly robust and "logical". Hence, if your Arduino program works today, it'll ...
aaa's user avatar
  • 2,695
5 votes

RGBW LED strip: which components are required?

NeoPixels The strips based on the WS2812 / SK6812 and similar chips, known by some as NeoPixels, are clever ways of implementing fully-addressable 24-bit colour LEDs. One of the clever things is ...
Nick Gammon's user avatar
  • 38.2k
5 votes
Accepted

Is it possible to query (or otherwise detect) if Arduino is connected to 60 NeoPixel strip vs 144 strip?

Neopixels only have one-way communication. Some possible ways to detect the quantity are: Bring the Data-Out of the last pixel back to the arduino and activate an interrupt on an input pin connected ...
jose can u c's user avatar
  • 6,974
4 votes

Is it possible to infer the length of a neopixel string using 1-wire protocol?

Each pixel "peels off" the first data word before passing on the rest, so the payload gets shorter and shorter as you move down the chain. Although the data wire may look continuous it isn't - the ...
Chris Stratton's user avatar
4 votes

Is it possible to infer the length of a neopixel string using 1-wire protocol?

It is possible to do this by feeding the end of the strip back into the arduino. bunnie Huang blogged about doing this a few years ago: http://www.bunniestudios.com/blog/?p=3345 He has schematics ...
Craig's user avatar
  • 2,120
4 votes

Applause reactivity

Not really an applause detector, but I have written a sound meter program you could use as a starting point for your own project. It is available here: Arduino sound meter. It works as follows: the ...
Edgar Bonet's user avatar
  • 43.1k
4 votes

Neopixels with I/O expander

I don't think that will be an option. The NeoPixel parts need very tight control of the timing in order to work, if the pin timing is wrong by 100 us the wrong data will get latched in. Can you move ...
Andrew's user avatar
  • 1,050
3 votes

Arduino only addresses 3 LED at a time

LED strips with WS2811 and 12V are the ones with one driver and 3 RGB LEDs on it. These are interconnected so you just can't control less than whole group of three. If you need individual control, ...
KIIV's user avatar
  • 4,752
3 votes

Audio Input into A0?

Depending on how loud your audio signal is, you may be able to do it with just one capacitor and two resistors: If your signal is quite quiet, though, you may need to amplify it using an op-amp. For ...
Majenko's user avatar
  • 105k
3 votes

Adafruit Neopixel Library- only the first 16 LEDs respond

You don't modify the library at all. The page refers to the constructor which is the last line here: #include <Adafruit_NeoPixel.h> #define PIN 6 Adafruit_NeoPixel strip = Adafruit_NeoPixel(...
Nick Gammon's user avatar
  • 38.2k
3 votes

RGBW LED strip: which components are required?

I like the ws2812 RGB LEDs with integrated controller. They can be found on adafruit.com, e.g. here: Adafruit NeoPixel NeoMatrix 8x8. There are some good tutorials on adafruit.com: https://learn....
bastelflp's user avatar
  • 189
3 votes
Accepted

Is it possible to infer the length of a neopixel string using 1-wire protocol?

As noted in Chris Stratton's answer, “Each pixel "peels off" the first data word before passing on the rest, so the payload gets shorter and shorter as you move down the chain”. This behavior is ...
James Waldby - jwpat7's user avatar
3 votes

5pt font for Neopixel shield

I was having the same problem until I read the library source code. Later I found the documentation reference. The classic font cursor position is defined as the top-left corner of the character cell....
SDGOL's user avatar
  • 31
3 votes

LED strip problem... getting red when expecting white with lots of pixels. Fine with 1 pixel

According to https://learn.adafruit.com/adafruit-neopixel-uberguide/powering-neopixels a Neopixel can consume 60 mA at full brightness white. Each individual NeoPixel draws up to 60 milliamps at ...
Nick Gammon's user avatar
  • 38.2k
3 votes

Control multiple WS2812B strips with different leds count

The WS2812 chip requires highly timing dependent pulses to work, as I describe on my page about Neopixels. We are talking about pulse widths of 350 ns. I suggest it would be impossible to add another ...
Nick Gammon's user avatar
  • 38.2k
3 votes
Accepted

How to deal with unusual neopixel grid

break it down into blocks to determine the upper left corner of any 8x8 grid const int16_t grid[8][8] = { {0, 15, 16, 31, 32, 47, 48, 63}, {1, 14, 17, 30, 33, 46, 49, 62}, ...
jsotola's user avatar
  • 1,515
3 votes

Arduino Switching Between Loops IR Remote

delay(0) apparently[*] acts like delay(2^32) or about 10^10 milliseconds. That may not be what you had in mind ... :) Try reducing the delay to 1 or use delayMicroseconds() to get something shorter. ...
JRobert's user avatar
  • 15.3k
3 votes

Simplify if then else statements for Neopixel/compass project

You don't use the correct syntax. I assume you mean: // NeoPixel Display if ((counter >=3) && (counter <=9)) { strip.setPixelColor(0, 255, 0, 0); //set pixel number 1 and set color ...
Michel Keijzers's user avatar
3 votes
Accepted

Powering Arduino Uno, CAN Crocodile and NeoPixels from Car

A reasonable estimate for current consumption of 5V NeoPixels is 60mA per pixel. For 186 pixels, that means about 11.16A at 5V; well over the 2.4A of the adapter being used for your other components. ...
jose can u c's user avatar
  • 6,974
3 votes
Accepted

Blink Adafruit_NeoPixel

The first argument of setPixelColor is is the number of the led. In your case 0, so the first led. Instead use a for loop to set all the leds from 0 until (excluding) 24 (which is stored in NUM_LEDS)....
Michel Keijzers's user avatar
3 votes

ignoring potentiometer value variations

You have two issues going on - noise pickup, and a potentiometer with imprecise stops at one or both ends. The pot is the easiest to fix: What are the lowest low reading and highest high reading you ...
JRobert's user avatar
  • 15.3k
3 votes

Adafruit_NeoMatrix / Adafruit_GFX / Print class - how does printing text work here

Nick Gammon's answer is correct. You left a comment on it indicating you needed some detail: ... The libraries I've mentioned do not seem to override any of the Print class's methods. You will see ...
timemage's user avatar
  • 5,221
2 votes

Is it possible to infer the length of a neopixel string using 1-wire protocol?

As far as I can make out (eg. NeoPixels Revealed: How to (not need to) generate precisely timed signals) the NeoPixels are not in fact addressed, but are like a long shift register. Thus if you have ...
Nick Gammon's user avatar
  • 38.2k
2 votes
Accepted

Voltage divider producing unexpected voltage

Since you are connecting your pixel strip in parallel with R2, the correct formula is Vout = Vin × (R2∥Rp) / (R1 + (R2∥Rp)) Where Rp is the resistance of the pixel strip and R2∥Rp = R2 × Rp / (R2 + ...
Edgar Bonet's user avatar
  • 43.1k
2 votes

Adafruit Flora V2 use onboard and external NeoPixels

The #define is just letting you use a nice name for the numeric value of the pin. If you want to use two different pins, you use two different names. So you might define them at the beginning ...
BowlOfRed's user avatar
  • 241
2 votes
Accepted

Same code in setup() and loop() give different results

After some discussion it turned out to be a hardware problem. For the sake of completeness I'll outline the suggestions I made. There was some initial confusion (see the edits) where the hasBeenSet ...
Nick Gammon's user avatar
  • 38.2k
2 votes
Accepted

ESP8266 + NeoPixel - Cannot set pixel color, I got "Exception 29: StoreProhibited"

Your "constructor" isn't doing what you think. In the example you point to you have, efectively: Class object = Class(parameters); Whereas in your code you have: Class object; object = Class(...
Majenko's user avatar
  • 105k

Only top scored, non community-wiki answers of a minimum length are eligible