5cm Pitch Fairy Lights

I think the addition of 2D support in WLED 0.14 will spark a lot of interest in making LED curtains and DIY 2D matrices. And the new PVC coated addressable fairy lights are perfect for making a large serpentine matrix. They have a much thinner profile than WS2811 pixel/bullet strings and the LEDs stay in line and in position. With the WS2811 pixels, you need extra hardware to keep the pixels properly positioned. If you are building your matrix on a wall, LED strips are a good option. However, that involves A LOT of soldering, they draw a lot of power, they need waterproofing if deployed outdoors, and they need a separate form of diffusion.

In contrast, fairly lights draw much less power, have built-in diffusers, are waterproof, have a very slender profile, and require very little soldering to build a serpentine matrix. And unlike older fairy lights, most of the new PVC coated fairy lights are not fixed addressed and work just like normal WS281x lights. I have been building matrices in large windows and the fairly lights are innocuous during the day and display beautifully at night. The biggest drawback of fairy lights is the 10cm / 4in spacing. To build a 32x32 matrix at that spacing, you would need a 3.2m / 10.5ft space. Probably not practical for most users. However, if we could shrink the spacing to 5cm / 2in, a 32 x 32 matrix would fit quite nicely in most picture windows. The problem is, only one manufacturer (Ray Wu) was making 5cm pitch fairy lights, and the cost + shipping is about $15 per 100 lights.

But being the cheapskate that I am, I set out to convince some other manufacturers to make 5cm pitch (20 LED / meter) fairy lights. I’m happy to report that I got some great deals for our community. One is available right now, the other is being manufactured and will be available in about 2 weeks. The supplier is currently only selling these to us (for reasons I will get to in my review below), so you will have to use the link to find it. The cost is $16.99 for 400 LED / 20m with free shipping. Meaning you will be able to build a 32x32 matrix for under $50!

Know Shine Review:

My biggest gripe on these lights is that the wire is very thin, 26AWG. Whereas most other fairy lights are using 24AWG wire. On a per pixel basis, they did not seem as bright as the copper epoxy coated fairy lights. However, given that there will be 4 times as many lights (compared to 10cm string), they are bright enough. You can get full brightness for 100 pixels on either side of a power injection (inject at 0, 200, 400, 600 etc). I measured 100 lights at full bright white and they drew 0.98A. I’m powering my 28x36 matrix with a 12A supply. The outside wire with gold stripes is 5V, the outside silver wire is ground. The manufacturer says to connect both center wires to data, but if you are splicing two strings together, be sure to attach the interior wires separate, gold to gold and silver to silver.


I was not as happy with the build quality from GFLAI. I had several sections that I had to cut out because the spacing was off by 1cm or more, and some of the epoxy beads were much larger or much thinner than the others. They currently have 10cm lights for $2.80 per 100. If their site still says free shipping on orders over $80, please note this does not apply to the fairy lights. They ship using DHL so plan on spending $40 - $100 on shipping. But if you are buying in bulk, this is the way to go. And if you were installing on a roof line instead of building a matrix, the occasional variation in spacing or bead size would not be an issue.

One other note as you are calculating how many lights you’ll need for your project. The spacing between pixels is 5cm / 2in. But due to the length of the epoxy bead, there is only 3.8cm / 1.5in of wire between beads. So either plan on 1.5in spacing in one direction or devise something to offset your strings after the first and last bead in each row.


Thank you a lot. I look a long time for this fairy lights with a smaller pitch. I would be happy to see more details about your setup and progress with more manufacturers as soon as you have any information.

Update, GFAI got back to me with a quote for 1,100 LEDs. Their price was the same as for 10cm lights, $2.80 / 100. It was $50 with shipping to US.

1 Like

Is this (GFAI,1100 LEDs, ~$50) one long stripe then?
Did you talk about an option to get a 32x32 curtain?
Do you have photos about your project, especially your solution of power injection etc.?

They will send you whatever you ask for. On my order I asked for 1000 light rolls. Notenoughlights asked for a single roll of 7,000.

