Update On 2016 Starburst Lights

Happy New Year.

Adhering to my ‘low cost’ approach I ended up wiring the lights with a mismatch of old electrical cable and 8-core alarm cable, terminal blocks and insulating tape. All units were run using 5v from several linear regulators (7805).

I’d put my lights up early and had about two weeks before Christmas. It was around the two week time that, after some foggy and cold weather, I noticed a single, end of line pixel was remaining illuminated. I could turn the mains supply to the regulators off easily and that cleared the fault only for it to come back minutes or hours later. Finally the fault cleared completely which was strange. With the units secured into the tree with Jubilee Clips I just lived with the fault rather than get the ladder out, fiddle with them and make the fault worse.

A few days between Christmas and the New Year another star developed a faulty pixel, but this was nearer the start of its run of 10x pixels and took most of that leg out. Again I could turn the power off and back on and often it reset properly.

A few days after new year I climbed up, marked the offending positions with red tape and then took all the units down, dried them off indoors and tested again. They all work fine. I then removed some of the silicone to inspect the joins but they too look OK still.

One of the faulty units was a version where I painted all bare connections prior to the silicone sealant 2nd coat. The other was the initial black silicone/clear silicone version. I can only assume for both that water/moisture ingress caused the fault. Flexing the wire doesn’t replicate the fault so it likely wasn’t a dry joint.

The Best Bits

Having a family stop at the end of my garden one evening to say their children really liked the lights.

When up the ladder taking them down a lady slowed her car down, wound the window down and told me how much she/they had enjoyed looking at them each night.

For Next Year:

  • Add extra weather protection – perhaps a clear tubing over the top.
  • Actually spend some money on the power supplies and distribution cables/connectors.
  • Make some more units – 3+1 wasn’t enough !
  • And although I liked the unmanaged approach of self-contained units I missed being able to change what they did once they were up and running. Therefore next year I may change them into DMX512 controlled lighting. Coupled with the fantastic Vixen 3 software I could so a similar starburst, synchronise the stars, change the colours to match etc. To this end I’m already looking at testing out some RS485 comms chips from Texas instruments.


Christmas Fireworks

I’ve done it, I’ve actually managed to make three of those new Starburst units. They run the same code but with an additional line in each compile of the assembly to run the random number generator again.stars_tree

I’ve posted a video on Youtube here which shows the three starbursts, along with last year’s star effect (and the fact I can’t operate/edit a camera very well ! )

I hope you enjoy it.

I’m trying to make some other more basic stars to add extra colour/effect. These will be using RGB strip LED and illuminate as one single star.

I refined my build technique as they progressed and found black gloss paint was a good way to seal around the WS2812 LED PCB dies prior to mounting with clear silicone sealant…..but only the next month will prove how well that has worked.




A Star is Born

An LED Christmas star that is.

What Went OK ?

Following on from my previous post on christmas lights for 2016 this update should detail what I actually made. I wanted to make a light framework to mount the LED strips onto and found a bag full of old fibreglass tent poles – ideal as they are strong and lightweight. I made a hub from two discs of plywood glued together and then drilled 8x holes onto the sides for the poles.

I added some car body filler to strengthen the joints and to waterproof the plywood. The hubs were primed grey and then painted with some black gloss paint.

The WS2812 RGB LEDs came as a panel from Ebay. I had to break them apart and solder individual wires between them. I made a simple jig to hold the LEDs face down (small drill holes and a blob of Bluetack). Each of the 8 arms required a strip of 10x LEDs….each strip required 27x small pieces of wire….each cut, bared back, tinned and soldered into place. I soon doubted my I had decided to do this.

After about 5 out of the 8 strips I was managing to get the process down to about 30 minutes per strip.

Once I had all eight strips I tested them (and corrected a few soldering bridges). By now I had decided against the tubing method of protecting the lights from rain – the PVC tube was quite expensive and I wasn’t sure how I’d manage to pull the strip into place. I decided to mount the strips to the frame and use silicone sealant to waterproof the whole unit.

I put generous blobs of clear sealant on the back of each LED on a single strip and then used 100mmx2.5mm cable ties to secure the strip to one of the frame’s arms. I then added more silicone around the LED to protect the wiring and the WS2812 LED. I had also planned to glue small pieces of 10mm hot melt glue stick to each LED to act as a diffuser – but I trialed out a spare WS2812 and a blob of clear silicone. That worked really well so I added a nice silicone ‘iced gem’ to the top of each LED (see below if you don’t know what an Iced Gem is). 2p3dh3c

Nearly there now, I took a short video of a single starburst unit which you can watch here on my Youtube uploads.

I printed off my PCB design this morning at my local library – they have a well maintained laser printer and charge me 10p a sheet. The design is currently drying after being rubbed with vegetable oil ! I’ll try to expand on that in my next post.


I’ve got some electrical boxes; sanded them lightly and painted them black to hold the PCB. The whole unit should be self-contained and require just 5v to operate.

What Went Wrong ?

After sealing the WS2812 and any bare wires with clear silicone I let that dry. I then found some black silicone and thought I’d give it a second coat for added robustness. A few hours later and the black hadn’t dried….maybe it was the damp/cold evening drawing in so I brought the star inside last night. This morning – the black silicone was still uncured.

