StokerKontrol på Raspberry PI

12/09-2012

StokerKontrol kræver som bekendt en PC, og den skal helst være tændt hele tiden, hvis det skal være rigtig sjovt. Men det kan være dyrt at ville spare lidt på træpillerne. Et “SparOMeter” lånt i den lokale sparekasse viste, at det ville koste et sted mellem 5-700 kroner årligt at holde fyrrumspc’en kørende – vel og mærke, hvis skærmen forblev slukket.

Heldigvis er det blevet populært at lave små dedikerede enheder, der muligvis ikke sprudler af kræfter, men præcis har nok krudt til at løse en enkelt opgave. En Raspberry PI, som nu har erstattet fyrrumspc’en, er et godt eksempel på sådan en dedikeret enhed, og så koster den kun $25, eller DKK 307,11, som jeg endte med at give. Der skal dog lidt mere til for at komme i gang. Et SD-kort, en USB-oplader (jeg bruger en fra en iPhone) som strømforsyning, og et microUSB-kabel er minimum. Man kan vælge at købe en kasse til PI’en (eksempelvis fra modmypi.org), men det er strengt taget ikke nødvendigt (men den skal dog nok beskyttes mod støv). Hvis du handler fornuftigt, er du i gang for en 500-mand. Raspberry PI sælges efterhånden flere steder herhjemme, men den kan i hvert fald købes hos dk.rs-online.com.

Installation af Raspbian

Inden PI’en kan tages i brug, skal styresystemet Raspbian “installeres” på SD-kortet. Hvordan det gøres beskrives i begynderguiden. Raspbian er en linux-distribution baseret på Debian, som er lavet specielt til Raspberry PI. Der findes andre linux distributioner til Raspberry PI, men Jens har hjulpet med at lave nogle patches til StokerKontrol på Raspbian, så vælg den for en sikkerheds skyld. Første gang PI’en startes op, skal den være tilsluttet skærm og tastatur, da SSHd ikke er slået til som standard. Det kan imidlertid slås til fra opstartsmenuen, og herefter er skærm og tastatur ikke nogen nødvendighed.

Installation af VNC (valgfrit)

Hvis du vil have din PI kørende uden en skærm, er det nødvendigt at køre en VNC server på den. For det første skal det til for at kunne fjernstyre StokerKontrol, og for det andet kan StokerKontrol slet ikke starte uden en “skærm”.

Installer serveren med flg.:

$ sudo apt-get install vncserver

Når installationen er gennemført startes serveren med:

$ vncserver

Du kan nu forbinde til din PI på dens ip-adresse på port 5901 med en VNC klient (mange sværger til TightVNC).

Installation af Java

StokerKontrol kræver Java, så det skal installeres med:

$ sudo apt-get install openjdk-6-jdk

Installer i samme forbindelse RXTX (serial driver til Java):

$ sudo apt-get install librxtx-java

Synkronisering af ur

Det vigtigt at uret i PI’en passer. Sørg derfor for at den rigtige tidszone er valgt:

$ sudo dpkg-reconfigure tzdata

Installation af StokerKontrol

Nyt 23/05-2013: Har du problemer med at opdatere værdier fra StokerCloud, skal du når det hele er installeret kopiere dette patch til roden af din StokerKontrol installation (så den overskriver eksisterende filer), virker kun på version 3.25 til Linux: 

Nyt 23/08-2013: Inkluderet fix, som tillader 4.99 chips at kommunikere med StokerCloud fra Raspberry pi. 

http://stokersoft.com/download/linux/sk325-stokercloud-patch.zip

Hent seneste version af StokerKontrol til linux på www.stokerkontrol.dk og pak den ud i mappen /home/pi/sk. Download derefter pakken med patch og shared library med flg.:

$ curl -O http://www.stokersoft.com/download/raspberrypi/raspberrypi.tar.gz

Og pak filen ud:

$ tar -xvf raspberrypi.tar.gz

Kopier filen libstokerlink-nonstatic.so:

$ cp ~/stokersoft/libstokerlink-nonstatic.so /usr/lib/jvm/java-6-openjdk-armhf/jre/lib/arm/libstokerlink.so

Og patch StokerKontrol:

$ cp -r ~/stokersoft/skpatch/* ~/sk/src

Opsamling

StokerKontrol kører på Raspberry PI, og har gjort det i nogle få dage. Det er hårdt ved PI’en at køre både et grafisk miløj og StokerKontrol, så man skal have virkelig god tålmodighed. Det tager nemt et par minutter fra man klikker på et menupunkt til der sker noget på skærmen. Nogen vil sige, at det er ubrugeligt, men kan man leve med at bruge StokerCloud, tror jeg det er helt fint i længden.

StokerKontrol kan optage så meget CPU, at man ikke kan forbinde til PI’en via SSH. Det kan derfor være god idé at fortælle StokerKontrol, at det skal opføre sig “nice”:

$ nice -n 18 ./run

Nice starter StokerKontrol med en lavere prioritet end f.eks. SSHd, så du altid kan komme i kontakt med din PI. Det burde ikke have indflydelse på stabiliteten af StokerKontrol.

 

StokerKontrol startet op på en standardinstallation af Raspbian på Raspberry PI

Comments are closed.