LINUXZONE






 >> Hlavní stránka

(1751/28.09.2010)


 >> Administrace

(161/05.08.2010)


 >> Literatura

(312/14.09.2010)


 >> Bezpečnost

(347/17.09.2010)


 >> Programování

(307/19.04.2010)


 >> Distribuce

(98/16.09.2010)


 >> Síťování

(86/03.06.2010)


 >> Lokalizace

(10/15.09.2004)


 >> Aplikace

(176/12.08.2010)


 >> Multimedia

(32/31.03.2006)


 >> Hardware

(45/02.03.2007)


 >> Začínáme

(229/09.09.2010)


 >> Aktuálně

(564/20.09.2010)


 >> RELAX

(213/28.09.2010)


 >> Jinde vyšlo

přehled ostatních serverů




 Coolhousing




Coolhousing - Vas poskytovatel dedikovanych serveru




 Přihlášení




Login:
Heslo:
 uložit v prohlížeči


Nejste-li ješte zaregistrováni, můžete tak učinit zde.





 Vyhledávání




Hledaný výraz:
v klíčových slovech
v titulku
v anotaci
v textu








 Reklama









 Servis




*   Vaše náměty a připomínky
Máte k Linuxzone.cz nějaké připomínky nebo náměty? Našli jste na stránkách chybu? Dejte nám o tom vědět pomocí formuláře nebo v diskuzi.
Komentářů: 60
*   Podpořte Linuxzone.cz
Chcete podpořit náš server umístěním odkazu nebo zveřejněním backendu? Zde najdete vše potřebné.
*   Pište pro Linuxzone.cz
Máte zájem podílet se na obsahu Linuxzone.cz ať už jako redaktoři nebo i jinak? Dejte nám o sobě vědět!





 Aktuálně z bezpečnosti




-- 
6.12.2005, 19:01
Na serveru informit.com vyšla ukázková kapitola týkající se práce s řetězci z knihy Secure Coding in C and C++. (lz)

-- 
3.12.2005, 12:34
Bugtraq: Format String Vulnerabilities in Perl Programs. (lz)

-- 
3.12.2005, 12:32
Linux Advisory Watch December 2nd 2005. (lz)

-- 
23.10.2005, 13:28
Rozhovor na téma klasické zálohování versus CDP. (lz)

-- 
23.10.2005, 13:24
Linux Advisory Watch October 21st 2005. (lz)

další >>





 Aktuálně o software




-- 
6.12.2005, 19:07
Potřebujete-li pod linuxem rozchodit bezdrát založený na čipsetech Broadcom 43xx, konečně existuje linuxový ovladač. (lz)

-- 
6.12.2005, 19:04
Byla uvolněna verze Xen 3.0.0 virtualizační technologie XEN. (lz)

-- 
6.12.2005, 18:59
Byla uvolněna verze X11R6.9/X11R7 RC 3 grafickérho rozhraní X Window System. (lz)

-- 
3.12.2005, 12:45
Co je nového okolo projektu Amanda (open source zálohovací software)? Více na osnews.com. (lz)

-- 
3.12.2005, 12:40
Jak to akuálně v linuxu vypadá s podporou SATA.. (lz)

další >>





 Aktuálně z IT




-- 
3.12.2005, 12:51
Novellu se daří prodej linuxových produktů, oproti loňskému roku se Novell dočkal výrazného nárůstu. (lz)

-- 
3.12.2005, 12:48
Třetí verzi licence GPL by měla být publikována během jara 2007. (lz)

-- 
23.10.2005, 13:20
V Peru nyní mají zákon, který umožňuje nasazení open source software ve vládní správě. (lz)

-- 
23.10.2005, 13:14
Proč se Microsoft bojí Google? (lz)

-- 
27.9.2005, 22:01
Peru má zákon podporující free software. (lz)

další >>





 Nejčtenější články









 Nejlepší články









 Anketa




Používáte nějaké rozšíření bezpečnostního modelu linuxového jádra?

Openwall (17%)

LIDS (11%)

Pax/Grsecurity (3%)

SELinux (6%)