Now I had a dilemma on what to do – scrap the black silicone off ? Use a solvent to remove all traces ? That could damage the PVC cables, the clear silicone ? Use something to ‘set’ the black silicone ? Below is a test card where I tried out various household chemicals on a sample of the black silicone to see what dissolved it or made it cure. Hours later they were all fairly similar and still gungy.


So onto plan B, I daubed more clear silicone over the black, wiped it around and hopefully when that has set it will encase the bad layer. Seems OK at the moment.

Lesson learnt – old silicone can also go bad even if it is still liquid. The clear sealant was one that released acetic acid during the cure. The black silicone was a normal cure with no acetic acid – I think this tube had been affected by the cold of last winter.

Please get in contact if you have any questions on this build.

Last Year’s Christmas Star (2015)

I also want to share with you one of the decorations I made for last Christmas. It consists of two sets of 8x tubes of LED lights (bought from Ebay as Meteor Shower). They are meant to be hung in a tree as per the photo below, and for the Xmas before, that is exactly what I did.


Last year I mounted the tubes radially around an old bicycle wheel. After initially powering up with 5v I was pleasantly surprised as they started to run out of sync and produce a very effective starburst pattern….something that gave me ideas to improve on this year see Christmas 2016

I’ve also added a Youtube video here so you can see what it looks like.


The lights cost be about £12 UK per set back in 2014. One tube didn’t work and the Ebay seller gave me a good discount for that item. The line behind them is just the copper central heating pipes to my radiator.



Christmas Lights 2016

img_20161016_165807391Last year I mounted two strings of “LED Meteor Shower” (total 16x tubes) in a radial fashion on an old bicycle wheel. The effect as the individual tubes went out of sync was quite interesting and gave a nice firework/star burst pattern effect.

This year I have plans to make something similar but using Neopixels/WS2812 RGB LEDs.

I’ve made a test string consisting of 10x WS2812 LEDs, this will be one arm of the new star effect and I’d parallel up another 5-7 strings to make 6/8 in total (depending upon what is in the bank account).

I didn’t want to use an Arduino/Raspberry Pi but still wanted something that was free running – but with a degree of randomness. Hopefully with 4-5 of these stars ir would look quite good. I had planned to use FPGA/CPLD and design a WS2812 driver in VHDL but couldn’t easily find a component/development solution to meet my budget. Instead I looked again at using the Microchip PIC range to drive the WS2812 directly. Bit-Banging was out of the question as I wanted an intelligent product that had processing time available to calculate the patterns. I then found a Microchip Tec sheet AN1606 that detailed using the Configurable Logic Cells (CLCs) of their newer PIC devices. That worked well and was fairly easy to implement into a PIC16F1509 DIP device (running at 16MHz and programmed in C using the XC8 compiler).

However, delays in processing (the C overheads) caused some issues with stability. I instead decided to write the entire program in assembler. This has gone well and I now have a single strand running. There is a feed in pattern that is used to generate the LED colour/brightness in the centre, this pattern is stepped through in time. Each LED colour is automatically passed to the next LED but after it is modified to ensure it fades (just like a firework would). The time delay as the pattern steps through is also slowed as time progresses to give a more realistic slow down.

Version 1.02 can be found on my Github page Github StarBurst

I now need to:

  • Design a PCB
  • Buy components (PIC, Neopixels)
  • Buy some clear tubing to mount the WS2812 into
  • Consider controlling them with RF (868MHz) – in a similar way to the Xyloband

I’ll keep posting and will upload code/diagrams etc as I generate them. Please let me know if you enjoyed reading or wish me to explain anything further.

Starting to Think About Christmas Lights

[My Xyloband Tx circuit is busily churning away through some possible byte combinations and I’ve placed the Xyloband in from of me. If it flashes I can stop the code and see what values were being sent. As yet nothing….so while that is working away..]

I’m starting to think about my Christmas light display. Last year I built my own UDP to 8x RGB channel controller that worked off the Vixen3 software and a Raspberry Pi. This year I want to use some of the WS2812 LEDs as addressable pixels. Although the Arduino community seem to have the WS2812 RGB LEDs under control in terms of library functions there is not so much available for those programming microcontrollers like the PIC range.

There are various articles on the WS2812 but basically the datasheet is lacking detail. The protocol requires 24x bits on a NRZ line to drive a single LED and these can be daisy-chained to longer arrays. So 10x LEDs would require the serial Tx of 240x bits. The line timing is important and requires the high pulse to vary in length between 0.35us and 0.9us signifying ‘0’ and ‘1’ respectively.

Another idea was to build the entire ‘fast logic’ in an FPGA and I actually designed the circuit last year but didn’t have a suitable FPGA programmer nor could I afford one.

This year I decided to look at the specs of some of the latest PIC Microcontrollers that Microchip very kindly provided samples of to me. The PIC16F18346 has immediately caught my eye. It has an internal module known as the “Data Signal Modulator”. It looks like this might allow me to easily create the WS2812 drive signals with very little microcontroller overhead – very beneficial as the microcontroller can get on and do other stuff.

I’ll let you know how it goes when I get some code up and running [or back to the Xyloband if it flashes !]




Christmas Lights

This is bad form probably. I still have a blog setup on Google Blogger than I was using prior to christmas 2015 to detail my house light display I was building. I thought it might be of interest to anyone doing the same. What I plan on doing is to pull this material over to my WordPress blog (as I don’t really like the ‘Big-Brother’ choke-hold that Google seems to have once you log in to any single service).

However, until I actually get around to transposing  that my material it can be found at here