Schlagwort-Archiv: Raspberry Pi

Raspberry Pi Schreibzugriffe reduzieren

Bei einem 24/7 Betrieb dürfte eine Speicherkarte etwa 1/2 Jahr halten.
Hängt ganz davon ab, wie oft und wie viel auf die Karte geschrieben wird.
Schreibzugriffe für logs werde ich daher auf eine Ramdisk verlagern.

sudo vim /etc/fstab

Fügt nun in der „fstab“ diese Zeilen ein und startet dann neu:

tmpfs /tmp tmpfs defaults,noatime,mode=1777 0 0
tmpfs /var/log tmpfs defaults,noatime,mode=0755 0 0
tmpfs /var/lock tmpfs defaults,noatime,mode=0755 0 0

Manche Programme könnten jetzt nicht mehr starten. Ich habe z.B. Apache2 mit folgendem Fehler:

Starting web server: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
(2)No such file or directory: apache2: could not open error log file /var/log/apache2/error.log.
Unable to open logs
Action 'start' failed.
The Apache error log may have more information.
failed!

Alles was im Ram ist, verschwindet beim Neustart. Es gibt also unter /var/log keinen apache2 Ordner mehr.
Ich habe die error.log abgeschalten. Einem Anfänger kann ich das aber nicht empfehlen!
sudo vim /etc/apache2/apache2.conf

Sucht nach:

ErrorLog ${APACHE_LOG_DIR}/error.log

ändert es so ab:

#ErrorLog ${APACHE_LOG_DIR}/error.log
ErrorLog /dev/null

Das muss man auch hier machen:

sudo vim /etc/apache2/sites-available/default-ssl
sudo vim /etc/apache2/sites-available/default

Hier muss man aber auch zusätzlich diese Zeile auskommentieren (# am Anfang davor setzen):
CustomLog ${APACHE_LOG_DIR}/access.log combined

Und die letzte Datei : )
vim /etc/apache2/conf.d/other-vhosts-access-log:

#CustomLog /var/log/apache2/other_vhosts_access.log vhost_combined

Mit sudo service apache2 start testen ob apache2 ohne Fehler startet.

Nachtrag 17.07.2016:
SD ist wieder kaputt, trotz Schreibzugriffreduzierung. Hat zwar länger gehalten, aber die beste Lösung war bis jetzt die SD nur als Boot-Medium zu nutzen und dann nur auf USB-Festplatte zu arbeiten.

DS1307 RTC am Raspberry Pi

Heute will ich euch zeigen, wie man das Real-Time-Clock-Module „Tiny RTC – DS1307“ am Raspberry Pi betreiben kann. Raspberry Pi hat keine RTC und holt sich die aktuelle Uhrzeit über das Internet via ntp. Damit die Uhrzeit auch ohne Internet zur Verfügung steht, ist das Modul eine kostengünstige Lösung.

Als erstes wird i2c-tools benötigt:

apt-get install i2c-tools

Ich benutze lieber vim und nicht nano. Wer also lieber nano als Editor nimmt, muss vim durch nano ersetzen.

Raspberry hat in der neuen Version keine raspi-blacklist.conf mehr.

cd /etc/modprobe.d/

Liegt keine raspi-blacklist.conf im Verzeichnis, solltet ihr raspi-config verwenden.

raspi-config

Im Fenster auf „advance options“ gehen und da:

A6 SPI Enable/Disable automatic loading │
A7 I2C Enable/Disable automatic loading

beide Module aktivieren. Jetzt noch neustarten!

Wer die raspi-blacklist.conf noch hat, geht so vor:

vim /etc/modprobe.d/raspi-blacklist.conf

sucht diese Zeilen:
#blacklist spi-bcm2708
#blacklist i2c-bcm2708

und entfernt die „#“ am Anfang, so sollten die Zeilen aussehen:

blacklist spi-bcm2708
blacklist i2c-bcm2708

Damit die Module bei jedem Neustart wieder geladen werden, muss man die /etc/modules anpassen.
vim /etc/modules

Meine config sieht nun so aus:

/etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.
# Parameters can be specified after the module name.

snd-bcm2835
spi-bcm2708
i2c-bcm2708
i2c-dev
rtc-ds1307

Um die Module zu aktivieren, müsst Ihr Raspberry Pi neu starten:

