If you own an original snowflake kit or produced boards from the sources, you have to wire them by yourself. The pre-assembled kit from Pimoroni comes with some nice flex-cables, but you may want to replace them with more decorative ones.
Here I explain how to create a custom wiring for your snowflake decoration.
Layout / Arrangement
You can arrange the decoration in various layouts and you also can combine multiple sets as you like.
Some patterns in the original firmware were written for the original strand layout with five snowflakes, but you can rewrite the firmware as you like and adapt it for your custom layout.
While it is possible to power more than five snowflake boards in one strand, it requires reprogramming the boards with a changed firmware. The timeout in the firmware of the boards is set for the five boards as designed.
Update the board count for the constant
Configuration.hpp. It will change the timeouts in the communication module.
Each snowflake has three pads at the top and bottom end. Two pads for the power and one pad as data input and output.
Each snowflake needs to get the supply voltage to a
+ pad and ground to the
- pad. Both
+ pads and both
- pads are interconnected, so you can connect the pads from the bottom of one snowflake to the top of another.
Single Strand (Original)
Connecting the snowflakes in a single strand is the simplest case.
As shown in the previous illustration, you just connect the output of the one snowflake to the next one. A cable with three cores is sufficient.
Connecting the snowflakes in a horizontal arrangement is slightly more complicated. You need a cable with four cores. You have to connect the data output on each board with the data input of the next one. The following illustration shows the most straightforward horizontal configuration.
You can combine a vertical and horizontal arrangement. Make sure you loop the last data output of each strand back to the first data input of the next strand.
The Cable or Wire to Use
There are endless options for the wire you can use. I like these shiny silver ones with a transparent mantle. It adds to the sparkling snow effect of the decoration.
Another excellent option is a thin enamelled copper wire or a regular cable with multiple cores.
There are two crucial properties of the cable:
- Conductivity: The cross-section per core.
- Stiffness: How flexible the cable is.
As a rough estimation, each snowflake will consume a maximum of 330mW power.
|Version||Supply Voltage||Maximum Current per Snowflake|
With five snowflakes connected to one strand, you have to make sure you the power wires (
-) can handle 500mA or 350mA. If your wires are too thin, the resistance value and voltage drop will prevent a proper function of the decoration.
If you have many boards in serial, you need thicker wires — if there are single ones in a horizontal arrangement, you get away with very thin wires.
Let us do some math:
Take the largest number of snowflakes you have in series and multiply this number with the maximum current per snowflake.
5 Pimoroni snowflakes × 70mA => 350mA
10 original snowflakes × 100mA => 1A
The following table will show you theoretical voltage drop values at 21ºC (~70ºF) for 1-meter (~3.3 ft) copper wire at different currents:
|Cross-Section||350 mA||500 mA||750 mA||1A|
|0.03 mm²||391 mV||559 mV||839 mV||1.12 V|
|0.06 mm²||196 mV||280 mV||419 mV||559 mV|
|0.1 mm²||117 mV||168 mV||252 mV||336 mV|
|0.2 mm²||59 mV||84 mV||126 mV||168 mV|
|0.5 mm²||23 mV||33 mV||50 mV||67 mV|
The original snowflake will only tolerate a maximum voltage drop of 300mV. The Pimoroni version uses a voltage regulator and will tolerate a maximum voltage drop of 1.7V.
|Version||Maximum Voltage Drop|
Now calculate the cable length from the power source to the last snowflake in the strand. Calculate the current for the strand. Next, multiply the voltage drop for your cable, double this value, and add some headroom. Check if the result is in the tolerable range.
Cable 5.5 m / 0.06 mm²:
5.5 × 196 mV × 2 => 5.15V ❌
Cable 5.5 m / 0.5 mm²:
5.5 × 23 mV × 2 => 253 mV ✅
Stiffness / Flexibility
A flexible cable is important to ensure all snowflakes in a strand hang in a straight line. Stranded wires are usually softer than solid wires, but this depends strongly on the used insulation material.
While you usually find all electrical details in the specification of cables, there is typically no word about flexibility. Best is if you can check the cable first before you buy a spool of it.
Adding a weight to the last snowflake helps, but there is a limit on how much weight you can put to each strand.
Power Supply Board
Depending on the version of snowflakes you use, they need either 3.3V or 5V supply voltage. If you were able to solder the original snowflake kit or made some from sources, you will need no further help.
I write this section if you bought the pre-assembled kit from Pimoroni and like to replace the adapter board with a custom solution.
You will need the following components:
- A prototyping board.
- A push-button which makes contact if pressed.
- Two resistors, a 10kΩ and 4.7kΩ one.
- An old USB cable.
It is simple to create a special layout of snowflakes for your decoration. If you combine this with customized firmware, you can create absolutely stunning effects.
If you have questions, missed any information, or simply want to provide feedback, feel free to comment below or reach out to us through Twitter!
Snowflake Assembly Video
Snowflake Component Side
Perfect Snowflake Panels from Eurocircuits
Snowflake Project Videos
Programming the Snowflake Decoration
4 thoughts on “How to Wire the Snowflake Decoration”
I’ve just bought a second lot of stars from Pimoroni to form a set of 10 for the children’s mini Christmas tree. All the stars work, but the top two aren’t on the same pattern. A long press on the button only turns off the bottom 8 indicating that the data line isn’t getting to these. I’ve tried swapping the ribbon cable and some of the stars, but the problem persists. Any ideas, or is 10 too many?
While it is easily possible to add 10 or even more snowflake boards to one single line, the original firmware is prepared for five boards in one line. The reason why you run into these problems is a timeout defined in the firmware. It limits the time how long the master board is waiting for the propagation of identifiers along the data line.
By reprogramming your snowflake boards, just changing one line in the firmware, you can add as many boards as you like.
Sorry, if this wasn’t clear in this article. I will add a notice to it.
If you like to power 10 or more boards, without changing the firmware, you have to separate them into blocks of five.
Thanks for that. After re-arranging the stars and cables several more times, it became worse, no matter what the combination I tried, the last 3 stars just stayed blinking a single outer LED. In the end I gave up, and did as you suggested, using a second phone charger to made two lots of five.
I’d still like to get all 10 synchronised, perhaps after Christmas I’ll try reprogramming them, but as that involves soldering headers on to all of the stars, I’ll probably end up with less than 10 working!
Soldering the programming headers to the boards should not be difficult. Alternatively, to avoid soldering, you can build a rig with pogo pins connecting to the pads ob the board. Let me know if you got it working! 😃