Lego mit dem Raspberry steuern

Über eine neue Zusatzplatine ist es möglich, mit seinen Raspberry Pi die Motoren und Sensoren von Lego zu steuern. Die Raspberry-Pi-Foundation hat dafür auch eine passende Python-Bibliothek und mehrere Demoprojekte veröffentlicht.

Mit dem Build Hat getauften Zusatzboard bekommt man die Kontrolle von bis zu vier Lego-Technic-Motoren oder Spike-Sensoren aus der Lego-Education-Reihe Die Platine kostet ca. 26 Euro in Deutschland und kann mit allen Raspberry-Pi-Varianten genutzt werden (sofern diese über eine GPIO-Leiste mit 40 Steckern verfügen). Über einen entsprechenden Adapter ist es sogar möglich, den Build Hat mit dem kleinen Desktop-Rechner Raspberry Pi 400 zu verbinden. Auf dem Hat wird der RP2040-Chip verbaut, der von der Foundation selbst entwickelt wird. Der 40-nm-Chip wird etwa auf dem Raspberry PI Pico verwendet, kann aber auch in Einzelteilen bestellt werden.

Als kleine Einstiegshilfe hat die Raspberry-Pi-Foundation sogar vier Anleitungen für Demoprojekt veröffentlicht. Die Bibliothek unterstützt übrigens neben Lego-Technic-Geräten auch das Mindstorms Robot Inventor Kit und weitere Lego-Produkte, die auf einen LPF2-Anschluss setzen.

In der Einstiegshilfe könnt ihr z.B. sehen, wie ihr einen Gamecontroller aus Lego-Bauteilen herstellt, ein ferngesteuertes Fahrzeug oder einen Plotter baut oder ein Robotergesicht aus Lego-Steinen zusammensetzt

Über den Autor

Mein Name ist Stefan Eggert, als Freiberufler berate ich seit über 10 Jahren im Bereich IT-Sicherheit und forsche mit meinem Team zusätzlich rund um das Thema Schwachstellen. Spezialisiert habe ich mich auf DDoS, Schwachstellenmanagement und Kennwortsicherheit. Beruflich bin ich erreichbar unter www.stefan-eggert.de

Raspberry Pi headless setup

Meine heimliche Liebe zu Einplatinenrechner ist kein Geheimnis. Ist erst ein Ansatz zur Automatisierung gefunden, wird dieser direkt durch ein „Raspberry Projekt“ umgesetzt. Zugegeben, in den letzten Wochen schwärme ich auch für Arduino, welcher tolle Möglichkeiten eröffnet – Aber Raspberry dominiert dennoch unseren Haushalt durch Webcams, Ambilight, Speedmessungen am DSL Anschluss, 3D Drucker und vieles mehr. Aktuell arbeite ich gerade an einem Thermometer, welches von einem Arduino mit DHT22 über 433 MHz Messungen empfängt, statistisch am Pi aufwertet und dann an einem Webserver überträgt. Damit der Pi Zero auch ohne Monitor und Tastatur direkt gestartet werden kann, sind zunächst jedoch einige Änderungen notwendig.

Download des aktuellen Raspbian Image und Installation durch Etcher

Dieser Schritt sollte relativ selbstredend sein, daher werde ich auf die Installation nicht näher eingehen. Früher habe ich das Image aus der Console mit dd aufgespielt, heute mache ich dies über Etcher (hier kann man Etcher Downloaden)

Etcher

WiFi konfigurieren

Als nächstes muss vor dem ersten Start des Pi eine Datei erstellt werden. Diese muss auf der /boot Partition des Pi gespeichert werden.

Inhalt der Datei /boot/wpa_supplicant.conf

SSH aktivieren

Nachdem wir nun die WLAN Einstellungen am Raspberry gemacht haben, müssen wir noch eine leere Datei im /boot Verzeichnis erzeugen und nennen diese „ssh“. Dies bewirkt, das der SSH Dienst bei booten automatisch gestartet wird.

Fertig: Kennwort bitte ändern

Starten wir nun den PI, können wir uns mit Putty oder sonstigen SSH Client anmelden: ssh pi@raspberrypi Das Default Passwort für den Benutzer pi lautet „raspberry“ und sollte umgehend geändert werden. Eine solche Kombination ist ein sehr hohes Sicherheitsrisiko.

Raspberry Pi Zero Pin Belegung

Über den Autor

Mein Name ist Stefan Eggert, als Freiberufler berate ich seit über 10 Jahren im Bereich IT-Sicherheit und forsche mit meinem Team zusätzlich rund um das Thema Schwachstellen. Spezialisiert habe ich mich auf DDoS, Schwachstellenmanagement und Kennwortsicherheit. Beruflich bin ich erreichbar unter www.stefan-eggert.de

OctoPi über das Internet betreiben

OctoPi bzw. OctoPrint ist eine wirklich tolle Ergänzung im 3D-Druck! Fast jeder, der einen OctoPrint  Server im lokalen Netz betreibt, wird auf kurz oder lang den Wunsch haben, diesen auch aus dem Internet erreichbar zu machen.