sudo reboot

Nach dem Neustart muss die RTC getestet werden:

i2cdetect -y 1

Sollte so aussehen:

0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: 50 -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- 68 -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --

Jetzt setzen wir erstmal die richtige Zeitzone:
sudo raspi-config
“Internationalization Options” -> “Time Zone”

Es sollte diese Meldung kommen:
Current default time zone: 'Europe/Berlin'
Local time is now: Thu Aug 27 15:53:11 CEST 2014.
Universal Time is now: Thu Aug 27 13:53:11 UTC 2014.

Die RTC bei jedem Neustart verwenden:

vim /etc/rc.local

Sucht nach der Zeile „exit 0“ am Schluss und ändert das so ab:
#RTC
echo ds1307 0x68 > /sys/class/i2c-adapter/i2c-1/new_device
sudo hwclock -s
#RTC END

exit 0

Die RTC Zeit einstellen:
Gebt erstmal date ein, für die aktuelle Systemzeit.

root@home:/home/pi# date
Thu Aug 27 16:13:23 CEST 2014

Nun hwclock -r um die Zeit von der RTC zu lesen:

root@home:/home/pi# hwclock -r
Thu 27 Aug 2014 16:13:29 CEST -0.676218 seconds

Stimmt die Zeit nicht, gebt hwclock -w ein.

sollte der Fehler „Cannot access the Hardware Clock“ kommen:

root@home:/home/pi# hwclock -r
hwclock: Cannot access the Hardware Clock via any known method.
hwclock: Use the --debug option to see the details of our search for an access method.

Startet mal neu und gebt sudo bash ein und echo ds1307 0x68 > /sys/class/i2c-adapter/i2c-1/new_device
Dann sollte der Befehl hwclock -r funktionieren.

Raspberry Pi von USB-Festplatte betreiben

Raspian Pi kann nur von SD-Karten booten, gleich von USB booten ist nicht möglich. Wer Angst wegen Schreibzugriffe auf der SD-Karte hat, kann die SD-Karte auch nur zum booten verwenden. Das eigentliche System kann auf der USB-Festplatte oder USB-Stick laufen. Externe USB-Festplatten sollten eine eigene Stromversorgung haben.

Als erstes sollte sicher gestellt werden, dass die Patition MBR ist und nicht GPT. Es sollten auch keine Daten mehr drauf sein die benötigt werden. Alle Daten von der Festplatte gehen verloren!

Schließt eure USB-Festplatte am Raspberry Pi an und bootet ganz normal von euer SD-Karte. Meine Festplatte lautet /dev/sda , solltet ihr eine weitere Festplatte betreiben, kann das z.B. /dev/sdb sein.

Wer jetzt GPT hat, kann so auf MBR umstellen:
sudo parted /dev/sda

Jezt wird parted gestartet und erwartet einen Befehl:
mklabel msdos

Jetzt gebt quit als Befehl ein um parted zu beenden. Jetzt kann die Festplatte partitioniert werden:

sudo cfdisk /dev/sda

Ich habe 170 GB für eine Linux-Partition, 2GB für Swap eingerichtet. Danach muss man die Partition auswählen und den Typ der Partition angeben. Linux-Partition bekommt Type 83 und SWAP Type 82. Nun die Partitionsdaten auf die Platte schreiben und cfdisk beenden. Das Dateisystem kann nun angelegt werden:

sudo mkfs.ext4 /dev/sda1
sudo mkswap /dev/sda2

Ab jetzt kann man die Festplatte schon verwenden, man muss die Festplatte nur noch zur Verfügung stellen mit:

sudo mount /dev/sda1 /mnt

Kopiert eure Daten von der SD-Karte auf die Festplatte:
cd /mnt
sudo cp -axuv / .

Da booten von der Festplatte nicht möglich ist, löschen wir den Boot-Ordner von der Festplatte. Nicht von der SD-Karte!


sudo rm -R /mnt/boot
sudo nano /mnt/etc/fstab

Sucht die Zeile und setzt eine Raute davor:

#/dev/mmcblk0p2 / ext4 defaults,noatime 0 0

Fügt unter dieser Zeile diese Einträge hinzu:

/dev/sda1 / ext4 defaults,errors=remount-ro 0 1
/dev/sda2 none swap sw 0 0

