MobaLEDLIb – Erfahrungen eines Nicht-Elektronikers

Grundsätzliches

Schon lange war ich auf der Suche nach günstigen DCC Funktionsdecodern. Auch sollte die Hausbeleuchtung nicht mehr konstant langweilig vor sich hin leuchten, sondern ich wollte – wie in einem realen Haus – die Lichter zu unterschiedlichen Zeiten ein- und ausschalten.

Im Stummiforum 1https://www.stummiforum.de/viewtopic.php?f=7&hilit=Mobaledlib&t=165060&sid=b21bc5d7bf69acc025b3cb75fb13eff3 bin ich auf die Entwicklung der MobaLEDLib gestoßen. Hierbei werden günstige Arduinos mit einer selbst entwickelten Schaltung genutzt. Ein eigenes “Busssystem” ermöglicht die Nutzung von LEDs und RGB-LEDs auf der Anlage. Bei RGB LEDs handelt es sich um einen winzig kleinen Prozessor der mehrere Kleinst-LED auf dem LED Chip in allen Farben leuchten lässt und so auch vielfältige Lichteffekte wie Feuerschein, Fernseher etc. ermöglicht.

Dieser “Erfahrungsbericht” ersetzt in keinster Weise die vorhandene und sehr gute Dokumentation der MobaLEDLib auf Github und im Stummiforum!

Ich hoffe vielmehr, das sich andere angesprochen fühlen es auch mal auszuprobieren – auch wenn man sich mit Elektronik und Programmierung nicht so auskennt.

Hier mal ein Beispiel eines Hauses in Nächternhausen welches mit der MobaLEDLib angesteuert wird:

Haus welches mit MobaLEDLib beleuchtet wurde

Vielleicht weiß nicht jeder was ein Arduino ist, deshalb hier mal ein wenig Theorie darüber wie das Gesamtsystem aufgebaut ist:

