Erzeugen eines Keys mit Standard Werten, auch hier können Optionen während des Erstellen angegeben werden:
ssh-keygen
Alternativ können auch beim Aufruf schon Optionen mit angegeben werden:
ssh-keygen -t rsa -b 4096
ssh-keygen -t dsa
ssh-keygen -t ecdsa -b 521
ssh-keygen -t ed25519
Im Standardfall wird der Schlüssel unter ~/.ssh/ gespeichert.
Der öffentliche Schlüssel kann dann kopiert werden.
ssh-copy-id -i ~/.ssh/mykey user@host
User und Pfade müssen natürlich angepasst werden. In diesem Script wird die Netzwerkfreigae einer Fritz Box auf das lokale Verzeichnis /mnt gemounted. mit dem Benutzer nils in der Domain WORKSHOP-
#!/bin/sh
sudo mount -t cifs -o user=nils,domain=WORKGROUP //fritz.box/NAS /mnt
Installation benötigter Pakete:
sudo apt-get install subversion-tools libjpeg8-dev imagemagick
Kopieren des Programmcodes von MJPEG Streamer. Es bietet sich an den Programmcode in ein Extra-Verzeichnis zu laden.
svn co https://svn.code.sf.net/p/mjpg-streamer/code/mjpg-streamer mjpg-streamer
Danach noch das ganze Compilieren (In das Verzeichnis wechseln):
make
sudo make install
Damit ist die Installation fertig. Es wird nun noch ein Script gescheirben, so dass mjpeg über systemctl kontrolliert werden kann.
Der RaspberryPi verfügt über 2 SPI Schnittstellen. Per raspi-config lässt sich jedoch nur eine Schnittstelle aktivieren. Siehe ersten Punkt mit dtparam=spi=on. Um den zweiten SPI ebenfalls nutzen zu können, muss die config.txt in /boot manuell angepasst werde:
Enable SPI by adding the line
dtparam=spi=on
to
/boot/config.txt.
This will enable the main SPI device (two slave selects).
Grundlagen zur Steuerung von GPIO Pins. Alle Code-Beispiele sind in Python geschrieben.
Zu Beginn muss die bei RaspberryPi bereits vorinstallierte Python Bibliothek importiert werden:
import RPi.GPIO as GPIO
Nun werden verschieden Beispiele gegeben.
Auswählen der PIN Nummerierung/Bezeichnung. Beispiel der GPIO 4 soll Angesteuert werden. Dieser ist auf den physikalischen PIN 7
Da berühmte Klassiker Snake. In Python with love for Raspi ;-)
Hinweis: Die live Animation von der Plattform trinket.io funktioniert nur mit den Browser Chrome oder Safari.
Die Snake wird mit den verbauten Joystick gesteuert. Es gibt keine Wände, es kann also einfach über den Rand hinaus sich bewegt werden. Der Sensehat hat ein 8x8 LED Bild, also 64 Felder gesamt. Die Snake ist zu beginn 2 Felder lang, darauf resultiert die maximale Punktzahl von 62. Der Rest ist getreu dem Motto: Keep it simple, das gesamte Spiel kommt somit mit 99 Zeile aus ;-) ...
But First: Der Code:
Kleines Python Programm um auf dem Sensehat eine Binär-Uhr anzuzeigen. Dabei sind rechts die Sekunden (rote LED), Minuten (blaue LED), Stunden (grüne LED). Getreu dem Motto: Keep it simple, anbei der kleine Codesnippsel.... wenn sich jemand die Arbeit sparen will ;-).
Ansonsten Gibt es dazu nicht all zu viel zu sagen.
Leider kommt bei trinket.io eine Fehlermeldung, da die die Bibliothek "datetime" (Codezeile 4) nicht inkludiert haben. Der Code läuft auf meine Raspy Problemlos.
Weiterlesen: Binary Clock on SenseHat with RaspberryPi 3, Python
Ziel: Spring soll nur noch HTTPS Verbindungen zulassen.
Zuerst wird ein Zertifikat benötigt, falls keins vorhanden ist, kann eins mit folgenden Befehl erzeugt werden:
keytool -genkey -keyalg RSA -alias myselfsigned -storetype PKCS12 -keysize 2048 -keystore keystore.p12 -validity 360
Die Fragen, die das Tool stellt sind alle optional und können bei bedarf auch leer gelassen werden. Das Zertifikat ist 360 Tage gültig. Da es sich um ein selbst signiertes Zertifikat handelt, wird der Browser eine entsprechende Sicherheitswarnung ausgeben beim Aufruf.
Run robor, RUN! Naaa. Ein einfacher Roboter. Sein Aufbau verrät auch all sein können. Ein fahrbarer Roboter der an der Front über ein kleinen Greifer verfügt. Somit können Sachen durch die Gegend geschoben werden. Als Herzstück dient wieder ein RaspberryPi 3 mit der Dexter-Industrie Platine BrickPi. Zur Steuerung wird eine Website angeboten. Die Steuerung kann somit über ein Notebook/PC mit den Tasten WSAD nach Ego-Shooter manier erfolgen, als auch mit den Smartphone, dann durch bereitsgestellte Buttons.