Auf der SD-Karte muss nun cmdline.txt bearbeitet werden.

sudo nano /boot/cmdline.txt

In der einen Zeile muss root=/dev/mmcblk0p2 durch root=/dev/sda1 ersetzt werden, damit wird das System von der Platte gebootet. Jetzt kann man die SWAP-Partition noch verwenden mit:

sudo swapon -a

Jetzt soll man mit sudo reboot neustarten. Zum Testen kann man dann df -h eingeben:

Dateisystem Größe Benutzt Verf. Verw% Eingehängt auf
rootfs 182G 2,5G 170G 2% /
/dev/root 182G 2,5G 170G 2% /
devtmpfs 211M 0 211M 0% /dev
tmpfs 44M 264K 44M 1% /run
tmpfs 5,0M 0 5,0M 0% /run/lock
tmpfs 470M 0 470M 0% /run/shm
https://dav.box.com/dav 10G 0 10G 0% /home/pi/Desktop/box.com

Wie man sehen kann hat /dev/root nun 170 GB : ), habe das Gefühl es geht schneller als von der SD-Karte. Jetzt kann man noch das dphys-swapfile deaktivieren:

sudo update-rc.d dphys-swapfile remove

Anschließend sollten Sie einen Neustart des Systems durchführen.

sudo shutdown -r now

Nach dem Neustart können Sie durch swapon überprüfen ob die Auslagerungsdatei nicht mehr verwendet wird. Bzw. nur unser angelegte SWAP-Partition verwendet wird:

swapon -s

Das Ergebniss sollte so aussehen:

Filename Type Size Used Priority
/dev/sda2 partition 1954444 0 -1

433 MHz Funk Transmitter am Raspberry Pi

FS1000A ist ein Transmitter modul, das am Raspberry Pi angeschlossen werden kann. Der Transmitter kann mit 3 bis 5 Volt umgehen.
Wobei bei 5 Volt mehr Leistung bzw. größere Reichweiten erziehlt werden. Auch bei 5 Volt komme ich maximal bis zum Nebenraum, danach reagiert der Empfänger schwer bis garnicht. Trotz intensiver Suche habe ich kein Handbuch bzw. Datasheet zu diesem Sender finden können.
Laut Internet soll der Sender auch 12V vertragen, dies kann ich aber nicht bestätigen oder verneinen. Ich habe mich für 5V entschieden, da ich keine zusätzliche Stromversorgung brauche und mir die Reichweite locker reicht.

FS1000A

Das Anschließen geht so einfach, dass man keinen Schaltplan braucht:

GND – Ground —-> Pin 6
VCC – Spannung —-> Pin 2 (5V) oder Pin 1(3.3V)
DATA – Daten —-> Pin 11 (GPIO 17)

Ihr könnt auch einen anderen GPOI verwenden, da ich aber auch IR Receiver, Power/Reset-Switch und Kontroll-LED verwende bietet sich GPIO 17 an. Als Software bietet sich rcswitch-pi oder PowerPi an. wiringPi wird für beide Anwendungen benötigt.

wiringPi:

sudo apt-get install git-core
sudo apt-get update
sudo apt-get upgrade
git clone git://git.drogon.net/wiringPi
cd wiringPi
git pull origin
cd wiringPi
./build

rcswitch:
git clone https://github.com/r10r/rcswitch-pi.git
cd rcswitch-pi
make

Zum Schalten mit rcswitch-pi muss man die Funksteckdose mit einem Code versehen (Dipschalter).
Ich habe zum Testen mal 10000A eingestellt und eine Lampe angeschlossen. Wir sollten noch im Verzeichnis rcswitch-pi sein, da jetzt den Befehle eingeben:

Zum Einschalten:
./send 10000 1 1

Zum Ausschalten:

./send 11111 1 0

IMG_0720

Raspberry Pi mit IR Remote

Ich habe noch eine alte Universal Fernbedienung (TCM 64745) und einen TSOP34136 Infared Receiver (datasheet). TSOP38238 und TSOP4838 sollten auch funktionieren, sind aber nicht von mir getestet. TSOP38238 wird auch in eBay angeboten, aber etwas teuer ; ). Hier erstmal der Schaltplan:

Raspberry_IR

