Table of Contents
RocNetNode Raspbian-Paket
Einführung
Es wird ein RocNetNode-Plug&Play-Installations-Paket zusammen gestellt, das alles enthält was, für die Konfiguration und den Betrieb erforderlich ist.
Raspbian
Das Installations-Ziel ist Raspbian und lässt sich nicht auf Debian installieren.
Der folgende Fehler tritt auf, wenn eine Installaton auf Debian versucht wird:
dpkg: error processing rocnetnode-5906-raspbian-armhf.deb (--install): package architecture (armhf) does not match system (armel)
Es wird dringend empfohlen, Raspbian zu verwenden, weil es für den Rasberry Pi optimiert ist und dafür eine bessere Leistungsfähigkeit hat.
Paket-Inhalt
Beschreibung | Datei |
---|---|
RocNetNode-Binary | /opt/rocnet/rocnetnode |
Bibliotheken | /opt/rocnet/dcc232.so /opt/rocnet/sprog.so /opt/rocnet/rfid12.so |
Standard-Einstellungen | /opt/rocnet/rocnetnode.ini |
Start-Skript | /opt/rocnet/rocnetnode.sh |
Update-Skript | /opt/rocnet/update.sh |
Daemon-Skript | /etc/init.d/rocnetnoded |
Konfigurieren der I2C-Module | postinst |
Konfigurieren des RocNetNode als Dienst im "run level 2 und 3" | postinst |
Raspi-Basis-Einstellungen für Rocnetnode
sudo raspi-config
- SSH für Remote-Wartung aktivieren
- optional: Passwort ändern
- I2C-Schnittstelle für Kommunikation mit PIxx aktivieren
- Serielle Schnittstelle für RFID-Kommunikation aktivieren
Herunterladen & Installieren
Per ssh
oder einer direkten Verbindung:
wget https://wiki.rocrail.net/rocrail-snapshot/RocNetNode-armhf.deb sudo apt install ./RocNetNode-armhf.deb sudo reboot
Standard-Login: user=pi, password=raspberry |
Hinweis: Die Standard-Tastatur-Belegung ist Englisch. (QWERTY)
Upgrade
Speziell nach dem ersten Ausrollen werden Upgrades manchmal wegen Fehlerbehebungen und zusätzlicher Funktionalität benötigt.
Das wird einfach in vier Schritten erledigt:
sudo service rocnetnoded stop wget https://wiki.rocrail.net/rocrail-snapshot/RocNetNode-armhf.deb sudo apt install ./RocNetNode-armhf.deb sudo service rocnetnoded start
Herunterfahren
Arbeitsbereich
Beim Herunterfahren von "Rocview & Server" erfolgt eine zweite Abfrage nach dem Herunterfahren aller RocNetNodes, wenn RocNet eine der Zentralen im Rocrail-Server ist.
Konfigurations-Dialog
Siehe: RocNetNode-Konfiguration → Herunterfahren
Terminal
sudo service rocnetnoded stop
Versorgung abschalten
Dies ist nicht der bevorzugte Weg, RocNetNodes herunterzufahren, weil das nicht zum Rocrail-Server gemeldet wird und im schlimmsten Fall Konfigurations-Einstellungen verloren gehen können.
Aber manchmal kann ein unerwünschter Spannungs-Ausfall geschehen und sollte normal nicht zu irgendwelchen Problemen führen.
Auto startup
sudo cp ~/Rocrail/rocnetnode/package/rocnetnoded /etc/init.d/rocnetnoded sudo chmod 755 /etc/init.d/rocnetnoded sudo chmod 755 /opt/rocnet/rocnetnode.sh sudo update-rc.d rocnetnoded defaults
Zur Wieder-Installation nach Modifizieren des rocnetnoded
-Scripts, muss es zunächst entfernt werden:
sudo update-rc.d rocnetnoded remove
Andernfalls tut der Befehl nichts, außer nur Warnungen anzuzeigen.
Run levels
Event | Levels |
---|---|
Start | 2, 3 |
Stop | 0, 1, 6 |
Manuell Start/Stop
Der RocNetNode kann mit folgendem Dienst-Befehl manuell gestartet und gestoppt werden:
sudo service rocnetnoded stop
Modifikationen
Hosts
Die letzte Zeile in Datei /etc/hosts
(127.0.1.1 raspberrypi
)
127.0.0.1 localhost ::1 localhost ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters 127.0.1.1 raspberrypi
muss gelöscht sein.
Dies ist erforderlich, um die reale IP-Adresse dieses Knotens abzurufen.
I2C
Siehe: I2C-Vorbereitungen
Dies kann nur mit dem sudo -Befehl aktiviert werden. |
Die Module aus der /etc/modprobe.d/raspi-blacklist.conf
durch Auskommentieren entfernen (#
am Beginn folgender Zeilen einfügen):
# blacklist spi and i2c by default (many users don't need them) #blacklist spi-bcm2708 #blacklist i2c-bcm2708
Diese dann in /etc/modules
hinzufügen:
# /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 i2c-bcm2708 i2c-dev
Prüfen des I2C-Bus
I2C-Tool aufrufen:
sudo apt-get install i2c-tools
Prüfen des Bus 1 mit 2 x GCA-Pi02:
pi@raspberrypi ~ $ sudo i2cdetect -y 1 0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- -- -- -- -- -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 20: 20 21 22 23 -- -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 70: -- -- -- -- -- -- -- --
Häufige Fragen
- Können sowohl Rocrail-Server als auch RocNetNode auf dem selben Raspberry Pi installiert sein?
- Ja.
- I2C funktioniert nach einem Raspbian-Update nicht mehr.
Links
- http://downloads.raspberrypi.org (Auch vorherige Raspbian-Versionen.)
Technische Einzelheiten
Die Bauteile für grundsätzliche Ein-/Ausgabe sind MCP23017 und die Adafruit 16-Kanal-LED/Servo-Baugruppe. Die Adafruit-Baugruppe beruht auf dem PCA9685. Datenblätter sind leicht für beide zugänglich. Es sind sehr viele verschiedene I2C-ICs verfügbar, aber meistens nur in SMD.
- Die Adafruit-Baugruppe ist z.B. hier erhältlich: http://www.adafruit.com/products/815
Sicherheit
Sicherheit des Rpi (Raspberry Pi) ist ein Punkt, der nicht gut abgedeckt wird. Weil auf dem Rpi eine Standard-Version von Linux läuft, treffen Sicherheits-Maßnahmen für Linux auch auf dem Rpi zu. Einige der Maßnahmen die vorgenommen werden sollten sind:
- Ändern des Standard-Passwortes 'pi'.
- Unnötige Dienste wie z.B. cups (print) usw. abschalten.
Es gibt noch weitere präventive Maßnahmen, die vorgenommen werden können oder sollten, aber diese liegen außerhalb der Betrachtungen dieser warnenden Hinweise.