Merry Christmas from the Elimo Engineering team

It’s been a rough couple of years for pretty much everyone, so this festive season I decided to enter the world of nonsense corporate gifts and try to bring a bit of fun and happiness in the process! I bring you… the Elimo Engineering 2021 Christmas Tree!

If you’ve ended up here because you’ve received one of these trees as a gift and are wondering what to do with it, the short answer is – connect the USB-C cable into the port at the back of the tree, and into any powered USB port, power supply, or power bank* and after a few seconds the tree will begin to display a colourful light show!

If you wish, you can also write your own code for the tree using the Arduino™ IDE and program it directly via USB (more on that below).*Some power banks may switch off automatically after a short period of time, this is a feature of the power bank and not a fault.

We have produced a limited number of these trees, designed and assembled in our London studio by my own fair hands. We have given these as gifts to a select group of people this year, and therefore unfortunately these are not for sale (but by all means let us know if you would like this to change in the future). If you haven’t been lucky enough to get one but you’re here anyway, welcome – I hope you still find it an interesting project.

The tree’s main construction is a 2-layer, 1mm thick circuit board. The entire design had to be made using the normal circuit board manufacturing techniques but still look presentable, for example some of the ‘baubles’ on the front are made using silkscreen, others have the soldermask removed to expose the (rather pleasing) gold plated finish.

The front side has 18 APA102 (similar to WS2812B) addressable RGB LEDs, and on the back you’ll find an ATTiny167 8-bit microcontroller, USB-C connector, and two buttons – RESET and MODE. By default the tree will run the FastLED library demo reel program and cycle through some patterns – the MODE button isn’t implemented in the demo (an exercise for the reader perhaps 🙂 ).

In other news, Elimo recently turned three years old! Happy birthday to us, and Merry Christmas to you!

-Simon R-M


  • Dimensions (HxWxD): 100mm x 84mm x 7mm
  • Power: 5V @ 500mA (USB Type C)
  • LEDs: APA102-2020-256-6 (Datasheet)
  • Microcontroller: ATTiny167 (Datasheet)
  • Schematics: (PDF)
  • Gerbers: (Zip)
  • Demo Arduino sketch: (.ino sketch)

Images: Imgur Link

Programming Instructions:

  • Install Arduino IDE: External link
  • Install ATTinyCore (via Arduino IDE boards manager): External link
  • Install Micronucleus driver: External link
  • After installing, change the board type in the Arduino IDE to ATTinyCore ATTiny167, and check that the settings in the tools menu all match the image below:

Now you can write your own Arduino sketches and upload them to the tree via the USB-C port. (Note: The USB data pins are only connected to one side of the USB-C, so if it doesn’t work, flip the connector over.)