1 = OUT, 2 = GND, 3 = VS

Um via GPIO Ports eine einzelne Infrarot Empfänger Diode anzusprechen, benötigt man noch LIRC. Bei Raspbian muss das noch eingerichtet werden, bei OpenELEC ist LIRC von Haus aus eingerichtet.


sudo apt-get install lirc liblircclient-dev

Damit das Modul beim Neustart automatisch geladen wird, muss /etc/modules bearbeitet werden.

sudo nano /etc/modules

Fügt folgende Zeilen am Ende der Datei ein:

lirc_dev
lirc_rpi gpio_in_pin=18

Jetzt die Config /etc/lirc/hardware.conf bearbeiten, so sollte das Ergebnis aussehen:

# /etc/lirc/hardware.conf
#
# Arguments which will be used when launching lircd
LIRCD_ARGS="--uinput"

# Don't start lircmd even if there seems to be a good config file
# START_LIRCMD=false

# Don't start irexec, even if a good config file seems to exist.
# START_IREXEC=false

# Try to load appropriate kernel modules
LOAD_MODULES=true

# Run "lircd --driver=help" for a list of supported drivers.
DRIVER="default"
# usually /dev/lirc0 is the correct setting for systems using udev
DEVICE="/dev/lirc0"
MODULES="lirc_rpi"

# Default configuration files for your hardware if any
LIRCD_CONF=""
LIRCMD_CONF=""

Jetzt sollte das System neugestartet werden.

sudo shutdown -r now

Ob alles geklappt hat, kann man wie folgt testen:


/etc/init.d/lirc stop
mode2 -d /dev/lirc0

Nach Eingabe einfach auf die Fernbedienung drücken. Ich habe auch 2 verschiedne Windows Media Center Edition (MCE) Fernbedienungen getestet, die haben bei mir nur schlecht bis garnicht funktioniert. Am besten ging es mit den normalen Fernbedienungen.

Box am Raspberry Pi nutzen

Der Dropbox-Konkurrent Box bietet 10 GB kostenlos. Box bietet sich an, um sein Backup bzw. Scripte zu speichern. Das Einrichten ist auch nicht sonderlich schwer, da Box WebDAV unterstützt. WebDAV ist ein Standard zur Bereitstellung von Dateien im Internet.

Als Erstes muss davfs2 installiert werden, dass geht mit folgendem Befehl:

sudo apt-get install davfs2

Jetzt legen wir einen Ordner an, wo Ihr auf die Daten zugreifen wollt. Da ich auch ab und zu am Desktop arbeite, erstelle ich meinen Ordner am Desktop.

mkdir /home/pi/Desktop/box

Jetzt können wir uns auch schon mit Box verbinden:

sudo mount -o uid=pi -o gid=pi -t davfs https://dav.box.com/dav /home/pi/Desktop/box

Damit Box beim Neustart wieder zur Verfügung steht, muss /etc/davfs2/secrets bearbeitet werden:

sudo nano /etc/davfs2/secrets

Fügt dort diese Zeile am Schluss ein:
https://dav.box.com/dav Benutzer Passwort

Bitte bei Benutzer und Passwort eure Daten eintragen ; ). Jetzt gibt es noch ein Problem, nicht alle User dürfen auf Box speichern.

Gebt folgende Befehle ein:

sudo usermod -aG davfs2 pi

sudo dpkg-reconfigure davfs2

Beim letzten Befehl geht nach kurzer Zeit ein Fenster auf:

Die Datei /sbin/mount.davfs muss das SUID-Bit gesetzt haben, falls Sie unprivilegierten (nicht root) Benutzern erlauben möchten, WebDAV-Ressourcen einzubinden. Falls Sie diese Option nicht wählen, wird es nur root erlaubt sein, WebDAV-Ressourcen einzubinden. Dies kann zu einem späteren Zeitpunkt durch Aufruf von »dpkg-reconfigure davfs2« geändert werden. Soll unprivilegierten Benutzern erlaubt werden, WebDAV-Ressourcen einzubinden?

Diese Frage mit Ja beantworten, wenn alle Benutzer zugreifen dürfen.

Jetzt der letzte Teil, Box beim Neustart automatisch einbinden. Die Konfigurations-Datei /etc/fstab enthält nötige Informationen, um das Einhängen von Partitionen ganz oder teilweise zu automatisieren. Bitte aufpassen, was Ihr dort macht!