Die Hauptplatine ist mit zwei Arduinos bestückt. Die Platine erhält man über die Entwickler der MobaLEDLib. Grundsätzlich gibt es folgende Basiselemente:

  • Es sind keine Programmierkenntnisse erforderlich – man wählt einfach ein Szenario aus, vielleicht noch die Helligkeit und dann wechseln die Lichteffekte nach dem Zufallsprinzip und nach eingestellter maximaler Dauer und den maximal gleichzeitig leuchtenden LEDs.
  • Die Hauptplatine 2(genauer: einer der Arduinos auf der Platine) wird mit einem USB Kabel mit dem PC verbunden. Die PC Verbindung ist nur einmal erforderlich zur Programmierung – und natürlich wenn es Änderungen gibt weil ein neues Haus, neue LED etc. mit zu versorgen sind.
  • In jedem Haus lässt sich das Licht über einen Befehl von der Zentrale aus Ein- oder Ausschalten. An der Hauptplatine wird auch das Digitalsignal angelegt (sowohl DCC, als auch CAN und Selectrix sind hier möglich).
  • Die Hauptplatine hat über ein Flachbandkabel Verbindung zu Verteilerplatinen – diese können sequentiell hintereinander angeordnet werden oder auch sternförmig. Die Verteilerplatinen sind mit dem gleichen Flachbandkabel untereinander verbunden mit dem auch die Hauptplatine Verbindung zum ersten Verteiler hat.
  • An den Verteilern(dieses sind eigenständige Platinen) können “beliebig” viele LEDs an einen Steckplatz der Verteilerplatine angeschlossen werden. Das kann auch ein weiterer Verteiler sein – man muss nur darauf achten, dass der Gesamtstrom nicht größer als 1-5 -2A wird (Eine LED benötigt 0.06 A bei voller Helligkeit.3 vielen Dank an den Entwickler, Hardi, für die Detaillierung!
  • Es sind auch gesonderte Schaltungen möglich – aber ich konzentriere mich hier im Bericht erst mal auf das Thema Hausbeleuchtung. Die RGB LED sind ebenfalls in Reihe miteinander verbunden.
  • Die Stromversorgung erfolgt im normalen Betrieb über die Verteilerplatinen. Dazu reichen kleine 5V, 2A Stromversorgungen wie sie auch als Ladegeräte für Handys verwendet werden. Zur Programmierung ist die externe Stromversorgung nicht erforderlich.
  • Die RGB LED können direkt verlötet werden – es gibt aber auch hier diverse Varianten.

Alles oben genannte bezieht sich auf die Häuserbeleuchtung. Das ganze Projekt ist so flexibel, das auch Servos oder einzelne Straßenlampen damit angesteuert werden können.

Materialien und Hilfsmittel

Meine Elektronikkenntnisse sind leider ziemlich gering – ich kann noch einen Kondensator von einem Widerstand unterscheiden und weiß bei einer LED wo der Plus- und Minuspol ist. Softwaretechnisch kenne ich mich etwas besser aus – bin aber auch kein Programmierer.

Meine Werkstatt ist daher auch nicht mit den Spezialwerkzeugen eines Elektronikers ausgestattet – für den Bau und die Bestückung von Platinen benötigte ich folgende Hilfsmittel:

  • Lötkolben – hier reicht ein einfaches Modell – wichtig ist nur eine dünne Lötspitze
  • Leselupe – nicht unbedingt erforderlich, aber sehr hilfreich
  • Decoupiersäge oder kleine Kreissäge – notfalls tut es aber auch eine Laubsäge
  • dünnes Lötzinn
  • einfaches Messgerät
  • Laptop oder PC mit Windows Betriebssystem

Du brauchst weder Elektronik- noch Programmierkenntnisse – normales Arbeiten mit dem Lötkolben und das Wissen, wie man eine neue Software installiert, reichen vollständig aus!

Ganz am Anfang

Ganz am Anfang sollte man sich mal als erstes die detaillierte erste Seite des Threads auf dem Stummiforum durchlesen 4man findet diese unter https://www.stummiforum.de/viewtopic.php?f=7&hilit=Mobaledlib&t=165060&sid=b21bc5d7bf69acc025b3cb75fb13eff3 – leider wieder mal ohne gültiges Zertifikat weshalb ich nicht direkt darauf verlinken kann.

Hat man die erste Seite durch empfehle ich als nächstes das Video des MobaLEDLib Stammtisches – und zwar das erste Video welches sich auf Youtube findet. Es erklärt sehr detailliert den Einstieg in die Lösung.

Danach dann die Dokumentation auf Github anschauen – zumindest mal überfliegen bevor es ans Bestellen geht. Überlegt euch auch dabei was ihr eigentlich machen wollt. Geht es nur um 4 Häuser die alle nebeneinander stehen – oder 4 Häuser die quer über die Anlage verteilt sind? Oder doch um eine ganze Stadt? Für den Anfang reicht m.E. die Hauptplatine und 2-3 Verteilerplatinen – aber das muß jeder für seinen eigenen Anwendungsfall entscheiden

Bestellung

Auf Github gibt es im Rahmen der Dokumentation auch einen Warenkorb für Reichelt – ich würde aber in die aktuelle Dokumentation schauen und den dortigen Link für den Warenkorb verwenden! . Man muss den Link einfach öffnen und kann dann alle Elemente in den eigenen Warenkorb übernehmen.

Das einzige was im Warenkorb fehlt sind die RGB LEDs WS2812 und die Arduinos – und hier bin ich prompt reingefallen weil es unter dem Namen WS2812 unendlich viele Varianten gibt – und ich hatte natürlich eine bestellt bei der alle RGB LEDs auf einer einzigen Platine fest verdrahtet waren 👿

Zum Glück hatte ich parallel auch WS2812 in China bestellt – 100 Stück für 2 US $ – da kann man nicht meckern. Es handelt sich um WS2812 mit dieser Bezeichnung 5(die Links sind leider schnell mal wieder andere): “WS2812B LED chip With Heatsink (10mm*3mm) DC5V 5050 SMD RGB WS2812 IC Chips”. Wichtig dabei das man die WS2812 herausbrechen kann und einzeln sehen die dann so aus:

Bitte aber erst bestellen wenn die Platine geliefert wurde – sonst geht es euch wie mir und ihr bekommt eine neuere Platinenversion (deren Bestückung zum Glück eine Untermenge der alten Version war).

Die Hauptplatine (100DE Hauptplatine Grundversion) hatte ich für DCC bestellt – die folgenden Beschreibungen beziehen sich daher auch auf die DCC Version.

Die Platine kommt mit einem kleinen Verteiler der Platz für 4 getrennt ansteuerbare Häuser bietet. Ich hatte gleich auch die Verteilerplatine mit bestellt, da ich vermeintlich noch die alte Platine bestellt hatte (die war in grün – die neue Platine ist in schwarz). Die alte Platine hatte keine Verteilerplatine mit integriert.

Die Arduinos kann man ebenfalls in China bestellen – angesichts des Preises würde ich direkt einige mehr bestellen als man anfangs benötigt. Es stimmt schon: Das ganze Projekt macht Lust auf mehr 🙂 Es gibt viele Arduinos – für unser Projekt sollte man unbedingt die Arduino Nano auswählen

Für den Anschluss an den PC (und das schreiben der Konfiguration vom PC in die Arduinos) benötigt ihr noch ein USB Kabel. Auf der Arduinoseite muß dieses einen Mini-USB Anschluß haben (nicht den neuen Micro-USB!). Also eine Seite Mini-USB – andere Seite USB.

Dokumentation

Die Dokumentation ist sehr detailliert und man sollte sich zunächst auf die Hauptplatine konzentrieren und diese auch erst testen.

Achtung – es gibt zwar sehr gute aber auch sehr viel Dokumentation. Ich empfehle als Maß aller Dinge die Dokumentation auf Github zu verwenden. Ich dokumentiere hier generell keine Links – es sind einfach zu viele – , aber unter der Suche: “inurl:github Mobaledlib solltet ihr fündig werden!

Speichert nicht nur die Dokumentation, sondern auch alle Verweise in der Dokumentation (Links) vorher lokal ab.

Ladet die Dokumentation von Github erst wenn ihr die Platinen erhalten habt und wisst um welche Platinenversion es sich handelt.

Wichtig ist auch, das alles zur aktuellen Version passt! Leider sagten mir manche der Informationen absolut gar nichts. Zum Glück wusste Google was ein LDR ist – nur woher bitte sollte ich wissen welchen LDR ich bestellt hatte? In der Bestellliste taucht kein LDR auf? Ich habe einfach mal den Standardwert für den LDR Widerstand und gut war.6Soweit ich es bisher verstehe ist irgendwo auch die Option einen Dämmerungsschalter einzusetzen – dafür benötigt man besagten LDR. Anmerkung vom 12.12.20: Inzwischen ist der LDR auch im Wiki zu finden – dort findet sich auch eine Liste welcher Widerstand zu einem LDR passt.7(ich weiss nur trotzdem nicht welchen LDR ich verwende – ich wüsste nicht einmal das einer auf dem Arduino drauf ist…)

Platinenbestückung

Ich war schon überrascht, als ich erfahren habe, das ich die Platine erst noch aussägen muß. Nicht das ich grundsätzlich damit ein Problem habe – bei mir half da eine Dekoupiersäge. Eine kleine Trennscheibe die am Stahllineal vorbei geführt wird tut es aber auch. Problematisch war nur, das die Trennlinie nur sehr schmal aufgezeichnet ist – hier wäre etwas mehr klare Erkennung der Trennlinie wünschenswert gewesen. Ich dachte dauernd ich würde hier die falsche Leiterbahn durchsägen….

Die Bestückung selbst ist sehr gut in der Dokumentation beschrieben.

Was dort nicht steht und vielleicht die Nicht-Elektroniker unter euch nicht wissen:

Auf jeden Fall die Einbaurichtung von Kondensatoren, ICs und LED beachten!

Ich gehe mal davon aus, das ihr wisst, das z.B. bei LED das längere Beinchen immer der Pluspol ist – was ich nicht wusste, war die Einbaurichtung von RGB LEDs – aber auch die sind – ähnlich wie IC – mit einer Markierung versehen:

Hauptplatine

Die Platine durchzutrennen war zunächst gar nicht so einfach – und ich hatte zunächst auch keinen blassen Schimmer was es mit den übrig gebliebenen Teilen auf sich hat.

Vielleicht hätte ich mir aber auch vorher mal alle Videos und Beiträge im Stummiforum durchlesen sollen! Jedenfalls sah das dann bei mir so aus wie nebenstehend – man braucht aber nicht unbedingt eine Dekoupiersäge. Eine am Stahllineal geführte Trennscheibe sollte es auch tun.

Nicht gleich mit dem Löten der Platine loslegen. Schaut euch erst einmal die Videos zur Benutzung an – dann wird vieles klarer. Die Videos finden sich ebenfalls im Github Bereich.

Vielleicht an dieser Stelle daher mal eine Übersicht aller bei mir verwendeten Komponenten – das 3D Druckgehäuse braucht es natürlich nicht wirklich (gibt es als STL Datei auch auf github):

Wenn ihr alle Teile der Hauptplatine getrennt habt, so solltet ihr am Schluss folgende Platinen haben:

  • 1 Hauptplatine
  • 6 WS 2812 Mini-Platinen
  • 1 Verteilerplatine

Ich komme nachher noch auf die Teile zu sprechen – am Anfang geht es aber erst einmal nur um die Hauptplatine und den Anschluss mittels USB Kabel an den PC.

Die Bestückung der Hauptplatine sollte keine Probleme bereiten und ist detailliert in der Aufbauanleitung beschrieben. Die Buchsenleisten sollte man wirklich – wie beschrieben – erst einlöten wenn man vorher einen Arduino auf die Leisten steckt. Dann stimmen nämlich die Abstände exakt.

Mini Platinen

Die 6 WS 2812 Mini-Platinen stellten mich anfangs vor ein Rätsel. Wie sollten die denn auf meine WS2812 passen? Die Lösung: Ich hatte WS2812 welche sich bereits auf einer Platine befanden und die zusätzlichen Bauteile bereits mit drauf hatten. Bei den meisten WS2812 ist das aber nicht der Fall – genau dann braucht man die Mini-Platinen. Links sieht man mal meine WS2812 und die Platine für die anderen Typen.

Verteilplatinen

Die “kleine Verteilerplatine” welche sich aus dem Schneiden der Hauptplatine ergibt habe ich selbst nicht mit eingesetzt. Bei der “grossen Verteilplatine” kann man stur nach Anleitung arbeiten – die wieder sehr detailliert beschreibt was zu tun ist.

Allerdings war ich anfangs bei der Bestellung etwas irritiert: Es gibt eine Version mit Bestückung und eine Version ohne Bestückung bei Alf – die Erklärung: Bei der Version mit Bestückung sind nur die Wannenstecker und Pfostenbuchsen mit dabei – daher auch in der Dokumentation den entsprechenden Reichelt-Warenkorb beachten!

Wenn du die Verteilplatinen mit Steckern bestellst, dann denk daran, das du die – wenigen – Reichelt Elemente noch zusätzlich bestellen musst.

Bei einem Punkt bin ich allerdings hier reingefallen: die Lötbrücke!

Hintergrund: Wie in der Dokumentation beschrieben, verwende ich zur Stromversorgung

Stromversorung Mobaledlib Verteilplatinen

ein normales 5V, 2A Ladenetzteil wie es auch für Handys usw. genutzt wird. Tatsächlich nutze ich auch den entsprechenden USB Anschluss (siehe auch oben stehende Übersichtszeichnung). Und entsprechend den Empfehlungen von Hardi wollte ich jede Verteilplatine mit einer eigenen Stromversorgung ausstatten. Deshalb habe ich (vorsichtig) die Lötbrücke J_Power aufgetrennt und siehe da: Es passiert nichts!

Der Grund war schnell gefunden: Das Auftrennen der Lötbrücke führte dazu, das die Verteilerplatine natürlich auch keinen Strom mehr vom PC (über den Arduino-Anschluß) erhielt. Ich brauchte also immer gleich auch die Stromversorgung der Verteilplatine um einen neuen Verbraucher zu programmieren.

Am Anfang – wenn man nur eine Verteilplatine sein eigen nennt – ist es einfacher die Lötbrücke J_Power nicht aufzutrennen. Dann kann man auch vom PC aus den Verbraucher am Schreibtisch programmieren und testen

Beim Auftrennen der Lötbrücke sollte man übrigens entsprechend vorsichtig sein – also nicht gleich mit dem Dremel ran gehen sondern vorsichtig mit einem Cutter arbeiten.

Software

Die Installation der Arduino Software ist auf dem Github detailliert beschrieben – insofern spare ich mir hier alle Details. Allerdings hatte ich auch hier erst mal einige Merkwürdigkeiten:

USB Port ohne Beschreibung

Chinesische Version des Arduino ohne weitere Bezeichnung

Wie man sieht meldet sich mein chinesischer Arduino nicht mit Namen am USB Port – wer mehrere USB Serial Ports am System hat sollte also genauer hinschauen.

Für die Ansteuerung mittels Excel benötigt man natürlich das entsprechende Microsoft-Programm. Das kann man alles installieren auch wenn die Hauptplatine noch nicht fertig ist.

Auf der Hauptplatine befinden sich zwei RGB LEDs. Ich hatte anfangs keinen blassen Schimmer, wofür die 2. RGB LED zuständig war bis mich Hardi darüber aufklärte: “Die zweite WS2812 LED auf der Hauptplatine wird ebenfalls als Heartbea ganz am Ende der Liste konfiguriert. Wenn alle LEDs dazwischen Funktionieren und alle Kabel richtig angeschlossen sind, dann pulsiert diese LED genau so wie die erste LED. Selbst dann wenn keine andere LED auf der Anlage leuchtet (Tag). Mit ihr wird also alles außerhalb der Hauptplatine überprüft.”8Das Wort “Heartbeat” ist für mich als Informatiker allerdings schwer zu verdauen – diente uns doch ein Heartbeat früher dazu um Serversysteme(s.g. Cluster) sich gegenseitig überwachen zu lassen. Letztlich war das nichts anderes als ein Hello auf einen anderen Knoten um zu prüfen ob er noch existiert. Hier dient es dazu um mit dem Heartbeat zu prüfen, ob alles funktioniert.

Überhaupt waren alle Fragen und Probleme sehr schnell geklärt – ich habe teilweise den Entwickler, Hardi, direkt angeschrieben. Aber auch im Stummiforum bekommt man schnell Antwort !

Diese RGB LED auf der Platinne lassen sich in der Exceldatei auch direkt ansteuern über den ersten Eintrag in der Excel bzw. dem letzten Eintrag. Damit kann man dann auch erst mal ausprobieren ob die Hauptplatine funktioniert!

Einbau

Zum Einbau der LED in ein Modellbahnhaus gibt es ebenfalls eine sehr detaillierte Beschreibung und auch diverse Videos im Netz. Ich bin selbst allerdings einen etwas anderen Weg gegangen und habe mir kleine Räume mit dem 3D Drucker gedruckt.

RGB 3d Druck Modul

In Naechternhausen fehlt ja immer noch der Schmalspurbahnhof – Karnsdorf. Dafür braucht es natürlich auch neue Häuser. Mein erstes Versuchsobjekt war ein Geschenk meines Großneffen der von H0 auf Spur N gewechselt ist und noch einige Häuser übrig hatte. Ich glaube es ist von Faller – aber es wurde auch entsprechend ge-“kitbashed” was sich vor allem in der Aufteilung der Türen und der farblichen Nachbearbeitung niederschlägt.

Das obige Bild zeigt ein mehrfach verwendbares, in FreeCad gezeichnetes, Zimmermodul. Auch die Inneneinrichtungen wurden mit dem 3D Drucker gedruckt – das sieht dann so aus:

MobaLEDLib Einbauten mit 3D Druckkästen

Das sieht immerhin etwas aufgeräumter aus als wenn man Pappstücke nimmt – und es gibt auch keine Durchscheinungseffekte.

Die Kästen habe ich jetzt nicht Online gestellt – die Grösse hängt halt doch zu stark vom aktuellen Haus und dem Abstand der Fenster ab. Es sind aber alles einfache Elemente die nur mit einer 10mm Bohrung am oberen Ende für die RGB LED gedruckt werden.

Die Anschlüsse jedes Hauses wurden auf eine Stück Lochrasterplatine aufgelötet die dann wiederum an das 6-adrige Kabel gehen. Das hat den Vorteil, das man diese Kabel auch durch ein normales Bohrloch unter die Anlage führen kann (die 6-poligen Stecker sind dazu etwas zu breit).

Im Ergebnis hier mal eine Nahaufnahme:

MobaLEDLib – Nahaufnahme Fenster

Lasst euch nicht von der Helligkeit blenden – die Helligkeitswerte will ich auf jeden Fall noch reduzieren.

Zusätzliches

Die Beschäftigung mit der MobaLEDLib zeigt Unmengen von Möglichkeiten – Ich bin hier nur auf die Basisfunktion des belebten Hauses eingegangen. 12V Versorgung über die Verteilplatinen, Servosteuerungen, Soundmodule – die Liste der Optionen ist beliebig lang. Ansonsten kann ich nur auf die wirklich sehr gute Dokumentation auf github und den detaillierten Thread im Stummiforum verweisen und ich hoffe dieser Bericht überzeugt auch die Nicht-Elektroniker sich mit dieser günstigen und vielseitigen Lösung zu beschäftigen.

Update: Inzwischen ist dieser Bericht auch auf dem MobaLEDLib Wiki zu finden. Gerade wer weitere Themen sucht wie z.B. Herzstückpolarisierung, Soundmodul, Servoansteuerung und Steuerung einzelner LED ist gut beraten hier nachzuschauen. Hier finden sich auch weitere Anwenderberichte.

Aufrufe: 145