ziele
- ein eigenes case aus holz bauen
- buttons zum basissteuerung des mpd vom case aus. somit wird kein externer client mehr nötig
- kleines display, um daten anzuzeigen (z.b. welcher titel gerade läuft)
- buttons zum herunterfahren des pi
falls noch nicht geschehen, müssen jetzt die pakete für den zugriff auf git repositories installiert werden
sudo apt-get install git-core
zum ansteuern des 2x16 lcd schirm benutze ich die bibliotheken von adafruit.
dieses müssen zunächst installiert werden:
git clone git://github.com/adafruit/Adafruit-Raspberry-Pi-Python-Code.git
dann hab ich aus dem paket die datei
Adafruit_CharLCD.py in mein python projektverzeichnis kopiert und
in der
__init__ funktion meine benutzten pins angepasst:
def __init__(self, pin_rs=7, pin_e=8, pins_db=[25, 24, 23, 18], GPIO=None):
da ich ja auch eine kleines radio mit einbauen will, brauche ich dafür
wiringPi komponenten.
git clone git://git.drogon.net/wiringPi
cd WiringPi
./build
und die
i2c-tools
sudo apt-get install i2c-tools
i2c für mein radio modul aktivieren
normalerweise sollte es ausreichen, über
sudo raspi-config den i2c support zu aktivieren.
man kann es aber per hand machen. ist vor allen sinnvoll, wenn man - so wie ich - problemen hinterherläuft (hat bei
mir auf anhieb nicht funktioniert. mein radio wurde nicht erkannt.
lag aber an der falschen verkabelung. ich hatte
SCL und
SDA vertauscht)
in der
/etc/modprobe.d/raspi-blacklist.conf die spi und i2c zeilen mit einem kommentar versehen (oder rauslöschen)
sudo nano /etc/modprobe.d/raspi-blacklist.conf
so sollte das dann aussehen
# blacklist spi and i2c by default (many users don't need them)
# blacklist spi-bcm2708
# blacklist i2c-bcm2708
dann muss am ende der
boot.txt noch folgendes eingetragen werden:
sudo nano /boot/config.txt
dtparam=i2c1=on
dtparam=i2c_arm=on
damit das modul bei jedem start gleich mitgeladen wird, ist das auch noch einzutragen:
sudo nano /etc/modules
i2c-dev
jetzt noch den pi user in die i2c gruppe aufnehmen (damit der das auch nutzen darf)
sudo adduser pi i2c
dann rebooten...
wenn dann das radio modul richtig angeschlossen ist, kann man hoffentlich nach aufruf von
i2cdetect -y 1 eine 10 und eine 11 sehen:
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: 10 11 -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: 60 -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
so. fast fertig. jetzt noch das kleine
c radio programm kompilieren mit
gcc -o radio radio.c -lwiringPi
und dann testen:
gpio load i2c
./radio 98.7
für die ausgabe der prozessorauslastung bediene ich mich der
psutil programme
sudo apt-get install python-pip python-dev
sudo pip install psutil