sudo nano /etc/fstab

Dort eine neue Zeile hinzufügen:

https://dav.box.com/dav /home/pi/box davfs rw,noexec,noauto,user,async,uid=pi,gid=pi 0 0

Ab jetzt sollte beim Neustart alles wieder da sein, vorausgesetzt Internet ist aktiv ; ).

USB Soundkarte am Raspberry Pi

Raspberry Pi besitzt keinen Audioeingang für z.B. ein Microfon. In dieser Anleitung verwende ich das Gerät Virtual 7.1CH (C-Media Chipset) USB Sound Card. Als Erstes steckt die Soundkarte am USB-Port der Raspberry Pi. Keine Gewalt bitte ;)!

Installiert noch folgende Pakete, wenn Ihr in der Konsole arbeitet.

sudo apt-get install alsa-utils mpg321 lame

Mpg321 ist ein MP3-Kommandozeilen-Abspieler
alsa-utils ist Dienstprogramme für Konfiguration und Verwendung von ALSA
LAME ist ein MP3 Encoder

Jetzt müssen wir das Gerät finden, am besten mit:

sudo lsusb

Bei mir sieht das Ergebnis so aus, meine Soundkarte habe ich jetzt fett makiert:

Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp.
Bus 001 Device 008: ID 1941:8021 Dream Link WH1080 Weather Station / USB Missile Launcher
Bus 001 Device 005: ID 0d8c:000c C-Media Electronics, Inc. Audio Adapter

Nur Audiogeräte anzeigen:

cat /proc/asound/cards

Jetzt muss man die alsa-base.conf bearbeiten:

nano /etc/modprobe.d/alsa-base.conf

Sucht die folgende Einstellung, setzt eine Raute am Anfang der Zeile:

#options snd-pcsp index=-2

Bei options snd-usb-audio index=-2 darf keine Raute am Anfang sein. Falls das aber so sein sollte, muss die Raute entfernen.

Datei Speichern und Soundcheck : )!!!
Da ich jetzt keine Lust habe Audiodatein zu kopieren, mache ich es mit folgenem Befehl:
speaker-test -t sine -f 440 -c 2 -s 1

Funktioniert die Soundausgabe, heißt das noch lange nicht, dass auch ein Mikrofone funktioniert.
Falls man nichts hören kann, muss noch ein wenig an der Konfiguration drehen werden.

alsamixer

alsamixer

Hier muss der Regler Mic eingestellt werden. Wird aus allen Versuchen nichts, bleibt nur noch, ein anderen Mikro zu probieren, um einen Hardware-Defekt auszuschließen. Ebenso sollten Sie sicherheitshalber noch einmal prüfen, ob das Mikrofon auch wirklich eingeschaltet ist.

WS1080 Wetterstationen mit Raspberry Pi

PYWWS ist ein Python Skript, um verschiedene Fine Offset Wetterstationen auszulesen. Diese Anleitung richtet sich für die Wetterstation WS1080 bzw. WH1080 mit Rasbian „wheezy“. Installiert wird das Ganze über Terminal(SSH). Die Wetterstation sollte vom USB noch getrennt sein.

Als Erstes sollte das System aktualisiert werden, dazu geben wir folgende Befehle ein:

sudo apt-get update && sudo apt-get upgrade

Folgende Paket müssen installiert werden:

sudo apt-get install libusb-1.0.0 git python-dev libudev-dev python-usb python-crypto python-paramiko gnuplot gettext sphinx-common

Jetzt kommt die eigentliche Software pywws:

mkdir ~/weather
cd ~/weather

git clone https://github.com/jim-easterbrook/pywws.git
cd pywws
python setup.py msgfmt
python setup.py build_sphinx

Jetzt kann die Wetterstation angeschlossen werden. Wir testen auch gleich, ob alles geklappt hat mit folgendem Befehl:

python -m pywws.TestWeatherStation

