PCEngines ALIX/APU Thread

Thread für allgemeine Infos / Fragen / Diskussionen zu den Boards von PCEngines.

Für das Schliesssystem haben wir ja ein APU2 board gekauft.

Nun ist die Frage, welches OS wir installieren sollen. Ich schwanke noch zwischen Debian und Voyage Linux.

Der Vorteil von Voyage Linux wäre v.a. dass alle Treiber für GPIO etc funktionieren. Andererseits mag ich eigentlich Systemd. Ich tendiere aktuell aber trotzdem zu Voyage, es wird auch von PC Engines selber genutzt.

Arch Linux würde auch laufen, ist mir aber zu unstabil für den Produktiveinsatz.

Die Voyage Linux Live-CD habe ich nicht zum Starten gebracht, aber Debian 8.4 (mit serial console patch) installiert gerade!

Tipps und Tricks, gültig unter Debian 8 „Jessie“. Post wird aktualisiert wenn ich mehr erfahre.

Temperatur auslesen

# apt-get install lm-sensors
# sensors
k10temp-pci-00c3
Adapter: PCI adapter
temp1:        +56.5°C  (high = +70.0°C)
                       (crit = +105.0°C, hyst = +104.0°C)

Piepser piepsen lassen

# apt-get install beep
# beep

GPIO Treiber installieren

Es gibt zwei verschiedene GPIO Chips. Wir sind am NCT5104 (J17) interessiert. Der andere ist für LEDs und den Button (S1).

Anscheinend funktioniert der Treiber mit dem Stock 3.16.0-4-amd64 Kernel von Debian Jessie nicht (source).

Zuerst Backports aktivieren:

# Backports repository
deb http://httpredir.debian.org/debian jessie-backports main contrib non-free

Dann den 4.4er Kernel installieren:

# apt-get update
# apt-get install linux-image-4.4.0 linux-headers-4.4.0
# systemctl reboot

Nach dem reboot Kernelversion prüfen:

$ uname -r

Treiberrepo klonen:

$ sudo apt-get install git build-essential
$ git clone https://github.com/DEvil0000/linux-gpio-nct5104d -b LinuxKernel_3_18_API
$ cd linux-gpio-nct5104d/
$ make

Treiber direkt laden:

# insmod gpio-nct5104d.ko

Oder alternativ fix installieren:

# make -C /lib/modules/$(uname -r)/build M=$(pwd) modules_install
# depmod
# modprobe gpio-nct5104d

Die /var/log/kern.log sollte etwa so aussehen:

Apr 21 23:46:18 denholm kernel: [  412.479431] gpio-nct5104d: Found nct5104d at 0x2e chip id 0xc452
Apr 21 23:46:18 denholm kernel: [  412.479587] gpio-nct5104d: platform_driver_register
Apr 21 23:46:18 denholm kernel: [  412.480250] gpio-nct5104d: Device added

Der GPIO-Treiber ist nun installiert und geladen.

GPIO Belegung

Ich betreibe auf den ALIX/APU Boards nanoBSD.
Hab mir ein freeBSD angepasst, funktioniert wirklich super.

Wenn Interesse besteht, ich habe ein nanoBSD (freeBSD 11) Image mit dem nctgpio Modul für den nct5104d GPIO.

Das Image hat eine Grösse von etwa 240MB, SSH Server, openntpd, htop, und vieles mehr. Es können auch Jails installiert werden. Zudem ist Zabbix Agent installiert, um die Anlage zu überwachen.

Das IDS System Aide wird einmal pro Stunde gestartet und gibt bei einer Inkonsistenz einen Warnton aus.
Das ganze System wird nur read-only gemounted und ist somit bei Stromausfällen sehr resistent und schont die SSD oder SD Karte.

Nachtrag: Image Grösse 1Gb, davon etwa 240 MB belegt.

Cool. Ich kenne mich mit FreeBSD leider nicht sonderlich gut aus, deshalb bleibe ich normalerweise bei Debian.

Ich bin ein Fan von freeBSD.

Im “embedded” und Server Bereich finde ich es eines der besten Systeme. Die Dokumentation ist hervorragend und man kann sagen, dass es nahezu alle Programme welche es auf Linux gibt ebenfalls vorhanden sind.

Dinge wie Jails, Carp, sind einfach zu konfigurieren. Als Linux Mensch genügt ein wenig Einarbeitungszeit und man kann mit BSD vieles machen.

Gerade wenn man programmiert, lernt man BSD sehr schnell schätzen.

lg roema