linslot - Software

Voraussetzungen

Arduino

IO/Warrior

Build

Auspacken

tar xvjf linslot-x.x.x.tar.bz2
cd linslot

Hardware wählen

In der Datei linslot.pro die Hardware wählen (Arduino/IO-Warrior), einfach die
andere HW auskommentieren. Beispiel:

#interface = iowarrior
interface = arduino


Compilieren

qmake    # je nach QT-Installation ggf. qmake-qt4 (wichtig ist das qmake von qt4.x verwendet wird)
make -s

Build / Upload des Arduino (ATmega) Codes

Der Build Prozess ist nur nötig wenn man am Code des ATmega Programmteils etwas verändert hat, ansonsten kann man zum nächten Schritt (upload) übergehen (das aktuelle HEX File ist bereits im Tarball enthalten).

Vor dem build muss im Makefile (avr/Makefile) der Installationspfad der Arduino Library angegeben werden (Zeile: ARDUINOBASE = ....)
cd linslot/avr
make clean
make -s

Arduino an USB anschließen, den USB Port im Makefile einstellen (Zeile: PORT = /dev/ttyUSB0)
Nun noch der Upload

make upload

Hinweis:
Sollte der upload nicht starten hilft bei mir das gleichzeitige 'kurze' betätigen
der Reset-Taste auf dem Arduino (gleichzeitig mit dem starten von 'make upload')

Installation

System

Das Kernel Modul solle nach der Installation automatisch geladen werden.

Arduino:        Modul 'ftdi_sio'
IO/Warrior:    Modul 'iowarrior'

IO/Warrior

Um den Warrior nun immer unter dem gleichen Device File ansprechen zu können
ist es hilfreich eine entsprechende udev-Regel anzulegen. Ein Beispiel wie es unter
den meisten aktuellen Distributionen funktionieren sollte liegt im Ordner udev.
Einfach die Datei nach /etc/udev/rules.d/ kopieren:
cp ./udev/10-iowarrior.rules  /etc/udev/rules.d/

Programm

cd linslot
su root
mkdir -p /usr/local/share/linslot/
cp -a pixmap sound /usr/local/share/linslot/
chmod -R a+rX /usr/local/share/linslot/
cp linslot /usr/local/bin
chmod 755 /usr/local/bin/linslot

Start

linslot

oder ohne Anschluss externer Hardware (Arduino, IO/Warrior, ...) im Testbetrieb

linslot -t

dann gibt es ca. alle zwei Sekunden ein generisches Durchfahrtsignal.

Windows

Das Programm sollte ebenso unter Windows laufen, dort stehen ebenso die verwendeten Libraries (QT4) und Treiber zur Verfügung.Eventuell sind  kleinere Anpassungen nötig, generell habe ich die Erfahrung gemacht, dass mit QT entwickelte Programme ohne viel Aufwand unter Windows laufen.