RSBAC (1%)

jiné (1%)

používám standardní jádro (62%)







Linuxzone.cz - server o Linuxu pro programátory, administrátory a fanoušky.
Provozuje společnost Impossible.
ISSN: 1213-8738





IrDA - implementácia s LIRC a úvod do problematiky prevádzkovania

Bezdrôtová komunikácia prostredníctvo rozhrania IrDA sa stáva s neustálym rozširovaním mobilných zariadení čoraz viac populárna. Jednoduchosť v pripojení a dostatočná dátová priepustnosť nám otvára možnosti jednoduchej komunikácie s jednotlivými perifériami bez nutnosti neustáleho pripájania a odpájania prepojovacích káblov.

Množstvo základných dosiek má priamo implementovanú podporu IrDA SIR ako alternatívu k druhému sériovému rozhraniu, avšak príslušné moduly nájdeme v obchodoch predajcov hardwaru iba zriedkavo, ak hej, tak za neprimeranú cenu. Dnes sa teda pozrieme, ako si príslušné rozhranie vyhotoviť vo vlastnej réžii pri minimálnych nákladoch. Rovnako si priblížime samotnú implementáciu.

1. Príprava

Prvotnou úlohou je zistenie existencie príslušného konektoru pre IrDA na základnej doske. Často je realizovaný 5 pinovým konektorom v blízkosti čelnej časti dosky, zriedkakedy sa stretnete so 6 pinovou realizáciou, v každom prípade však treba siahnuť k dokumentácii od základnej dosky a zistiť rozmiestnenie jednotlivých pinov. V našom vzorovom prípade to bude

1 2 3 4 5
. . . . . 

1 - VCC +5V
2 - nezapojený
3 - IR RXD
4 - GND
5 - IR TXD

Pokračujeme kontrolou nastavení biosu. Zväčša v oddieli Integrated Peripherials nájdete možnosť nastavenia módu pre rozhranie COM2. Typickými voľbami sú SIR alebo IrDA, v prípade možnosti nastavenia doplnkových parametrov je vhodné nechať nastavené default hodnoty. Následne sa pustíme do samotnej konštrukcie.

2. Konštrukcia

Celková konštrukcia je nenákladná rádovo okolo 200 Kč. Možných zapojení bolo publikovaných už mnoho v našom prípade si pre samotnú komunikáciu vyberieme jeden z dostupných komunikačných modulov, ako napríklad HSDL1001 alebo v našom prípade TFDS 4500 v prípade dosiek ABIT ich invertované verzie. Pri zapojení budeme vychádzať z katalógových listov, v našom prípade budeme potrebovať 2 odpory pre obmedzenie pretekajúceho prúdu niečo okolo 10 ohm, 0.5W a jeden elektrolytický kondenzátor 47 microF/50V. Konštrukciu realizujeme podľa nasledovnej schémy.

Konštrukcia je jednoduchá, pre pripojenie využijeme ľubovoľný plochý konektor, voľne pohodený v zásuvke s PC odpadom, pre samotný káblik môžeme použiť plochý vodič v celkovej dĺžke rádovo do 50 cm. Pri "voľne loženom" pájkovaní je následne potrebné zabezpečiť izolovanie jednotlivých častí, aby prípadným skratom nedošlo k znehodnoteniu základnej dosky, nebodaj i väčším problémom. Prototyp zariadenia môže vyzerať nasledovne:

Následne pri vypnutom systéme pripojíme modul k základnej doske. V prípade, že máme k dispozícii kameru alebo digitálny fotoaparát, pri štarte systému zistíme, či pri inicializácii raz vysielač blikne a následne zhasne, nepretržité budenie vysielacej IR led spôsobí zničenie komunikačného modulu, sprevádzané jeho prehriatím a následným zápachom, takže teplotu pre každý prípad skontrolujte aspoň rukou, v prípade nesprávnej konštrukcie zabránite jeho zničeniu včasným vypnutím. Predpokladáme správnu funkciu modulu, pozrime sa, na implementáciu s balíkom LIRC.

3. Implementácia s LIRC

