OWFS HowTo

Från Temperatur.nu
Hoppa till navigeringHoppa till sök

Här följer en beskrivning för att komma igång med OWFS

Bakgrund

Jag har av egen erfarenhet insett att det inte är så lätt att hitta alla pusselbitar för att lyckas och sen lägga dom i rätt ordning. All information man behöver finns där ute men det är just att sätta ihop det till en komplett lösning som är problemet. Så därför tänkte jag här försöka sammanställa allt jag har hittat och gjort för att få det att funka. Jag är långt ifrån någon guru på Linux så det kan givetvis finnas felaktigheter!

Mål

Att få igång 1-wire nät med OWFS på Ubuntu.

Programvaror

  • Ubuntu server 8.10 (funkar även på 9.10 och Desktop versionen, och Debian Lenny enligt utsago i tråden)
  • OWFS 2.7p10 (funkar även på senare versioner, senaste fungerande enligt utsago i tråden är 2.7p27)

Hårdvara

USB adaptern DS9490R

Beskrivning

Beskrivningen bygger på att du har en helt "ren" installation med Ubuntu server 8.10. Om det inte redan är gjort så ladda ned image-filen från Ubuntu och bränn ut och installera Ubuntu först. Skulle du ha en installation som inte är helt ny så funkar även det säkert men det kan finnas skillnader. Lika så andar versioner av Ubuntu bör fungera.

Efter installationen av Ubuntu, se till att modulerna ds2490 och wire inte laddas. Görs genom att lägga till dom i blacklist.

sudo nano /etc/modprobe.d/blacklist.conf

Längst ned lägg till...

# Prohibit interference with OWFS
blacklist ds2490
blacklist wire

...och spara. Detta kommer att göra att dessa moduler inte kommer att laddas automatiskt för USB-adaptern.

Installera lite paket som behövs för att kunna installera och kompilera OWFS senare.

sudo apt-get update
sudo apt-get install automake autoconf autotools-dev gcc g++ libtool libusb-dev libfuse-dev swig python2.4-dev tcl8.4-dev php5-dev make build-essential

Svara JA på eventuella frågor. (För Debian Lenny så kan även fuse-utils behövas installeras)

Ladda ned OWFS.

cd /usr/src
sudo wget http://ovh.dl.sourceforge.net/sourceforge/owfs/owfs-2.7p10.tar.gz

(som sagt, funkar även på senare versioner enligt utsago, ett tips kan vara att välja den senaste stabila versionen)

Packa upp OWFS

sudo tar -zxvf owfs-2.7p10.tar.gz

Kompilera och installera OWFS

cd owfs-2.7p10
sudo ./configure
sudo make && sudo make install

Skapa katalogen för OFWS att mounta i.

sudo mkdir /mnt/1wire

För att FUSE skall funka så måste vi även lägga till en sak i konfigurationen för den. Öppna konfigurationen för FUSE

sudo nano /etc/fuse.conf

Ändra

#user_allow_other

till

user_allow_other

(ta bort # framör)

Nu skall det bara vara att starta OWFS!

sudo /opt/owfs/bin/owfs -u --allow_other /mnt/1wire/

(Tips, byt ut -u (USB) mot -d /dev/ttyS0 för att använda en seriell adapter istället.)

Kontrollera att det funkar (ändra sensor till vad du har)

cat /mnt/1wire/10.F6877C010800/temperature

Om allt står rätt till så skall det nu komma upp en temperatur på skämren

Se till så att OWFS startar automatiskt vid vid start

För att se till så att OWFS skall starata automatiskt vi start av datorn så får vi lägga till ett lite startscript.

Skapa ett start script i /etc/init.d/

cd /etc/init.d
sudo nano start1wire.sh

Lägg till följande, och spara sen

#!/bin/bash

# Starts OWFS
/opt/owfs/bin/owfs -u --allow_other --usb_regulartime  /mnt/1wire

För att skriptet skall bli körbart måste vi lägga till körrättigheter på det

sudo chmod +x start1wire.sh

Sen för att se till att scriptet körs vid boot

sudo update-rc.d start1wire.sh defaults

Så nu skall OWFS startas automatiskt vid boot!

Fortsätt

För att fortsätta med loggning och att rita graf med RRDtool läs HOWTO: RRDTool på Ubuntu (installera, logga, rita graf)

Som jag skrev ovan, det kan finnas felaktigheter. Hittar ni några så skriv gärna en kommentar så ser jag till att hålla HOWTO'n uppdaterad. Håll till godo!

Källor