editediteditedit

1wire sběrnice a maxim teploměry



Nejdříve nastavíme jádro. Je potřeba vybrat pouze ty položky, které máme a zkompilovat jako moduly, jinak system začne lagovat.:
Kd: jadro
Device Drivers  --> Dallas's 1-wire bus -->
    <M> Dallas's 1-wire support
        1-wire Bus Masters  --->
            <M> DS2490 USB <-> W1 transport layer for 1-wire
Dále budeme potřebovat fuse pro virtuální filesystém:
Kd: fuse
emerge sys-fs/fuse
modprobe fuse
Pro připojení na 1wire sběrnici potřebujeme owfs. To se v portage tree nenachází, budeme ho proto muset stáhnout ( http://sourceforge.net/projects/owfs/ ) a zkompilovat sami. Doporučuju stáhnout nejnovější verzi.
Kd: owfs - instalace
./bootstrap
./configure --disable-owphp --disable-owpython --disable-owperl --disable-owserver --disable-owhttpd --disable-owftpd --enable-usb
make && make install
Pokud z nějakého důvodu nejde posledni verze zkompilovat, sáhneme po nižší. Po nainstalování owfs už můžeme vyzkoušet jestli vše funguje. Připravíme adresář pro mount filesystému (např. /mnt/1wire) a připojíme do něj sběrnici:
Kd: mount
/opt/owfs/bin/owfs -u /mnt/1wire
Pokud vše proběhlo bez problému, můžeme číst teploty z 1wire teploměrů (DS18S20 začínají čislem 10. a DS18B20 číslem 28.):
Kd: temp example
cat /mnt/1wire/28.29F9A4000000/temperature
Pokud se z nějakého důvodu sběrnice nepřipojí, můžeme si vypsat log a zkusit najít řešení na googlu.
Kd: log
/opt/owfs/bin/owfs /mnt/1wire/ -u --error_print 0 --error_level 9
Nejjednodušší však bude nainstalovat jinou verzi owfs a je velice pravděpodobné že některá určítě fungovat bude. Mě funguje verze 2.4p9 (v době psaní tohoto howto je k dispozici 2.6p5, ta mi ale nešla ani zkompilovat) + fuse 2.6.3 na jádře 2.6.20-gentoo-r8.
Wiki engine by dan. Content by marv.