I’m working with a supplier to get us configurable hooks/subcontrollers so we can make curtains to our own specifications. That is going a little slower. But I think we’re getting close.

I’m also working on a how to guide for building the matrix.


Thank you a lot for all your work.

I have an update on the GFLAI lights now that they have arrived and I have used them to build a matrix. The biggest difference between the GFLAI lights and Know Shine Lights was build quality. With the GFLAI lights, there was a factory splice about every 1000 lights, which is fine, except that they didn’t keep the correct spacing when they came to the splice. So I had to pull it apart and redo it. There were also several sections that I had to cut out because the spacing was off by about 1cm. If you were using the lights on your roof or on a tree, it wouldn’t be an issue at all. But when you are building a matrix, the spacing must be exact. I also noticed that the bead sizes weren’t always consistent with GFLAI, occasionally you’d get a skinny bead or a plump one.

Thanks @Artacus for your deep dive into this. :heart:

First off, for pixels with twin data wire, if a pixel dies you can use matrix gaps to map out dead pixel. This (not yet documented) feature allows you to designate a matrix pixel as a non-existent strip pixel so that matrix layout will remain intact. This is available in 0.14.0-b2 build 2302150 or later.

As for LEDs themselves it would be best (or optimal) to have strips of about 256 pixels so you could divide matrix into two halves and then use 2 GPIO pins to drive 512 pixels each to achieve maximum performance. And for power injection additional splice at 128 pixels would be best. With 256 pixels long strip you can make smaller 16x16 pixel matrix as well for cases where only ESP8266 is available or you do not need bigger matrix.

I’ll try to get in touch with the first supplier and see what they say. Otherwise 4x 300 pixels will be cut to length and soldered. :slight_smile:

Both suppliers are manufacturing the lights. I’m sure they’d cut to whatever length you desire.

I’ve been working with Know Shine to get us hardware to make our own curtains. They have sub-controllers to control 20x20 curtains and will soon have for 64x64 curtains. But after making the big loop back curtain, I realized that if they manufactured the 4 wire lights in a slightly different configuration, we wouldn’t need the sub-controllers at all. I’m hoping we can work out an agreement there. If we do, we’ll be able to build curtains much, much easier.

I have an update on the Know Shine lights. It turns out the second data line (interior silver) is not data backup line (like WS2813). Instead it is a data return line, designed to carry the signal from the last LED in a curtain strand back up the line to the first pixel of the next strand. Now I need to do a new build that takes advantage of this. :slight_smile:

I updated the original post and also labeled the wires in the photo.

I feel like a big dummy, but I can’t get the Know Shine lights to show any signs of life with WLED. Are there any gotchas with the wiring that I might be missing? I bought the spool of 8,000 after seeing your post on Reddit, and am feeling foolish that I haven’t been able to figure this out yet. They sent a demo strand that came soldered to a USB controller along with the big spool, and that works fine, but no bueno for any of the others.

Do you have the whole spool of 8000 attached? Even if you only have a few hundred lit all the off lights are drawing power. I waited until reached the half way point of my matrix, cut off the 500 and some lights and then hooked it up. You combine the 2 data wires to your data pin.

I thought that might be the problem, so I cut off a single pixel from the demo strand that I know is good to try to get that to light up from my D1 Mini, but still no success with that either. It must be some trivial thing I’m missing; I will report back when I figure it out.

Are you sure you’ve got the correct data pin set? You have to use GPIO numbers and not D numbers, D2 != GPIO 2.

Fixed it finally. It turns out that I’m not used to working with wires so thin, so the above fake-Wego connector from Aliexpress turned out to be the culprit. I just twisted the wires together to test and it worked fine. Thanks for the help and for posting about these lights!

1 Like

this is fantastic thank you so much for doing all this work. in for 1200

@Artacus got my 1200 LEDs yesterday. Big matrix commencing…

Tonyno got his on Friday and has a 3D printed frame going already.

I’m just going to use PVC pipes.
Or make a megatree. :smiley: