Read the statement by Michael Teeuw here.
Deutsche Anleitung MagicMirror auf RaspberryPi 3
-
Hallo werte Community, schön hier sein zu dürfen…
Seit zwei Tagen versuche ich nun MagicMirror auf den Raspberry zu bekommen und ich muß gestehen, meine Vor- und Englisch Kenntnisse sind leider dafür scheinbar zu wenig, als das mir dieses gelingen mag. Daher dachte ich mir, ich schaue mich hier im Forum mal um und suche nach einer Deutschen Anleitung für mein Problem - komisch ich finde keine Deutsche Anleitung und nun hoffe ich, dass mir die werte Community beim erstellen solch einer Anleitung hilft.
Als Grundvorraussetzung dient natürlich der Raspberry Pi 3, auf einer 8GB Micro SD Karte habe ich mit Etcher das Raspian Stretch Lite Image gezogen und den Raspberry gestartet.
sudo raspi-config ermöglicht mir den Zugriff auf die Einstellungen des Pi und so kann ich dort SSH aktivieren, um alle Eingaben über meinen Computer durchzuführen. Mit Putty kann ich per IP auf den Raspberry zugreifen.
sudo apt-get update gefolgt von sudo apt-get dist-upgrade versetzen Raspian Betriebssystem auf den aktuellen Stand und nun geht es auch schon mit der Installation von MagicMirror los.
Ich habe dazu die Anleitung der MagicMirror Seite verwendet:
~ $ bash -c “$(curl -sL https://raw.githubusercontent.com/MichMich/MagicMirror/master/installers/raspberry.sh)”
Nach beendigung der Installation führt man noch das Update von Magic Mirror aus:
~ $ git pull && npm install
Die Software für den Autostart (PM2) wird während der Installation automatisch mit Installiert, dazu wird man gefragt, ob die Installation durchgeführt werden soll.
Nach sudo reboot startet der Pi erneut…doch leider Startet MagicMirror bei mir nicht!
-
Im Prinzip reicht die Anleitung auf English doch aus und Du hast alles richtig gemacht.
Oder hast Du irgendwelche Fehler die das Script ausgeworfen hat ignoriert?Bin mir nicht sicher ob das Lite image ausreicht, aber wenn das Installer script sauber durchgelaufen ist, sollten auch alle dependencies installiert worden sein.
npm install hast du innerhalb des MagicMirror directories gemacht?Eventuell hast Du beim automatischen Start einen Fehler reingebracht.
mach doch mal per SSH einpm2 restart mirorr.sh
(oder wie auch immer du dein startscript genannt hast.)
Du kannst das dann auch kontrollieren, in dem Du VNC aktivierst und Dich von deinem Rechner remote verbindest
(ggfls. musst Du die ip whitelist in der config anpassen) -
Ich finde die Idee einer deutschen Anleitung gut, jedoch wird (und soll!) die englische immer Priorität haben. Das bedeutet, jemand müsste sich bereiterklären, Änderungen der englischen Anleitung in der deutschen nachzuziehen, denn bekanntlich ist eine falsche Anleitung schlechter als gar keine.
Zu dem konkreten Problem von @35110: ich habe auch den Eindruck, dass Du alles richtig gemacht hast. Ein paar Fragen/Anregungen:
- Startet der Pi denn bei angeschlossenem Monitor in eine grafische Oberfläche?
- Wenn man mit Putty auf den Pi geht muss man i.d.R. die grafische Ausgabe umleiten mit
DISPLAY=:0 npm start
. - Ich habe nicht so gute Erfahrung gemacht mit dem Install-Skript. Im Wesentlichen installiert das Node.js, klont das MM Repository (
git clone https://github.com/MichMich/MagicMirror.git
) und installiert die abhängigen Pakete mitnpm install
. Das kann man auch manuell machen. - Autostart mit PM2 würde ich ganz zum Schluss konfigurieren/verwenden, wenn Du sicher bist, dass alles funktioniert. Ansonsten baust Du Dir eine Komplexität mehr ein und das Debuggen wird schwieriger.
Ciao
-
MagicMirror auf Raspberry Pi 3 (Update)
Ich werde nachfolgend meine Schritte auflisten:
- Raspian Buster 20.06.2019 per Etcher auf eine 8GB Micro SD Karte ziehen
- Micro SD Karte in den RaspberryPi3 stecken und mit Netzteil verbinden
- First Boot…keine Fehlermeldung…Grafische Oberfläche wurde auf dem angeschlossenen Monitor gestartet
Beim ersten Start von Raspian werden die Lokalen Einstellungen abgefragt und scheinbar automatisch in der Raspberry Konfiguration übernommen. Sobald man unter „Country“ – „Germany“ auswählt, werden alle anderen Punkte automatisch angepasst. NEXT
Raspian fordert eine Änderung des Passworts, dieses sollte man sich gut merken, wenn man später per SSH über z.B. Putty auf den Raspberry zugreifen möchte. Der Benutzername „Pi“ wird nicht geändert. NEXT
Raspian sucht nach verfügbaren WLAN Verbindungen, mit dem man sich durch Eingabe des passenden WLAN Schlüssel verbinden kann. Irgendwo habe ich mal gelesen, das es besser ist, wenn man bei den nachfolgenden Punkten – also der Installation von MagicMirror – lieber über LAN verbunden sein soll, damit es keinen Datenverlust und somit Beschädigung der Installation, durch evtl. Verbindungsabbrüche des WLAN kommt. NEXT
Raspian prüft im letzten Schritt nun selbstständig nach Updates und installiert diese. NEXT- LXTerminal öffnen
- sudo raspi-config startet die Raspberry Konfiguration und dort bearbeite ich folgende Punkte:
2 Network Options -> N1 Hostname-> belasse ich wie vorgegeben auf raspberrypi
2 Network Options -> N3 Network interface names -> OK
4 Localisation Options -> I1 Change Local -> de-DE.UTF-8 UTF-8 auswählen
4 Localisation Options ->I2 Change Timezone -> Europe -> Berlin
5 Interface Options -> P2 SSH -> aktivieren
7 Advanced Option -> A7 GL Driver -> G1 GL (Full KMS)
MagicMirror 2.4.1 verfügt/unterstützt gemäß MagicMirror „Electron“ und um dies nutzen zu können, muß man gemäß Wiki Anleitung den GL Driver aktivieren
Finish und Reboot
Installation über SSH/Putty
- Netwerkadresse auslessen-dazu oben rechts auf das Netzwerk Symbol mit der Maus gehen
- Putty starten und Netzwerkadresse eingeben und mit Pi verbinden
- Login as: pi password: das zuvor selbst gewählte Passwort
Eigentlich sollte Raspian dank seinem automatischen Update auf dem aktuellen Stand sein, daher verzichte ich diesmal auf die beiden nachfolgenden Befehle.
- sudo apt-get update
- sudo apt-get dist-upgrade und die Abfrage mit J bestätigenMit folgendem Schritt mache ich weiter und installiere die aktuellste Version von Node
- curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash –
- sudo apt-get install -y nodejs
- node –v zeigt die installierte Version an
Nun überspielen wir MagicMirror auf den Pi
- git clone https://github.com/MichMich/MagicMirror
- cd MagicMirror/
- npm install
- DISPLAY=:0 nohup npm start
Ausgabe Konsole: nohup: ignoriere Eingabe und hänge Ausgabe an ‘nohup.out’ an
Auf dem Display des Raspberry wird MagicMirror Please Create a config File angezeigt
-
Variante 1: Auf den Raspberry mit Maus und Tastatur wechseln und dort im Dateimanager (oben Links) den Ordner MagicMirror und dann Config öffnen.
-
Doppel Klick auf die config.js sample und dort die Module anpassen z.B.:
-
Zeile 24: Language: “en” - en auf de ändern
-
Zeile 25: timeFormat: 24 - keine Änderung
-
Zeile 26: units: “metric” - keine Änderung
-
Datei -> Speichern unter -> config.js erstellt die benötigte Config Datei um Magic Mirror auszuführen
-
Variante 2: Über die Putty Konsole folgende Befehle ausführen:
-
cd ~/MagicMirror/config
-
cp config.js.sample config.js
-
nano config.js
-
Änderungen wie oben beschrieben durchführen und mit STRG O und STRG X speichern und beenden
-
Auf dem Raspberry in die Konsole wechseln und dort folgendes eingeben um MagicMirror zu starten:
-
cd MagicMirror
-
npm start
Um MagicMirror aus Putty heraus zu starten (Achtung - MagicMirror wird auf dem an den Raspberry angeschlossenen Display angezeigt und nicht auf der Konsole von Putty) folgende Eingabe in der Puuty Konsole:
- cd MagicMirror
- Display=:0 nohup npm start
Danke für die Anleitung von @pinsdorf wie man Module installiert!
Mein Beispiel dazu ist das Modul MMM-Fuel mit dem ich mir die Tankstellenpreise anzeigen lassen gemäß Anleitung https://github.com/fewieden/MMM-Fuel :
- Die Konsole auf dem Raspberry öffnen und folgende Befehle ausführen:
- cd ~/MagicMirror/modules
- git clone https://github.com/fewieden/MMM-Fuel.git
- cd MMM-Fuel
- npm install
Nach Fertigstellung der Installation die Config.js im Ordner MagicMirror -> Config öffnen
Ich habe das Module "Alert“ gelöscht bzw. wie folgt überschriben:module: “MMM-Fuel“,
position: “bottom_left“,
config: {
api_key: “ den könnt Ihr euch kostenlos auf Tankerkoenig.de generieren “
lat: eure Koordinaten
lng: eure Koordinaten
types: [“diesel“]
radius: 10
}Google Kalender einfügen…
- Einen Account bei Google anlegen oder bei Google anmelden und auf Google Kalender wechseln. Neuen Kalender erstellen und diesen z.B. Familien Kalender benennen. Was früher leider nicht ging, nun aber verfügbar ist, in den Einstellungen des neuerstellten Kalender ganz nach unten scrollen bis zum Punkt Privatadresse im iCal-Format. Diese Adresse kopieren und in die Config.js einfügen.
By the Way…
Kleine Hilfestellung für die Positionierung der Module findet Ihr hier:
https://forum.magicmirror.builders/topic/286/regionsWie versporchen kommt nun die Anleitung um die Compliments zu editieren. Ich habe mich jetzt dabei erstmal nur an den Tageszeiten orientiert. Man kann das aber dank der Original Anleitung (https://github.com/MichMich/MagicMirror/tree/master/modules/default/compliments) auch noch ausschmücken. Hier nun mein Code:
{ module: "compliments", position: "bottom_bar", config: { compliments: { anytime: [ "Text 1" ], morning: [ "Text 2", "Text 3", "Text 4" ], afternoon: [ "Text 5", "Text 6", "Text 7" ], evening: [ "Text 8", "Text 9", "Text 10" ] } } },
Danke euch für euer durchweg positives Feedback!!
Ja natürlich würde die Englische Anleitung genügen, aber ich muß gestehen, dass mein Englisch jetzt scheinbar nicht so gut ist wie gedacht.Ich finde es fast schon schade, dass es keine eigene Deutschsprachige Sektion im Forum gibt, schliesslich sind wir alle keine Natural Language Speaker und es ist oftmals ganz gut, wenn man sich auf Deutsch mit anderen im Forum austauschen kann, da gibt es keine Missverständnisse, aber das sind nur meine Erfahrungen aus anderen Foren.
-
Na, das klappt doch super! Wenn wir hier fertig sind, muss man nur noch deine Berichte zusammenfassen und hat eine prima Anleitung.
Der Befehl lautet
cp config.js.sample config.js
. Das kopiert einfach die Datei config.js.sample in eine neue Datei namens config.js. Danach sollte MM korrekt starten.Als nächstes möchtest du vmtl.ein paar Module konfigurieren und hinzufügen. Dazu musst Du stets der jeweiligen Anleitung im README.md des jeweiligen Moduls folgen. Im Wesentlichen ist das aber immer dasselbe:
- Gehe ins modules Verzeichnis (
cd ~/MagicMirror/modules
) - Klone das Git Repository des Moduls (
git clone https://github.com/UserName/ModulName.git
) - Wechsle in das neu entstandene Verzeichnis (
cd ModulName
) - Installiere abhängige Pakete (
npm install
) - Editiere die Datei config.js um das Modul einzuhängen und zu konfigurieren (
nano ~/MagicMirror/config/config.js
).
Achte beim letzten Schritt peinlich auf “Hygiene” in der Datei, d.h.
- rücke korrekt ein,
- achte auf Kommas in Listen,
- achte darauf, dass Zeichenketten (=Texte) in Anführungsstriche eingeschlossen sind,
- andere Datentypen wie Zahlen oder
true
/false
werden ohne Anführungsstriche geschrieben, - Dezimalzahlen verwenden - wie im Englischen üblich - einen Punkt als Komma ,
- schließe Klammern korrekt,
- ändere immer nur eine Sache und probiere diese aus, bevor du weitermachst.
Es hilft sehr, funktionierende Versionen der config.js zu “sichern”, z.B. mit
cp config.js config.js.1
. Wenn Du das nach jeder gelungenen größeren Änderung machst und die Zahl im Dateinamen hochzählst (also config.js.2, config.js.3, usw.), dann kannst du immer auf einen früheren Stand der config.js zurückkehren. Dafür die kaputte config.js löschen (rm config.js
) und ersetzen (cp config.js.1 config.js
).Wenn man von Windows kommt, dann ist die Bedienung des Editors nano etwas gewöhnungsbedürftig. Es mag helfen, sich vorab die wichtigsten Befehle anzulesen. Eine gute deutschsprachige Anleitung findet man unter https://wiki.ubuntuusers.de/Nano/
Erst wenn Du einigermaßen zufrieden bist, würde ich mich mit Autostart und dem Starten via pm2 anfangen.
- Gehe ins modules Verzeichnis (
-
Hallo,
ich habe mich weitestgehend an die Anleitung von User 35110 mit gleicher Konfiguration (AUSSER RPi2B) gehalten, bekomme aber nach dem Ausführen des DISPLAY Befehls folgende Anzeige und aber kein Vorankommen:
~/MagicMirror $ DISPLAY=:0 npm startmagicmirror@2.2.2 start /home/pi/MagicMirror
sh run-start.shStarting MagicMirror: v2.2.2
Loading config …
Loading module helpers …
No helper found for module: alert.
Initializing new module helper …
Module helper loaded: updatenotification
No helper found for module: clock.
Initializing new module helper …
Module helper loaded: calendar
No helper found for module: compliments.
No helper found for module: currentweather.
No helper found for module: weatherforecast.
Initializing new module helper …
Module helper loaded: newsfeed
All module helpers loaded.
Starting server on port 8080 …
Server started …
Connecting socket for: updatenotification
Connecting socket for: calendar
Starting node helper for: calendar
Connecting socket for: newsfeed
Starting module: newsfeed
Sockets connected & modules started …
Launching application.
Create new calendar fetcher for url: http://www.calendarlabs.com/templates/ical/US-Holidays.ics - Interval: 300000
Create new news fetcher for url: http://www.nytimes.com/services/xml/rss/nyt/HomePage.xml - Interval: 300000 -
@MagicMaik said in Deutsche Anleitung MagicMirror auf RaspberryPi 3:
DISPLAY=:0
HI MagicMaik.
Worauf läuft dein MagicMirror? HDMI-Display oder eines das über GPIO angeschlossen wurde?
DISPLAY=:0 lässt die Anzeige auf dem ersten angebundenen Display anzeigen. Der Befehl ist bei einem System mit einem HDMI Monitor eigentlich unnötig.Versuch mal das DISPLAY=:0 wegzulassen.
-
Ich würde im ersten Schritt sogar auf die Verbindung via Putty verzichten und stattdessen Tastatur und Maus direkt an den Pi anschließen. In diesem Fall ist
DISPLAY=:0
nicht nötig.Wenn auf dem Pi direkt alles läuft, würde ich probieren MM ohne Tastatur und Maus via Putty zu starten. Dort wird das DISPLAY Setting wieder gebraucht, weil sonst die Putty Sitzung als Default Screen verwendet wird, was weder geht noch das Ziel ist, denn MM soll ja auf dem HDMI-Monitor erscheinen.
-
Im Grunde habt ihr mir beide geholfen.
Hatte den Pi via RemoteDesktop (xrdp) betrieben, und da ist die Ausgabe dann tatsächlich dann nicht zu sehen.
Hab zu Testzwecken den Pi an HDMI gesteckt, neu gestartet und siehe da, alles da.Vielen Dank nochmal
-
This post is deleted!