HowTo: pxlBlck – pxlDigit_clock mit dem pxlDigit PCB aufbauen

Die Idee zum pxlDigit_PCB ist mir beim Aufbau des pxlDigit (Artikel hier: https://nerdiy.de/howto-elektronik-sieben-segment-ziffer-pxldigit-aus-ws2812-leds-bauen/) gekommen.

Dort wird das pxlDigit aus einzelnen WS2812-LED-Segmenten aufgebaut. Dazu müssen die LEDs zuerst in das 3D gedruckte Gehäuse eingeklebt und dann im Gehäuse miteinander verlötet werden. Besonders dieser Schritt ist aufgrund des mangelnden Platzes gar nicht so leicht. :/

Deswegen habe ich das pxlDigit_PCB entworfen. Darauf können die LEDs, der ESP8285 und die restliche Elektronik installiert werden. So kann man erst die gesamte Platine aufbauen, testen und programmieren und dann in das 3D gedruckte Gehäuse des pxlDigit bzw. der pxlDigit_clock einsetzen.

Dank des integrierten USB-C-Anschluss kann das pxlDigit auch direkt mit Strom versorgt und falls notwendig die Firmware programmiert werden.

Zusätzlich können auf dem PCB die folgenden (optionalen) Komponenten verbaut werden:

  • BME280 Klima Sensor
  • TSL2591 Helligkeitssensor
  • MPR121 Touchsensor für bis zu 12 Touch-Elektroden

Damit das pxlDigit PCB richtig wirkt sollte es in das 3D gedruckte Gehäuse eingebaut werden. So wird das Licht der LEDs besser verteilt und die einzelnen Ziffern lassen sich leicht zu einem größeren Display kombinieren. So könnt Ihr die Ziffern nutzen um zum Beispiel einen Follower-Counter, eine Spielstands-Anzeige oder auch eine Uhr zu bauen.

Für den Aufbau der Uhr werden vier Ziffern benötigt, welche dann auf eine 3D gedruckte Basis montiert werden. So lässt sich die aktuelle Stunden- und Minutenzahl anzeigen.

Natürlich gibt es noch weitere Möglichkeiten das pxlDigit_PCB als Anzeige zu nutzen. Die im folgenden Artikel gezeigte pxlDigit_clock ist ein erstes Beispiel. 🙂

Der Aufbau der Uhr „pxlBlck_digitClock“ ist im folgenden Artikel beschrieben.


Sicherheitshinweise

Ich weiß die folgenden Hinweise sind immer irgendwie lästig und wirken unnötig. Aber leider haben schon viele Menschen die es "besser" wussten aus Leichtsinnigkeit Augen, Finger oder anderes verloren bzw. sich verletzt. Im Vergleich dazu ist ein Datenverlust fast nicht der Rede Wert, aber auch diese können echt ärgerlich sein. Deswegen nehmt Euch bitte fünf Minuten Zeit um die Sicherheitshinweise zu lesen. Denn auch das coolste Projekt ist keine Verletzung oder anderen Ärger wert.
https://www.nerdiy.de/sicherheitshinweise/

Affiliatelinks/Werbelinks

Die hier in aufgeführten Links zu Online-Shops sind sogenannte Affiliate-Links. Wenn Du auf so einen Affiliate-Link klickst und über diesen Link einkaufst, bekommt Nerdiy.de von dem betreffenden Online-Shop oder Anbieter eine Provision. Für Dich verändert sich der Preis nicht. Falls Du Deine Einkäufe über diese Links tätigst unterstützt Du Nerdiy.de dabei auch in Zukunft weitere nützliche Projekte anbieten zu können. 🙂 


Voraussetzungen

Für den Aufbau müsst ihr SMD Lötaufgaben bewältigen. Die folgenden Artikel enthalten Tipps dazu.

Required tools:

QuantityItemLink
1xLötkolbenBei Amazon kaufen
1xUSB-LötkolbenBei Amazon kaufen
1xDritte-HandBei Amazon kaufen
1xLötspitzenreinigerBei Amazon kaufen
1xHeißklebepistoleBei Amazon kaufen
1xSLA 3D-DruckerBei Amazon kaufen
1xM2 Innen-GewindeschneiderBei Amazon kaufen
1xM3 Innen-GewindeschneiderBei Amazon kaufen
1xM8 Innen-GewindeschneiderBei Amazon kaufen
1xM8 Außen-GewindeschneiderBei Amazon kaufen
1xTorx SchraubendreherBei Amazon kaufen

Benötigtes Material:

QuantityItemLink
1xM2x6 MadenschraubeBei Amazon kaufen
6xM2x6 SenkkopfschraubeBei Amazon kaufen
3xM3x6 MadenschraubeBei Amazon kaufen
1xM3x50 Senkkopfschraube Bei Amazon kaufen
6xM2 Gewindeeinsatz Bei Amazon kaufen
3xM3 Gewindeeinsatz Bei Amazon kaufen
3xZylindermagnet 5x2mm Bei Amazon kaufen
1xZylindermagnet 10x5mmhttps://www.supermagnete.de/scheibenmagnete-neodym/scheibenmagnet-10mm-5mm_S-10-05-DN
1x623 Kugellager Bei Amazon kaufen
2x608 Kugellager Bei Amazon kaufen
1xJST SH Anschlusskabel Bei Amazon kaufen
1xELEGOO ABS-Like 3D Drucker Resin Bei Amazon kaufen
1xKeber Bei Amazon kaufen
1x10x2mm Alurohr Bei Amazon kaufen
1xLötzinn Bei Amazon kaufen
1xUSB Netzteil Bei Amazon kaufen
1xUSB-C Kabel Bei Amazon kaufen

Die benötigten Komponenten zur Bestückung des pxlDigit PCBs findet Ihr in der folgenden Datei.

Falls es aktuellere Versionen der pxlDigit Platine gibt, findet Ihr die verfügbaren Versionen in dem Git Repository unter:


Der Aufbau der pxlDigit Platine

In der Vergangenheit habe ich an dieser Stelle oft einzelne Bilder eingefügt mit denen gezeigt wurde welche Komponenten wo auf dem PCB verlötet werden müssen.

Ein noch besserer Weg um eine Übersicht darüber zu bekommen welche Komponenten an welcher Stelle auf das PCB gehören seht Ihr im folgenden Absatz. Dank der Arbeit von Open Scope Project kann man nun nämlich sehr hilfreiche HTML Dateien generieren in denen man direkt sehen kann welche Komponenten wo auf dem PCB verbaut werden müssen.

Die Übersicht für das pxlDigit_PCB seht ihr hier: pxlDigit_PCB

Die jeweils aktuelle Datei findet Ihr aber auch im GIT-Repository unter folgendem Link:
https://github.com/Nerdiyde/pxlDigit_PCB/blob/main/PCB/pxlDigit_PCB_v1.2_bom.html
(Beachtet dabei bitte, dass Ihr die HTML-Datei herunterladen müsst um sie anzuzeigen. Direkt aus dem GIT-Repository ist dies nicht möglich.)

PCB-Fertigung: Alle infos die Ihr zur Fertigung der PCBs braucht, könnt Ihr hier finden:


Die benötigten Materialien zum Aufbau der pxlDigit_clock

Im folgenden Abschnitt sind die benötigten Teile kurz beschrieben.

Die benötigten STL Dateien zum 3D Drucken der Gehäuseteile findet Ihr im GIT Repository unter folgendem Link.

Wie Ihr Dateien aus einem GIT Repository herunterladen könnt ist in folgendem Artikel beschrieben.

Für den Aufbau benötigt Ihr dann die folgenden Teile.

  • 3x aufgebaute „slave“ pxlDigit PCB
  • 1x aufgebautes „master“ pxlDigit PCB
  • 4x 3D gedrucktes Gehäuse
  • 3D gedruckte Basis
  • 28x 3D gedruckter Diffusor aus transparentem Filament
  • 8x M3x8 Zylinderkopfschraube
  • USB-Breakoutboard
  • Wifi Patch Antenne mit UFL Anschluss
  • 3x 25cm Leitung 0.2mm² in (z.B.) Rot
  • 3x 25cm Leitung 0.2mm² in (z.B.) Schwarz
  • 3x 25cm Leitung 0.2mm² in (z.B.) Grün
  • 15cm Leitung 0.2mm² in (z.B.) Rot
  • 15cm Leitung 0.2mm² in (z.B.) Schwarz

Im folgenden seht Ihr ein paar Nahaufnahmen der benötigten Teile.


Die pxlDigit Platinen für den Einbau vorbereiten

Als erstes solltet Ihr die vorbereiteten Platinen mit den notwendigen Anschlüssen und Leitungen verbinden.

Dazu benötigt Ihr die vier aufgebauten pxlDigit Platinen. (3x Slave Version, 1x Master Version)

Dabei sollte eine Platine mit USB-C Anschluss, ESP und der zur Programmierung benötigten Elektronik ausgestattet sein. Die drei restlichen Platinen müssen nur mit den LEDs bzw. den dafür notwendigen Komponenten bestückt sein.

Weiterhin benötigt Ihr die vorbereiteten Leitungen.

  • 3x 25cm Leitung 0.2mm² in (z.B.) Rot
  • 3x 25cm Leitung 0.2mm² in (z.B.) Schwarz
  • 3x 25cm Leitung 0.2mm² in (z.B.) Grün
  • 15cm Leitung 0.2mm² in (z.B.) Rot
  • 15cm Leitung 0.2mm² in (z.B.) Schwarz

Verzinnt dann die Anschlusspads auf dem pxlDigit PCB…

… mit etwas Lötzinn.

Außerdem solltet Ihr auch die Leitungen vorbereiten indem Ihr die Leitungsenden abisoliert…

… und mit etwas Lötzinn verzinnt.

Dann könnt Ihr die Leitungen wie abgebildet…

… mit dem pxlDigit PCB verlöten.

Wiederholt dies für alle „slave“ PCBs (PCBs auf denen nur die LEDs bestückt sind).

Das PCB welches mit den LEDs und der zum Betrieb notwendigen Elektronik (ESP & Co) bestückt ist (Master Version) solltet Ihr dann noch mit den übrigen beiden Leitungen verlöten.

Diese beiden Leitungen werden nur an die Kontakte

  • GND
  • 5V

angeschlossen.


Die Gehäuseteile vorbereiten

Damit Ihr die vorbereiteten PCBs in die Gehäuseteile einbauen könnt, solltet Ihr nun die Gehäuseteile vorbereiten.

Test

Dazu benötigt Ihr

  • 4x 3D gedruckten Platinenhalterungen
  • die 3D gedruckte Basis
  • 8x M3x8 Zylinderkopfschrauben

Eine der Platinenhalterungen solltet Ihr zunächst etwas bearbeiten. So passen später neben dem USB-C Anschluss auch die Anschlussleitungen durch die gezeigte Öffnung.

So könnte die fertig bearbeitete Platinenhalterung aussehen.

Nun solltet Ihr jeweils zwei M3x8 Zylinderkopfschrauben wie gezeigt durch die Basis stecken.

Um dies zu erleichtern könnt Ihr die Platinenhalterung als Ablage nutzen.

Verschraubt die Basis dann wie gezeigt mit der Platinenhalterung.

Weitere Ansicht.

Weitere Ansicht.

Wiederholt diesen Schritt für alle vier Platinenhalterungen.

Weitere Ansicht.


Die vorbereiteten Platinen in das Gehäuse einbauen

Nun könnt Ihr die Platinen in die Halterungen einbauen.

Dazu benötigt Ihr die vorbereiteten pxlDigit PCBs und die vorbereitete Halterung.

Setzt das erste (slave) PCB an der Ziffer rechts außen an und fädelt die Leitungen wie gezeigt durch die Öffnungen im Gehäuse.

Weitere Ansicht.

Weitere Ansicht.

Die Datenleitung welche auf dem pxlDigit PCB mit dem LIN Pin verbunden ist (in diesem Beispiel die rosa Leitung) solltet Ihr dann wie gezeigt durch die Öffnung des nächsten PCBs fädeln.

Weitere Ansicht.

Dann könnt Ihr das PCB wie gezeigt in das Gehäuse einlegen.

Wiederholt die vorherigen Schritte nun für das nächste pxlDigit PCB.

Weitere Ansicht.

Nachdem Ihr die Leitungen wie zuvor durch die Öffnungen gefädelt habt, könnt Ihr die Datenleitung des vorherigen PCBs mit dem LOUT Pin des aktuellen PCBs verlöten.

Weitere Ansicht.

Wiederholt dies dann nochmal bis Ihr alle slave PCBs und das Master PCB in Position habt.

Beim Master PCB wird natürlich nur der LOUT Pin mit der Datenleitung des vorherigen PCBs verbunden.

Weitere Ansicht.

Bevor Ihr das Master PCB in die Halterung einsetzt, solltet Ihr nun noch die WiFi Antenne anschließen.

Führt dazu die Anschlussleitung der Antenne durch die Öffnung in der Halterung.

Der UFL Anschluss der Antenne sollte dann…

… auf dem UFL Sockel auf dem master PCB angeschlossen werden.

Die Antenne könnt Ihr dann wie gezeigt …

… in den Sockel einkleben.

Nun könnt Ihr bereits alle PCBs in das Gehäuse einlegen.

An dieser Stelle empfehle ich den Aufbau bereits zu testen. Ihr könnt also bereits jetzt die Firmware aufspielen und testen, dass alle LEDs korrekt angesteuert werden.

Damit die PCBs sicher in der Halterung fixiert sind…

… könnt Ihr sie bei Bedarf mit einem Tropfen Heißkleber fixieren.

Der Aktuelle Aufbau solltet nun in etwa so aussehen.

An dieser Stelle könnt Ihr die Stromversorgungsleitungen wie gezeigt zusammenfassen.

Fädelt dann alle Leitungen auf die Seite des Master PCBs.

Um diese Leitungen dann an das USB Breakout anzuschließen, solltet Ihr zunächst die Kontakte

  • GND
  • VBUS

mit etwas Lötzinn verzinnen.

Dann könnt Ihr die Stromversorgungsleitungen wie gezeigt…

… mit dem USB Breakoutboard verlöten.

Achtet dabei darauf, dass keine Kurzschlüsse zu den benachbarten Kontakten entstehen.

Das USB Breakout Board könnt Ihr dann…

… mit etwas Heißkleber…

.. wie abgebildet in die Basis einkleben.

Weitere Ansicht.

Weitere Ansicht.

Weitere Ansicht.

An dieser Stelle solltet Ihr auch einen kleinen Funktionstest machen. Die pxlDigit_clock sollte nun über den USB Anschluss des Breakout Boards mit Energie versorgt werden können.


Die Diffusor einsetzen

Das Licht der LEDs in den einzelnen Segmenten wirkt erst dann wirklich gut, wenn es gleichmäßig verteilt wird. Dies erreicht man sehr gut indem Diffusor in das Gehäuse eingesetzt werden.

Dazu benötigt Ihr die vorbereitete pxlDigit_clock und 28 3D gedruckte Diffusorteile.

Das Einsetzen funktioniert sehr einfach, wenn Ihr die Basis des Gehäuses wie gezeigt über eine Tischkannte ragen lasst.

Dann könnt Ihr die Diffusor wie gezeigt einlegen. Falls diese zu locker im Gehäuse liegen könnt Ihr sie auch mit einem kleinen Tropfen Kleber im Gehäuse verkleben.

Sobald Ihr alle Diffusor eingesetzt habt, sollte Euer Aufbau so aussehen.

Weitere Ansicht.

Weitere Ansicht.

Im Betrieb sollte sich dank der Diffusor dann eine gleichmäßige Lichtverteilung ergeben.


Firmware programmieren

Ich arbeite aktuell noch an einer einfachen Arduino Bibliothek zur Ansteuerung der pxlDigits. Bis diese fertig ist könnt Ihr aber auch die pxlBlck Firmware verwenden. Diese unterstützt die LED-Matrix-Form des pxlDigit bereits und bietet zudem nützliche Funktionen zur Automatisierung und Ansteuerung über WiFi oder die serielle Schnittstelle. Allgemeine Infos zum pxlBlck-Plugin findet ihr auch hier:

Informationen zur Installation des pxlBlck Plugins findet ihr hier:


pxlBlck-Plugin konfigurieren

Nach der Installation der Firmware müsst Ihr das Plugin noch korrekt konfigurieren. Infos dazu findet Ihr ebenfalls in dem Artikel pxlBlck – Das pxlBlck-Plugin installieren und konfigurieren.

Als zusätzliche Orientierung könnt Ihr aber auch die Einstellungen aus dem hier gezeigten Screenshot übernehmen.


pxlBlck-Usecases

Unter dem Tag „pxlBlckUsecase“ sind Artikel aufgelistet in denen Ihr Beispiele zur Verwendung findet. Darin ist auch erklärt wie Ihr Euren pxlBlck entsprechend konfigurieren könnt.


Animationen, Icons und Befehle

Weitere Infos zur Anzeige von Animationen, Icons und zu den möglichen Befehlen mit denen Ihr Euren pxlBlck konfigurieren könnt, findet Ihr auch in den folgenden Artikeln.


Ich hoffe bei euch hat alles wie beschrieben funktioniert. Falls nicht oder ihr Fragen oder Anregungen habt lasst es mich in den Kommentaren bitte wissen. Ich trage dies dann ggf. in den Artikel nach.
Auch Ideen für neue Projekte sind immer gerne willkommen. 🙂

P.S. Viele dieser Projekte - besonders die Hardwareprojekte - kosten viel Zeit und Geld. Natürlich mache ich das weil ich Spaß daran habe, aber wenn Du es cool findest, dass ich die Infos dazu mit Euch teile, würde ich mich über eine kleine Spende an die Kaffeekasse freuen. 🙂

Buy Me a Coffee at ko-fi.com

Kommentar hinterlassen

Deine E-Mail-Adresse wird nicht veröffentlicht.