LIRC natívne podporuje komunikáciu prostredníctvom SIR IrDA rozhrania. Podmienkou rovnako ako pri sériovom prijímacom module je rekompilácia kernelu s nakompilovaným modulom serial.o samostatne a nie jeho integráciou priamo v kerneli. Po inicializácii systému zabezpečíme uvoľnenie druhého sériového rozhrania pomocou

setserial /dev/ttyS1 uart none

a pustíme sa do rekonfigurácie LIRC. Opäť využijeme konfiguračný dialógový skript s nasledovnými voľbami

./setup.sh
1. Driver configuration
 5. IrDA Hardware
    1. SIR IrDA (builtin IR PORTS)
    (x) 2 COM2 (0x2f8, 3)
3. Save configuration & run configure

Pokračujeme kompiláciou a distribúciou bináriek

make
make install

Výsledným modulom bude lirc_sir.o, takže sa modifikáciou /etc/modules.conf postaráme o jeho automatické zavedenie pri inicializácii lircd.

alias char-major-61 lirc_sir
options lirc_sir irq=3 io=0x02f8

Pokračujeme v používaní balíka lirc rovnako, ako sme si ukázali v našom seriáli venujúcom sa tejto problematike. Za poznámku stojí zmienka o nižšej citlivosti tohto rozhrania oproti vyrobenému sériovému modulu, pre bežné použitie však bude stačiť.

4. Implementácia na systémoch RedHat 7.2 a vyššie.

Predpokladom pre možnosť využitia IrDA rozhrania je nakompilovaná podpora v kerneli, ktorá je aktívna v implicitnej distribúcii, rovnako aj prítomnosť nainštalovaného balíčka irda-utils. Keďže spĺňame predpoklady, môžeme sa pustiť do aktivácie v systéme. Prvou úlohou je modifikácia konfiguračného súboru /etc/sysconfig/irda, ktorého obsah bude vyzerať po úprave typicky nasledovne:

IRDA=yes
DEVICE=/dev/ttyS1
DISCOVERY=yes

Pokračujeme aktivovaním rozhrania pomocou

service irda start

alebo ručnou inicializáciou prostredníctvom

modprobe irda
/usr/sbin/irattach /dev/ttyS1

Po zavedení modulu pre irda zabezpečíme priradenie rozhrania IrDA k príslušnému sériovému rozhraniu, ktorým je prezentované.

echo 1 > /proc/sys/net/irda/discovery
echo localhost > /proc/sys/net/irda/devname

Následne povolíme automatické zisťovanie zariadení nachádzajúcich sa v dosahu nášho rozhrania s jednoznačnou identifikáciou nášho hostu. Po inicializácii si overíme zavedenie príslušných modulov zabezpečujúcich funkčnosť.

lsmod
...
irtty                   5904   2  (autoclean)
irda                   94736   1  (autoclean) [irtty]
... 

Pre priebeh samotnej komunikácie je súčasťou balíčka irda-utils nástroj irdadump, ktorý nám zabezpečí výpis jednotlivých komunikačných paketov, čo nám bude prospešné pri zisťovaní funkčnosti a priebehu komunikácie. Spustíme teda nástroj irdadump a priblížime k IrDA rozhraniu zariadenie komunikujúce týmto štandardom v našom prípade mobil Ericsson R320.

irdadump

20:47:51.479372 xid:cmd ec15e71e > ffffffff S=6 s=0 (14) 
20:47:51.569372 xid:cmd ec15e71e > ffffffff S=6 s=1 (14) 
...
20:47:52.019372 xid:cmd ec15e71e > ffffffff S=6 s=* localhost \
   hint=0400 [ Computer ] (25) 
20:47:54.479372 xid:cmd ec15e71e > ffffffff S=6 s=0 (14) 
20:47:54.569372 xid:cmd ec15e71e > ffffffff S=6 s=1 (14) 
...
20:47:57.839372 xid:rsp ec15e71e < 38fac48e S=6 s=3 R320 \
   IR modem hint=9124 [ PnP Modem IrCOMM IrOBEX ] (30) 

