-
Notifications
You must be signed in to change notification settings - Fork 2
Installation
ACHTUNG Diese Anleitung ist sicher noch unvollständig. Benutzung auf einene Gefahr. Wenn dein Camper auf einmal ohne dich weg fährt, übernehme ich keine Verantwortung ;)
Zuerst brauchen wir eine Micro SD Karte für das Betriebssystem. Ich habe das ganze auf Rasbian Lite aufgebaut. Ihr könnt klar auch das "norale" Raspbian nehmen oder ein anderes Linux. Mit dem normalen könnt ihr die Installation genauso aufbauen wie mit dem Lite, bei einem anderen Linux müsst ihr u.U. Anpassungen vornehmen. Das Lite habe ich verwendet weil ich keine Grafische Oberfläche benötige und mir so den Platz und die Rechenleistung sparen kann. Für dieses Projekt braucht ihr auch keine Grafische Oberfläche. Wenn ihr Sie jedoch wollt, nehmt das normale Raspbian.
Unter https://downloads.raspberrypi.org/raspbian_lite_latest könnt ihr das Image von Raspbian Lite herunter laden.
Die Zip Datei müsst ihr zuerst entpacken. Unter Windows ist das ja kein Problem ;) Ihr braucht anschließend die enthaltene .img Datei.
Nun braucht ihr noch ein Tool um das Image auf die SD Karte zu bekommen. Ich nutze dafür gerne Etcher weil es so schön einfach und übersichtlich ist ^^
Geht auf https://etcher.io und sucht euch den Download passend zu eurem Betriebssystem aus. Im Normalfall sollte das richtige System bereits ausgewählt sein.
Wenn das Image heruntergeladen und Etcher gestartet ist, wählt ihr zuerst die .img Datei aus Select Image
und dann die SD Karte Select Drive
. Nun noch ein Klick auf Flash!
und los geht's.
Das ganze Prozedere dauert nun ein paar Minuten, lasst euch den Kaffee schmecken ;)
Nachdem das Image fertig geschrieben ist, richten wir schon mal den SSH Zugang sowie das WLAN ein (falls benötigt).
Ziehe hierzu einmal die SD Karte aus dem Rechner und stecke sie wieder ein damit sie neu erkannt wird.
Jetzt sollte ein neues Laufwerk mit dem Namen boot
auftauchen.
Hierin legen wir nun eine Datei an die ssh heißt. Keine Erweiterung und kein Inhalt. Heißt auch keine ssh.txt o.Ä., der Name darf wirklich nur ssh sein ;)
Die WLAN Einrichtung ist schon einwenig kniffeliger aber nicht unmöglich :) Hierfür legen wir eine Datei wpa_supplicant.conf auf der SD Karte an mit folgendem Inhalt:
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
country=DE
network={
ssid="DEINE-SSID"
psk="PASSWORT"
key_mgmt=WPA-PSK
}
DEINE-SSID
ist die SSID (WLAN Name) deines WLANs in das du den RasPI hängen willst.
PASSWORT
ist das zugehörige Passwort.
Jetzt ab mit der Karte in den Raspberry PI und Strom dran. Am einfachsten machst du das beim ersten mal mit einem Monitor und einer Tastatur damit du siehst wenn irgendwelche Fehler auftretten.
Herzlichen Glückwunsch, der erste Schritt ist erledigt, dein Raspberry läuft jetzt unter Raspbian :)
Die Zugangsdaten für den Raspberry sind jetzt noch:
- Benutzer: pi
- Passwort: raspberry
Vergesse nicht die noch zu ändern!
Ab jetzt gehts ans eingemachte, jetzt installieren und konfigurieren alle notwendigen Dienste und richten OpenCamper ein.
Schon richtig, hört sich erstmal blöd an aber zuerst aktualisieren wir die Paket quellen und machen ein System Update.
sudo apt-get update && sudo apt-get upgrade
Was uns noch fehlt ist die i2c Schnittstelle, die wird von OpenCamper genutzt um den Gyro abzufragen.
sudo raspi-config
In dem Menü wählen wir zuerst die Interfacing Options (5) aus
und dann I2C (P5)
mit zweimal Enter bestätigen wir das ganze nun.
Das war es hier auch schon, mit Finish
verlassen wir raspi-config wieder.
Zum übernehmen müssen wir den Raspi einmal neu starten.
sudo apt-get install -y php7.0 php7.0-mysql php7.0-xml mysql-server apache2 python3 i2c-tools python3-smbus python3-pip mosquitto git screen gpsd gpsd-clients python-gps composer influxdb
sudo pip3 install paho-mqtt requests psutil pygatt "pygatt[GATTTOOL]" pexpect
Nun können wir OpenCamper runterladen. Nachdem GIT eine geniale Sache ist, nutzen wir das auch dafür ;)
sudo git clone https://github.com/mcules/opencamper.git /opt/opencamper
cd /opt/opencamper/www
composer install
Für Apache2 gibt es das rewrite Modul, das brauchen wir für OpenCamper, also aktivieren wir das gleich mit und kopieren die Konfiguration.
sudo cp /opt/opencamper/install/apache.conf /etc/apache2/sites-available/000-default.conf
sudo a2ensite 000-default
sudo a2enmod rewrite && sudo systemctl restart apache2
sudo chown -R www-data:www-data /opt/opencamper
Konfigs gibt es auch ein paar, die müssen jetzt erstmal kopiert werden:
sudo mv /opt/opencamper/config.json.default /opt/opencamper/config.json
sudo mv /opt/opencamper/www/application/config/config.php.template /opt/opencamper/www/application/config/config.php
sudo mv /opt/opencamper/www/application/config/database.php.template /opt/opencamper/www/application/config/database.php
NEWUSER
solltest du mit einem Benutzernamen ersetzen den du dir selbst ausdenken kannst ;)
PASSWORD
ebenfalls mit einem sinnvollen Passwort ersetzen.
sudo mysql -uroot
CREATE DATABASE opencamper;
CREATE USER 'NEWUSER'@'localhost' IDENTIFIED BY 'PASSWORD';
GRANT ALL PRIVILEGES ON opencamper.* TO 'NEWUSER'@'localhost';
FLUSH PRIVILEGES;
quit
sudo mysql -uroot --database opencamper < /opt/opencamper/install/database.sql
Zuerst öffnet ihr die Datei /opt/opencamper/www/application/config/config.php und legt eine Domain fest. Für den Anfang reicht hier die IP Adresse eures Raspberrys. Ihr könnt aber auch eine Domain dafür anlegen wenn ihr eine habt ;)
Die IP Adresse 10.10.31.2 ist die IP die ihr von eurem Router für den RasPI erhalten habt. Dies bitte im Router nachschauen und anpassen.
$config['base_url'] = 'http://10.10.31.2/';
In dieser Datei müsst ihr nun eure Zugangsdaten zur Datenbank eintragen: /opt/opencamper/www/application/config/database.php
Wichtig sind hier folgende Felder:
- hostname (meistens localhost)
- username
- password
- database
Damit ist das Webinterface (erstmal) fertig eingerichtet. Anmelden kannst du dich jetzt schon mit dem Benutzer [email protected]
und dem Passwort admin
.
Im großen und ganzen war es das jetzt auch schon. Die Scripts starte ich meist in einem Screen, das ist einfacher zum debuggen.
z.B. das Gyro Script:
screen -dm -S gyro python3 /opt/opencamper/gyro.py
Ich werde aber auch noch was inst Webinterface mit einbauen wo man die Dienste aktivieren und deaktivieren kann. Bis dahin musst du halt in die Commandozeile.
Für die paar Tage Arbeit die da bisher drinnen stecken, muss das so aber auch erstmal ausreichen, sonst gibt es ja für später keine Verbesserungen mehr ;)