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


Herunterladen & Installieren

Per ssh oder einer direkten Verbindung:

wget http://rocrail.net/software/rocrail-snapshot/raspi/rocnetnode-xxxx-raspbian-armhf.deb
sudo dpkg -i rocnetnode-xxxx-raspbian-armhf.deb
sudo reboot

Das “xxxx” muss durch die gewünschte Revision-Nummer ersetzt werden.

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 http://rocrail.net/software/rocrail-snapshot/raspi/rocnetnode-xxxx-raspbian-armhf.deb
sudo dpkg -i rocnetnode-xxxx-raspbian-armhf.deb
sudo service rocnetnoded start

Das “xxxx” muss durch die gewünschte Revision-Nummer ersetzt werden.

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 gemneldet wird und im schlimmsten Fall Konfigurations-Einstellungen verloren gehen können.
Aber manchmal kann ein ungewünscher Spannungs-Ausfall geschehen und sollte normal nicht zu irgendwelchen Problemen führen.

Vorkonfigurierte SD-Card

Nur in Kombination mit einer GCA-Pi01-Bestellung.

Die RocNetNode-Version ist nicht immer aktuell. Deshalb sollte nach Verbinden des RocNetNode mit Rocrail ein Update durchgeführt werden, bevor weiter vorgegangen wird.

SD-Karten-Abbild (SD-Card-Image)

sd.jpg

:!: Das Erste, was zu tun ist, ist ein Update der RocNetNode-Software auf der SD-Karte.

Raspberry Pi 2 Model B

Eine Micro-SD-Card mit 8GB Kapazität wird eine gute Wahl sein.


Raspberry Pi 1 Model B/B+

Dieses Image benötigt mindestens eine Kapazität von mindestens 4GB (3.965.190.144 Bytes) auf einer SD-Card.


Vorherige Images

Dieses Image benötigt mindestens eine Kapazität von 3.974.103.040 Bytes. (Samsung SDHC 4GB Class 4)

:!: Einige 4GB-Karten haben eine zu geringere Kapazität, wie etwa die SanDisk SDHC 4GB Class 4: 3.965.190.144 Bytes


Wie ein Image auf einer SD-Card installiert wird

Wenn unbekannt ist, wie ein Image auf einer SD-Karte installiert wird, dies hier lesen:

Linux

sudo umount /dev/sdx1
sudo dd bs=4M if=rocnetnode-bplus-wheezy-raspbian.img of=/dev/sdx

/dev/sdx durch das mit diesem Befehl gefundene Gerät ersetzen:

df -h


Die Ausgabe könnte so aussehen:

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda2       292G   33G  245G  12% /
none            4,0K     0  4,0K   0% /sys/fs/cgroup
udev            899M  4,0K  899M   1% /dev
tmpfs           182M  1,4M  181M   1% /run
none            5,0M     0  5,0M   0% /run/lock
none            910M   80K  910M   1% /run/shm
none            100M   60K  100M   1% /run/user
/dev/sda1        93M  118K   93M   1% /boot/efi
/dev/sdb2       2,6G  2,1G  427M  83% /media/rocrail/5d18be51-3217-4679-9c72-a54e0fc53d6b
/dev/sdb1        56M  9,5M   47M  17% /media/rocrail/boot

In diesem Fall ist das Gerät /dev/sdb die SD-Card.
Unbedingt sicherstellen, keine andere, außer der eingesetzte SD-Card zu überschreiben!


Setup aus den Sourcen

Dies überspringen, wenn das Paket erfolgreich installiert wurde.

Build

bzr checkout --lightweight https://launchpad.net/rocrail Rocrail
cd Rocrail
make fromtar
sudo make install
cd rocnetnode
sudo make install

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

  1. Können sowohl Rocrail-Server als auch RocNetNode auf dem selben Raspberry Pi installiert sein?
    • Ja, aber z.Zt. muss der Server mit “sudo make install” installiert werden, weil beide Installations-Pakete kollidieren. (In 5966 korrigiert.)
  2. Kann Ich RocNetNode verwenden, ohne eine GCA-Pi01-Baugruppe anzuschliessen?
    • Ohne einen Pullup-Widerstand am Taster-Pi01-Eingang, GPIO25, wird RocNetNode den RasPi nach 5 Sek. herunterfahren.
  3. I2C funktioniert nach einem Raspbian-Update nicht mehr.


Links

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 leich für Beide zugänglich. Es sind sehr viele verschiedene I2C-ICs verfügbar, aber meistens nur in SMD.


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:

  1. Ändern des Standard-Passwortes 'pi'.
  2. 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.


Personal Tools