2D Xmas Tree

ein kleiner Weihnachtsbaum den man als Weihnachtsdekoration aufhängen oder aufstellen kann.

20 LED´s ein ATtiny25 und Batterien, trotzdem ist es insgesamt nur 1,6mm dick, gleich wie die Platine.

Aufgebauter 2D xmas tree

Der Trick ist die Bauteile innerhalb der Platine anzuordnen. Die Kontakte werden durch Castellation gemacht.

Dabei wird ein Via zur hälfte aufgerfräst, auf das freigelegte Kupfer wird das Bauteil gelötet.

Meistens ist Castellation am Rand der Platine zu finden, ein bekanntes Beispiel dafür ist der ESP-12 ESP8266.

Hier werden innerhalb der Platine Löcher gefräst um die einzelnen Bauteile aufzunehmen.

Castellation, leer Castellation mit Bauteil

Charlieplexing

Der ATtiny25 hat nur wenig IO Pins, um damit 20 LED´s zu betreiben werden sie mit Charlieplexing angesteuert.

Dabei wird ausgenutzt das die AVR IO Tristate fähig ist, so kann können mit 5 IO Pins 20 LED´s betrieben werden.

Schaltplan auf Github

Der Nachteil ist das die LED´s nur einzeln betrieben werden, bei 20 LED´s ergibt das 1/20 der Helligkeit!

PCB Art

Die Platine selbst nutzt mehrere Layer um das Bild eines verschneiten Weihnachtbaums wiederzugeben.

Dazu wird in Inkscape das SVG Bild aus KiCad geladen und erweitert, dies dann in KiCad in eigene Footprints gemacht.

Damit können insgesamt  6 verschiedene Farben erzeugt werden: Hackaday PCB Farben

Programmierung

um die LED´s einfacher auszuwählen gibt es eine grafische Oberfläche auf Github: https://designer2k2.github.io/2d-xmas-tree/

Die Oberfläche basiert auf einem exportierten SVG aus KiCad, dieses ist in Inkscape vereinfacht worden. Es wird mittels Javascript und Raphael visualisiert, als Framework kommt Bootstrap zum Einsatz.

Der ATtiny25 wird über ISP Programmiert, das kann mittels eines Arduinos oder eines ISP Programmers gemacht werden:

ATtiny ISP Programming

Der gesamte Code, KiCad Dateien sowie eine Anleitung sind auf Github zu finden: https://github.com/designer2k2/2d-xmas-tree

Comments powered by CComment