Wenn alles klappt sollte das Ergbnis ungefähr so aussehen:
0000 55 aa ff ff ff ff ff ff ff ff ff ff ff ff ff ff 05 20 02 21 09 00 00 00 00 7f 00 13 00 00 20 02
0020 97 27 ac 25 00 00 00 00 00 00 00 07 01 01 13 33 41 23 c8 00 00 00 46 2d 2b 01 64 80 c8 00 00 00
0040 64 00 64 80 a0 28 80 25 a0 28 80 25 00 b4 00 00 68 01 00 0a 00 f4 01 12 00 00 00 00 00 00 00 00
0060 00 00 45 0a 63 0a 68 01 81 00 cf 01 c0 80 cf 01 c0 80 a7 01 01 00 1a 27 d4 24 81 28 04 26 30 03
0080 ef 02 f4 ff f7 ff ee ff 4b fd 4e 2a 00 11 09 26 09 01 12 02 06 15 17 11 08 16 04 14 12 04 28 14
00a0 07 13 07 28 18 47 13 02 23 18 53 12 09 18 20 24 13 05 20 12 50 12 09 18 20 24 13 05 20 12 50 12
00c0 09 18 20 24 13 08 02 18 33 11 12 26 20 54 11 12 16 16 52 13 01 03 22 08 11 12 16 16 52 12 11 22
00e0 18 35 12 09 28 07 03 13 02 15 03 22 13 02 15 03 22 12 05 12 14 25 13 07 26 06 57 13 08 09 14 31

Damit ist die Installation abgeschlossen, ich wünsche viel Spaß :)!
Wie man mit pywws umgeht kann man hier nachlesen.

Ein und Ausschalter für Raspberry Pi

Leider kann Raspberry Pi nur mit Spannung gestartet werden, zum Ausschalten muss man „shutdown -h now“ im Terminal herunterfahren. Beim wieder Einschalten muss der Raspberry Pi von der Spannungsversorgung getrennt und wieder verbunden werden. Stecker ziehen verschleisst die micro-USB Buchse und diese sind bestimmt nicht für x mal ein-/ausstecken pro Tag ausgelegt. Ich habe hier eine einfache Schaltung für das Raspberry Pi Modell B Rev 2.0, die es ermöglicht per Tastendruck sauber Herunterzufahren und sich auf Kopfdruck wieder einschaltet.

Schaltplan

Schaltplan

Der erste Schalter ist für Hardreset bzw. zum Einschalten wenn der Rechner bereits aus ist. Schalter zwei ist zum Herunterfahren, hierfür ist mein Pythonscript notwendig. Die LED ist keine Power-LED! Die LED leuchtet nur wenn das Script läuft, beim Dücken der Herunterfahrtaste blinkt die LED zur Bestätigung. Der Hardreset sollte nur im Notfall verwendet werden, das kann das Dateisystem beschädigen. Reset ist nichts anderes, wie im laufenden Betrieb den Stecker ziehen!

Ich habe hier den P5 Header benutzt, damit der P1 frei für Module bleibt. Man kann aber auch P1 nutzen, dazu muss aber das Script angepasst werden! P6 muss aber nachgerüstet werden, ohne P6 ist das Einschalten nicht möglich.

Stückliste:
2 x Kurzhubtaster
1 x LED (3V)
1 x Lochrasterplatine
2 x 1 KOhm Widerstand
1 x 330 Ohm Widerstand
1 x 2-Pin Steckleiste (P6)
1 x 4-Pin Steckleiste (P5 Header)
6 x Jumperkabel

Schaltplan:

Tastendruck Herunterfahren / Reset

Tastendruck Herunterfahren / Reset

Raspberry Pi P6 und P5 header

Raspberry Pi P6 und P5 header

Software:

Dieses Python-Script runterladen und entpacken.

shutdown

Bei mir liegt die Datei im Verzeichniss /home/pi/Desktop/script/, dies kann aber von euch frei gewählt werden.
Die entpakte Datei muss nun für den Benutzer Root ausführbar gemacht werden.

chown root:root shutdown.py
chmod x shutdown.py

Damit das Script beim Neustart automatisch gestartet wird, muss die Datei rc.local angepasst werden.

vi /etc/rc.local

Die letzte Zeile sollte so aussehen:

exit 0

Vor dieser Zeile muss noch angegeben werden, wo das Script abgespeichert wurde.
Bei mir lautet die Zeile so:

python /home/pi/Desktop/script/shutdown.py &

Taster und LED fertig im Gehäuse

Taster und LED fertig im Gehäuse