Wer also einfach die entsprechenden Ports von seinem Router bzw. Firewall zum Printserver durchreicht, wird feststellen, das es derzeit mit OctoPi nicht möglich ist, das Webinterface vor neugierigen blicken zu schützen. Konkret kann also jeder aus dem Internet zumindest das Webinterface lesend erreichen und hat somit Zugriff auf Kameras und natürlich auch auf aktuelle Druckeinstellungen und Leistungsdaten.

OctoPi ohne Anmeldung

OctoPi ohne Anmeldung

 

Die derzeit beste Lösung ist es demnach, mit einem Reverse Proxy zu arbeiten. OctoPi selbst bringt bereits HAProxy mit, dieser steht somit aktiv zwischen Internet und dem Octoprint Backend.

HAProxy ist eine kostenlose Open-Source-Software, die einen Load-Balancer und Proxy-Server mit hoher Verfügbarkeit für TCP- und HTTP-basierte Anwendungen bereitstellt.

 

Das Config File /etc/haproxy/haproxy.cfg kann einfach mit vi auf dem PI geöffnet werden:

 

Anschließend muss der Bereich „backend octoprint“ um die beiden letzten Zeilen ergänzt werden:

 

Ebenso wird ein neuer Abschnitt „userlist UL1“ eingefügt:

Wichtig hierbei: USERNAME und PASSWORD sollten geändert werden 😉

 

Ergebnis: Beim Aufruf der OctoPi URL wird jetzt nach einem Benutzernamen und Password gefragt.

Authentifizierung durch HAProxy

Authentifizierung durch HAProxy

 

 

Über den Autor

Mein Name ist Stefan Eggert, als Freiberufler berate ich seit über 10 Jahren im Bereich IT-Sicherheit und forsche mit meinem Team zusätzlich rund um das Thema Schwachstellen. Spezialisiert habe ich mich auf DDoS, Schwachstellenmanagement und Kennwortsicherheit.

Beruflich bin ich erreichbar unter www.stefan-eggert.de

Raspberry PI 2: Tontec Touch Screen (Model MZ61581)

Neulich habe ich mir ein Touch Screen für meinen PI gekauft. Der Screen selbst wird mit einem Gehäuse geliefert, in das der PI2 perfekt passt. Damit der Boot Vorgang angezeigt wird sind jedoch einige  Schritte erforderlich:

1 – Update und Upgrade des PI

 

2 – Firmware Update

Bitte stellt sicher das die Uhrzeit richtig eingestellt ist.

Ersetzt die Server dort mit diesen Servern:
Nun startet das Firmware Update mit

 

3 – SPI aktivieren und set overlay für das Tontec MZ61581 Display

Zuerst muss die /boot/config.txt editiert werden:

Anschließend müssen folgende Zeilen der Datei angehangen werden

Nach dem speichern ein reboot des PI

 

4 – Edit cmdline.txt

Um das Display bereits im Boot Prozess zu aktivieren, müssen wir die cmdline.txt editieren:

Am Ende der Zeile fügen wir   an

Nach einem Neustart sieht man nun den Boot Screen.

Über den Autor

Mein Name ist Stefan Eggert, als Freiberufler berate ich seit über 10 Jahren im Bereich IT-Sicherheit und forsche mit meinem Team zusätzlich rund um das Thema Schwachstellen. Spezialisiert habe ich mich auf DDoS, Schwachstellenmanagement und Kennwortsicherheit.

Beruflich bin ich erreichbar unter www.stefan-eggert.de

Raspberry PI 2: Icinga 2 richtig installieren

Erst diese Woche ist mir wieder meine SD Karte beschädigt worden und ich musste Icinga 2 neu installieren. Um dies nachzustellen, habe ich die Schritte beschrieben. Voraussetzung ist eine saubere Installation von Debian Jessie mit einem anschließenden   und

Zunächst fügen wir das Respository mit wget hinzu:

Um nun die Installation zu starten, müssen alle Abhängigkeiten über den Assistenten installiert werden:

Nun müssen wir die Features ido-mysql sowie command aktivieren und Icinga neu starten:

Um die Weboberfläche zu aktivieren, installieren wir noch IcingaWeb2:

Die Benutzerberechtigungen für nagios und icingaweb2 werden wie folgt gesetzt:

Für die Installation über die Weboberfläche wird ein Setup Token benötigt. Dieser wird wie folgt generiert (und notiert):

Um den Token noch einmal zu lesen, kann dies mit  gemacht werden.

Als letztes müssen noch die fehlenden Verzeichnisse angepasst und die TimeZone richtig gesetzt werden:

Damit nun die Weboberfläche über http://ip/icingaweb2/setup gestartet werden kann, muss der Apache neu gestartet werden:

 

Über den Autor

Mein Name ist Stefan Eggert, als Freiberufler berate ich seit über 10 Jahren im Bereich IT-Sicherheit und forsche mit meinem Team zusätzlich rund um das Thema Schwachstellen. Spezialisiert habe ich mich auf DDoS, Schwachstellenmanagement und Kennwortsicherheit.

Beruflich bin ich erreichbar unter www.stefan-eggert.de