Digitális hőmérő Debian alatt mini-HOGYAN

A HupWiki-ből...

Ez a dokumentum lépésről lépésre leírja, hogyan telepítsünk szabadon hozzáférhető megoldásokon alapuló hőmérő-rendszert Debian Sarge-ra.

Tartalomjegyzék

Bevezető

Szeretnéd egyszerre tudni, hány fok van a számítógéped házában, a szobában, a fürdőszobában és az erkélyen? Akkor erre a dokumentumra van szükséged.

IRC-n való beszélgetés közben mondta Drewie, hogy neki van egy hasonló rendszere. Megtetszett a dolog, ezért gondoltam, nekem is kell egy ilyen.

A felelősség teljes kizárása

Semmilyen felelősséget nem vállalok a dokumentum tartalmával kapcsolatban. Mindenki a saját felelősségére használja az elgondolásokat, példákat. Mivel ez egy új dokumentum, lehetnek benne hibák és pontatlanságok, amik akár a rendszer károsodásához is vezethetnek. Ezért mindenki figyelmesen járjon el, és habár ez különösen valószínűtlen, a szerző semmilyen felelősséget nem vállal érte.

Sem a szerző, sem a terjesztők, sem más közreműködő munkatárs nem felelős semmilyen módon a fizikai, pénzügyi, morális vagy bármely más típusú kárért, amit a szövegben ajánlott dolgok követése okozott.

Szerzői jog

Jelen dokumentum eredeti szerzője Csécsy László (Boobaa). Copyright (c) 2004 Csécsy László (Boobaa). A dokumentum szabadon terjeszthető és/vagy módosítható a GNU FDL szerint (akárcsak e wiki összes cikke).

Köszönetnyilvánítás

A következő embereknek, illetve csoportoknak szeretnék köszönetet mondani:

  • a #debian.hu Freenode csatorna látogatóinak, különösen Drewie-nek;
  • Stefan Blechschmidt-nek az eredeti leírásért (www.tldp.org);
  • a Linux NetMag-nak az érthetőbb leírásért (www.linuxnetmag.com);
  • Brian C. Lane-nek a DigiTemp-ért (www.digitemp.com).

Beszerzendő alkatrészek

A Maxim/Dallas Semiconductor gyárt (többek között) hőmérő kütyüket is. A www.maxim-ic.com címen lehet tőlük rendelni. A következőkre lesz szükség:

  • DS18S20: hőmérő (ahány helyen akarsz hőt mérni, annyit);
  • DS9490R: USB-s csatlakozó a hőmérőkhöz.

Összeszerelés

Minden egyes hőmérő két szélső lábát kösd össze, és kösd az USB-s kütyü (hátulról nézve és balról számolva) harmadik lábára. A hőmérők középső lábát az USB-s kütyü negyedik lábára kösd. (Tehát az összes hőmérőt párhuzamosan kell kötni; az összes drót hossza elvileg elérheti a 100 métert is.) Az így elkészült hálózatot dugd be valamelyik USB portba.

Telepítés

Tedd fel a DigiTemp programot:

apt-get install digitemp

Mivel a Debian elég bután kezeli az USB-s eszközök jogosultságait, hozd létre az /etc/hotplug/usb/libdigitemp.usermap fájlt az alábbi tartalommal:

libdigitemp 0x0003 0x04fa 0x2490 0x0000 0x0000 0x00 0x00 0x00 0x00 0x00 0x00 0x00000000

Ez az egész egyetlen sor legyen. Hozd létre ugyanott a libdigitemp nevű fájlt is a következő tartalommal:

#!/bin/bash
GROUP=users
if [ "$ACTION" = "add" ] && [ -f "$DEVICE" ]
then
  # check if $GROUP really exists
  if getent group $GROUP > /dev/null; then
    chmod 660 "$DEVICE"
    chown root.$GROUP "$DEVICE"
  fi
fi

Mindezek után indítsd újra a hotplug szolgáltatást:

/etc/init.d/hotplug stop
/etc/init.d/hotplug start

Ezután bármely felhasználó (aki tagja a users csoportnak) le tudja olvasni a hőmérsékletet.

A hőmérők inicializálása

A tényleges leolvasás előtt a rendszert inicializálni kell, mely során a DigiTemp felderíti az elérhető eszközöket:

digitemp -a -i

A hőmérők leolvasása

A hőmérőzést a következőképpen indítsd el:

digitemp-DS2490 -l ~/.digitemp-data -n 0 -d 60 -a -q &

Ekkor kiírja, milyen hőmérőket talált, majd elmegy a háttérbe végezni a dolgát: végtelen ciklusban percenként leolvassa az összes elérhető hőmérőt, és a saját könyvtáradban levő .digitemp-data fájlba írja a hőmérsékleteket.

Elforduló hibák

Másik modul használja az eszközt

Ha ezt a hibát kapod inicializáláskor:

# digitemp_DS2490 -a -i
DigiTemp v3.3.2 Copyright 1996-2004 by Brian C. Lane
GNU Public License v2.0 - http://www.brianlane.com
Found DS2490 device #1 at 001/003
could not claim interface 0: Device or resource busy
USB ERROR: Failed to claim interface

Akkor valószínűleg be van töltve a ds9490r modul, ami fogja a hőmérőt. Távolítsd el egy rmmod ds9490r-rel!

Személyes eszközök