RaspberryPi: Unterschied zwischen den Versionen
Aus www.electronic-man.randschtoischlotzer.de
Eman (Diskussion | Beiträge) (→Hardware:) |
Eman (Diskussion | Beiträge) (→Hardware:) |
||
Zeile 372: | Zeile 372: | ||
* IR-Lichtschranke aus Ausbildung zum Kommunkationselektroniker bei der DBP/Deutschen Telekom Modul 2.11.06 bestehendend aus: | * IR-Lichtschranke aus Ausbildung zum Kommunkationselektroniker bei der DBP/Deutschen Telekom Modul 2.11.06 bestehendend aus: | ||
a) Sender<br> | a) Sender<br> | ||
− | b) Empfänger mit Relais | + | b) Empfänger mit Relais<br> |
[[Datei:IR-Lichtschranke_Modul_2-11-06.pdf]] | [[Datei:IR-Lichtschranke_Modul_2-11-06.pdf]] | ||
* RaspberryPi Model B | * RaspberryPi Model B |
Version vom 6. März 2015, 15:04 Uhr
Inhaltsverzeichnis
- 1 Updates & Upgrades
- 2 AVM FRITZ!WLAN USB Stick installieren/einrichten
- 3 Realtek RTL8188CUS Mini-USB Stick installieren/einrichten
- 4 TFTP-Server installieren
- 5 FTP-Server installieren:
- 6 Python -Setuptools installieren:
- 7 PIP installieren:
- 8 Feedparser installieren:
- 9 Cron-Logging einstellen
- 10 Uhrzeit per NTPDATE synchronisieren
- 11 Cron - Einstellungen aus Datei "Einstellungen_crontab.txt" importieren:
- 12 Fernseher über HDMI-CEC steuern
- 12.1 cec-client installieren
- 12.2 Test
- 12.3 Fernseher per CEC-Client einschalten
- 12.4 Fernseher per CEC-Client ausschalten
- 12.5 Power-Status per CEC-Client auslesen
- 12.6 Fernseher per CEC-Client auf HDMI1 umschalten
- 12.7 Fernseher per CEC-Client auf HDMI4 umschalten
- 12.8 Fernseher wieder auf TV umschalten
- 12.9 Sprache des Fernsehers rausfinden
- 12.10 Befehle von "cec-client" anzeigen
- 12.11 CEC-Codes herausfinden
- 12.12 alle HDMI-CEC Geräte anzeigen
- 13 Projekt: Raspberry spielt mit IR-Lichtschranke als Sensor ein MP3-Datei ab
Updates & Upgrades
sudo apt-get update
sudo apt-get upgrade
AVM FRITZ!WLAN USB Stick installieren/einrichten
- Konrolle ob Hardearetyp "zutrifft":
lsusb
eingeben.
- Die Ausgabe sollte so aussehen:
ID 057c:8401 AVM GmbH Fritz!WLAN N [Atheros AR9001U]
- Freie Firmware intallieren:
sudo apt-get install firmware-linux-free
- WLAN-Key einstellen/angeben
sudo pico /etc/wpa_supplicant/wpa_supplicant.conf
- Inhalt der Datei anpassen + speichern. Z. B.:
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1
network={ ssid="yyy" scan_ssid=1 proto=RSN group=CCMP pairwise=CCMP key_mgmt=WPA-PSK psk="xxxxxxxxxxxxxxxx" }
- In der Zeile ssid="yyy" den Netznamen (SSID) eintragen.
- In der Zeile psk="xxxxxxxxxxxxxxxx" den WLAN-Schlüssel eintragen.
- Test ob WLAN/WiFi-Netze gefunden werden:
sudo ifdown wlan0 sudo ifup wlan0 sudo iwlist wlan0 scan
oder
sudo iwlist wlan0 scan |grep "ESSID\|Quality"
Realtek RTL8188CUS Mini-USB Stick installieren/einrichten
- Konrolle ob Hardwaretyp "zutrifft":
lsusb
eingeben.
- Die Ausgabe sollte so aussehen:
0bda:8176 Realtek Semiconductor Corp. RTL8188CUS 802.11n WLAN Adapter
ifconfig
eingeben.
- Die Ausgabe sollte so ähnlich aussehen:
wlan0 Link encap:Ethernet Hardware Adresse 00:13:ef:90:4b:2a UP BROADCAST MULTICAST MTU:1500 Metrik:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 Kollisionen:0 Sendewarteschlangenlänge:1000 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
- nach verfügbaren Netzwerken scannen:
sudo iwlist wlan0 scan
- Die Ausgabe sollte so ähnlich aussehen:
wlan0 Scan completed : Cell 01 - Address: 24:65:11:86:E7:53 ESSID:"xxx" Protocol:IEEE 802.11bgn Mode:Master Frequency:2.412 GHz (Channel 1) Encryption key:on Bit Rates:300 Mb/s Extra:rsn_ie=3014010xxxxxx040100000fac040100000xxc020000 IE: IEEE 802.11i/WPA2 Version 1 Group Cipher : CCMP Pairwise Ciphers (1) : CCMP Authentication Suites (1) : PSK IE: Unknown: DD6F0050F204104A0001101044000102103B00010310470010E5F1E6174F806C1C241124651186E74F1021000341564D1023000446426F78102400043030303010420004303030301054 000800060050F20400011011000446426F78100800022788103C0001031049000600372A000120 Quality=81/100 Signal level=63/100
- WLAN-Key einstellen/angeben
sudo pico /etc/wpa_supplicant/wpa_supplicant.conf
- Inhalt der Datei anpassen + speichern. Z. B.:
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1
network={ ssid="yyy" key_mgmt=WPA-PSK psk="xxxxxxxxxxxxxxxx" }
- In der Zeile ssid="yyy" den Netznamen (SSID) eintragen.
- In der Zeile psk="xxxxxxxxxxxxxxxx" den WLAN-Schlüssel eintragen.
- Neu starten
sudo reboot
- Test ob IP-Adresse bezohen wurde:
sudo ifconfig wlan0
- Ausgabe sollte so Änlich aussehen:
wlan0 Link encap:Ethernet Hardware Adresse 00:13:ef:xx:xx:xx inet Adresse:192.168.xxx.xxx Bcast:192.168.xxx.xxx Maske:255.xxx.xxx.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metrik:1 RX packets:45 errors:0 dropped:0 overruns:0 frame:0 TX packets:5 errors:0 dropped:0 overruns:0 carrier:0 Kollisionen:0 Sendewarteschlangenlänge:1000 RX bytes:15320 (14.9 KiB) TX bytes:1398 (1.3 KiB)
TFTP-Server installieren
- Server installieren:
sudo apt-get install tftpd-hpa
- Einstelllungen anpassen:
sudo nano /etc/default/tftpd-hpa
Inhalt der Datei wie folgt ändern:
TFTP_USERNAME=”tftp” TFTP_DIRECTORY=”/srv/tftp” TFTP_ADDRESS=”0.0.0.0:69″ TFTP_OPTIONS=”–secure -4”
- Server neu starten:
sudo service tftpd-hpa restart
FTP-Server installieren:
sudo apt-get install vsftpd
- FTP-Server konfigurieren:
sudo nano /etc/vsftpd.conf
- Folgende Änderungen (Auskommentieren) machen:
anonymous_enable=NO local_enable=YES write_enable=YES chroot_local_user=YES local_umask=022
- Neuen Nutzer hinzufügen
sudo useradd -m -s /sbin/false -g users ftpuser
- Kennwort setzen
sudo passwd ftpuser
- Sicherheitseinstellungen vornehmen:
sudo nano /etc/pam.d/vsftpd
- PAM konfigurieren (Auskommentieren)
#auth required pam_shells.so
- Server neu starten:
sudo service vsftpd restart
- Berechtigungen setzen:
sudo chmod a-w /home/ftpuser
Python -Setuptools installieren:
sudo apt-get install python-setuptools
PIP installieren:
sudo apt-get install python-pip
Feedparser installieren:
sudo pip install feedparser
Cron-Logging einstellen
sudo pico /etc/rsyslog.conf
- Auskommentieren (Rubrik:
############### #### RULES #### ###############)
# cron.* /var/log/cron.log
zu:
cron.* /var/log/cron.log
- Cron neu starten:
sudo /etc/init.d/rsyslog restart
Uhrzeit per NTPDATE synchronisieren
sudo apt-get purge ntp
sudo dpkg-reconfigure tzdata
sudo apt-get install ntpdate
Cron - Einstellungen aus Datei "Einstellungen_crontab.txt" importieren:
sudo crontab ./Einstellungen_crontab.txt
Fernseher über HDMI-CEC steuern
cec-client installieren
sudo apt-get install autoconf build-essential git liblockdev1-dev libtool libudev-dev pkg-config git clone git://github.com/Pulse-Eight/libcec.git cd libcec/ ./bootstrap ./configure --with-rpi-include-path=/opt/vc/include --with-rpi-lib-path=/opt/vc/lib --enable-rpi
make sudo make install sudo ldconfig
Test
cec-client -l
Fernseher per CEC-Client einschalten
echo "on 0" | sudo cec-client -s -d 1
Fernseher per CEC-Client ausschalten
echo "standby 0" | sudo cec-client -s -d 1
Power-Status per CEC-Client auslesen
echo "pow 0" | sudo cec-client -s -d 1
Fernseher per CEC-Client auf HDMI1 umschalten
echo "tx 4F 82 10 00" | cec-client -s
Fernseher per CEC-Client auf HDMI4 umschalten
echo "tx 4F 82 40 00" | cec-client -s
Fernseher wieder auf TV umschalten
echo "txn 40 9D 00 00" | cec-client -s
Sprache des Fernsehers rausfinden
echo 'lang 0' | cec-client -t p -p 1 -d 1 -s | tail -n1 | grep 'language' | awk '{print $3}'
Befehle von "cec-client" anzeigen
echo h | cec-client -s -d 1
Ausgabe:
opening a connection to the CEC adapter... ================================================================================ Available commands: [tx] {bytes} transfer bytes over the CEC line. [txn] {bytes} transfer bytes but don't wait for transmission ACK. [on] {address} power on the device with the given logical address. [standby] {address} put the device with the given address in standby mode. [la] {logical address} change the logical address of the CEC adapter. [p] {device} {port} change the HDMI port number of the CEC adapter. [pa] {physical address} change the physical address of the CEC adapter. [as] make the CEC adapter the active source. [is] mark the CEC adapter as inactive source. [osd] {addr} {string} set OSD message on the specified device. [ver] {addr} get the CEC version of the specified device. [ven] {addr} get the vendor ID of the specified device. [lang] {addr} get the menu language of the specified device. [pow] {addr} get the power status of the specified device. [name] {addr} get the OSD name of the specified device. [poll] {addr} poll the specified device. [lad] lists active devices on the bus [ad] {addr} checks whether the specified device is active. [at] {type} checks whether the specified device type is active. [sp] {addr} makes the specified physical address active. [spl] {addr} makes the specified logical address active. [volup] send a volume up command to the amp if present [voldown] send a volume down command to the amp if present [mute] send a mute/unmute command to the amp if present [self] show the list of addresses controlled by libCEC [scan] scan the CEC bus and display device info [mon] {1|0} enable or disable CEC bus monitoring. [log] {1 - 31} change the log level. see cectypes.h for values. [ping] send a ping command to the CEC adapter. [bl] to let the adapter enter the bootloader, to upgrade the flash rom. [r] reconnect to the CEC adapter. [h] or [help] show this help. [q] or [quit] to quit the CEC test client and switch off all connected CEC devices. ================================================================================
CEC-Codes herausfinden
alle HDMI-CEC Geräte anzeigen
echo scan | cec-client -s -d 1
Projekt: Raspberry spielt mit IR-Lichtschranke als Sensor ein MP3-Datei ab
Materialien:
Hardware:
- IR-Lichtschranke aus Ausbildung zum Kommunkationselektroniker bei der DBP/Deutschen Telekom Modul 2.11.06 bestehendend aus:
a) Sender
b) Empfänger mit Relais
Datei:IR-Lichtschranke Modul 2-11-06.pdf
- RaspberryPi Model B
- 16 GB SD-Karte
Software:
Installation:
- NOOBS installieren wie hier beschrieben
- SD-Karte in RaspberryPi stecken
- Strom anschliessen uns booten
- in der grafischen Oberfläche "Deutsch + Deutsche Tastatur" einstellen
- Raspbian auswählen und installieren lassen
- Neu starten
- raspi-config ausführen - Punkte:
configure_keyboard - Set keyboard layout change_pass - Change password for 'pi' user change_locale - Set locale change_timezone - Set timezone
durcharbeiten.