Ako vidíme z výpisu, zariadenie má priradené id 6, takže si môžeme overiť kvalitu spojenia prostredníctvom pingu, čím si utvoríme prehľad o vzdialenostnom dosahu nášho nového rozhrania a kvalite komunikácie. Typické odozvy vyzerajú nasledovne:

irdaping 6

IrDA ping (0x00000006): 32 bytes
32 bytes from 0x38fac48e: irda_seq=0 time=110.00 ms.
32 bytes from 0x38fac48e: irda_seq=1 time=110.04 ms.
32 bytes from 0x38fac48e: irda_seq=2 time=110.05 ms.
3 packets received by filter

Jednotlivé rozpoznané zariadenia sú protokolované v /proc/net/irda/discovery, kde sú k dispozícii ich identifikátory.

cat /proc/net/irda/discovery

IrLMP: Discovery log:

nickname: R320 IR modem, hint: 0x9124, saddr: 0xec15e71e, \
   daddr: 0x38fac48e

Pre možnosť prístupu virtuálnym sériovým rozhraním k zariadeniam pripojeným cez IrDA je potrebné zavedením modulu ircomm zabezpečiť prístup cez zariadenie /dev/ircomm0

insmod ircomm

Po zavedení je automaticky natiahnutý aj modul irtty.o, pri prvom prístupe na /dev/ircomm0 aj ircomm-tty.o. Pozrime sa teda na komunikáciu samotnú v praxi. Keďže sme si pripojili mobilný telefón s integrovaným modemom, pripravíme si konfiguráciu pre minicom modifikáciou súboru /etc/minirc.dfl, ktorý bude obsahovať nasledovné definície

pr port /dev/ircomm0
pu baudrate 57600

a samotný komunikačný terminál bez inicializačných reťazcov

minicom -o

Typicky povolíme echo do terminálu pomocou

ate1

a odskúšame komunikáciu. Postačí nám výpis identifikátorov a základného nastavenia

ati
R320 IR modem

ati5
ACTIVE SETTINGS:
  E:1 Q:0 V:1 X:4 &C:1 &D:0 
  S0:000 S2:043 S3:013 S4:010 S5:008 S7:050 
  +CBST:0,0,1 +CRLP:61,61,48,6
  +CPMS:"SM","SM" +CPBS:"SM"
  +CR:0 +CRC:0 +CMEE:0 
  +DR:0 +DS:3,0,512,32
  +ILRR:0 +IFC:0,1 +IPR:0 +ICF:3,0 

Zobrazíme aktuálny čas

at+clck?
+CLCK: "02/06/26,23:17:51"

a možno uskutočníme voice volanie AT príkazom

at*evd=0905623567

5. Záver

Dnes sme si ukázali, ako jednoducho implementovať IrDA rozhranie na pracovných staniciach a ako zabezpečiť jeho sprevádzkovanie v systéme. Ako bolo z príkladov zrejmé, jedná sa o pomerne čisté riešenie zabezpečujúce bohatý prehľad ako o aktuálnom stave, tak o prevádzke. Cieľom tohto článku bolo priblížiť základnú problematiku, jednotlivým riešeniam a využitiam sa budeme venovať v budúcnosti.

Další části seriálu:

Autor: Milan Gigel, 04. 07. 2002, 00:00
Sekce Hardware, Komentářů: 1
Průměrné hodnocení: 0,16

o Poslat e-mailem
o Tisk článku
o Uložit do profilu


 Přispějte nám




Líbil se Vám tento článek? Můžete ho ocenit zavoláním na tel. číslo 906 460 134.
Cena hovoru za 1 minutu je 46 Kč.





 Hodnocení článku




Článek hodnotím jako:  [1] výborný   [2] dobrý   [3] průměr   [4] špatný   [5] hrůza  





 Komentáře




--

Anton, 09. 01. 2004 22:56
Infraport do USB















PŘIDAT KOMENTÁŘ ZOBRAZ VŠE >>










2002 © Impossible, s.r.o.   >> Kontaktujte redakci >> Právní upozornění >> Reklama