Skip to content


Folders and files

Last commit message
Last commit date

Latest commit



46 Commits

Repository files navigation


Pinachtsbaum Icon

Get the most out of your 3D Xmas Tree.

3D Xmas Tree


  • Easy, transparent & automatic installation process
  • Mappings: Access each LED by the pcb-number, by height, quarter & side
  • Simple on / off
  • Illuminate with delay, auto-off
  • Dim over time, dim from any value to any value, auto-reversible
  • Ping a random LED, fill tree in random order
  • Blinking: Interval, Speed
  • Swirl: Speed, chain length
  • Key press listener
  • Random, Random for Beat (BPM)
  • Increase, decrease brightness
  • Ambient Glow
  • Advent-Calendar illuminates one LED for each day of December
  • Network access using a reworked Strinder implementation

Getting Started


This repository will provide everything you need to run neat looking effects on your tree in no time. Runs on any raspberry pi and Linux based OS. Just follow the instructions:


Depending on the system installed on your Raspberry Pi, it may not have git preinstalled. We start by assuring that git is available:

sudo apt-get install git

Now we clone this project:

git clone

Run the file:


(We use bash instead of sh because we require some bash functionality)


For a little demo execute the file:


(You may have to run this as root for GPIO access):

sudo python

Edit with your favourite editor:


Run via Network

  1. Start the server on your Raspberry:
sudo python Strinder/
  1. Clone this project onto your controlling machine
  2. Open Strinder/ and replace the host ip address with your pi's:
HOST = ""        # Insert HOST IP / name here
  1. Now you can send commands to the server like this:
python Strinder/ "YOUR COMMAND"

Predefined Commands:

  • STOP_SERVER - Stops Server
  • BREAK_LOOP - Breaks loops running on background thread within the tree
  • ON - Switches every LED on
  • OFF - Switches every LED off
  • FLUSH - Runs a top-down swirl, leaving the tree off
  • AMBIENT_GLOW - Starts ambient glow (Stop using BREAK_LOOP)
  • PING - Pings a random LED for 0.2 seconds
  • ADVENT - Illuminates one LED for each day of December (Stop using BREAK_LOOP)
  • ADD_RANDOM - Illuminate random LED until the tree is filled

You can write your own commands! Take a look inside the Strinder/ implementation

Built With

  • Vim - Editor / IDE
  • Git - Version Control
  • Tmux - Terminal Multiplexer (Godsend when it comes to ssh-ing into the Pi)



This project is licensed under the Beerware License - see the LICENSE file for details


The framework and code is provided as-is, but if you need help or have suggestions, you can contact me anytime at

I'd like to hear from you

If you come up with some neat patterns for your tree, feel free to share them with me. :)


Get the most out of your Raspberry-Pi xmas tree pcb...







No releases published


No packages published