1Owtcl(TCL)                                                          Owtcl(TCL)
2
3
4
5______________________________________________________________________________
6

NAME

8       Owtcl - OWFS library access commands for Tcl
9

SYNOPSIS

11       package require ow
12
13       ow option ?arg ...?
14
15       ::OW::init interface ?interface ...? ?arg ...?
16       ::OW::finish
17       ::OW::isconnect
18       ::OW::get ?path? ?arg ...?
19       ::OW::put path ?value?
20       ::OW::isdirectory path
21       ::OW::isdir path
22       ::OW::exists path
23

DESCRIPTION

25   1-Wire
26       1-wire is a wiring protocol and series of devices designed and manufac‐
27       tured by Dallas Semiconductor, Inc. The bus is  a  low-power  low-speed
28       low-connector scheme where the data line can also provide power.
29
30       Each  device  is  uniquely and unalterably numbered during manufacture.
31       There are a wide variety of devices, including memory, sensors  (humid‐
32       ity, temperature, voltage, contact, current), switches, timers and data
33       loggers. More complex devices (like thermocouple sensors) can be  built
34       with  these  basic  devices.  There  are  also 1-wire devices that have
35       encryption included.
36
37       The 1-wire scheme uses a single bus master and multiple slaves  on  the
38       same  wire.  The bus master initiates all communication. The slaves can
39       be individually discovered and addressed using their unique ID.
40
41       Bus masters come in a variety of configurations including serial,  par‐
42       allel, i2c, network or USB adapters.
43
44   OWFS design
45       OWFS  is  a  suite of programs that designed to make the 1-wire bus and
46       its devices easily accessible. The underlying principle is to create  a
47       virtual  filesystem,  with  the  unique ID being the directory, and the
48       individual properties of the device are  represented  as  simple  files
49       that can be read and written.
50
51       Details  of  the  individual slave or master design are hidden behind a
52       consistent interface. The goal is to provide an easy set of tools for a
53       software  designer  to create monitoring or control applications. There
54       are some performance enhancements in the implementation, including data
55       caching, parallel access to bus masters, and aggregation of device com‐
56       munication. Still the fundamental goal has been ease of use,  flexibil‐
57       ity and correctness rather than speed.
58
59   owtcl
60       owtcl  (3)  is  a Tcl extension that provides an interface to OWFS. The
61       underlying interface to  the  1-wire  bus  is  identical  to  owfs  (1)
62       (filesystem  view)  and  owhttpd (1) web server interface. Only the top
63       layer has been modified to return native Tcl data.
64

COMMANDS

66       Performs one of several operations, depending  on  option.   The  legal
67       options (which may be abbreviated) are:
68
69       ow open arg ...
70              Connect  to 1-wire adapter or owserver. arg ... defines a way of
71              connection to the 1-wire bus.
72              The full set of initialization args is  extensive.  They  corre‐
73              spond  roughly  to the command line args of owfs (1) owhttpd (1)
74              and owftpd (1)
75
76
77       ow close
78              Close connection to 1-wire bus or owserver.
79
80
81       ow version ?-list?
82              Return version of the owtcl and owlib/
83
84
85       ow opened
86              Return 1 if connected to 1-wire adapter or  owserver,  otherwise
87              0.
88
89
90       ow error level value
91              Set debug options. See owfs (5)
92
93
94       ow error print value
95              Set debug options. See owfs (5)
96
97
98       ow get path ?-list?
99              Returns  contents of OWFS directory as the list if path contains
100              name OWFS directory.  If path is name of OWFS file,  returns  of
101              contents of this file. For files *.ALL returns a values list.
102
103
104
105       ow put path value
106              Puts value in OWFS file indicated in path. For files *.ALL use a
107              value list.
108
109
110       ow isdirectory path
111              If path is the directory return 1. Otherwise return 0.
112
113
114       ow isdir path
115              Synonym of ow isdirectory
116
117
118       ow set path
119              Creates a new ow-like command with root in the path.  A new com‐
120              mand allows options get, put, isdirectory, isdir and set.
121
122
123

LOW-LEVEL COMMANDS

125       The following low-level commands are possible:
126
127       ::OW::init interface ?interface ...? ?arg ...?
128              Connect  to  1-wire  adapter  or owserver. interface and arg ...
129              defines a way of connection to the 1-wire bus.
130              The full set of initialization options is extensive. They corre‐
131              spond roughly to the command line options of ,B owfs (1) owhttpd
132              (1) and owftpd (1)
133
134
135       ::OW::finish
136              Close connection to 1-wire bus or owserver.
137
138
139       ::OW::isconnect
140              Return 1 if connected to 1-wire adapter or  owserver,  otherwise
141              0.
142
143
144       ::OW::get ?path? ?-list?
145              Returns  contents of OWFS directory as the list if path contains
146              name OWFS directory.  If path is name of OWFS file,  returns  of
147              contents of this file. For files *.ALL returns a values list. If
148              path is not defined, contents of root OWFS directory come back.
149
150
151       ::OW::put path ?value?
152              Puts value in OWFS file indicated in path. For files *.ALL use a
153              value list. If /fIvalue is not defined, puts a empty string.
154
155
156       ::OW::isdirectory path
157              If path is the directory - return 1. Otherwise return 0.
158
159
160       ::OW::isdir path
161              Synonym of ::OW::isdirectory
162
163
164       ::OW::exists path
165              If path is exists - return 1. Otherwise return 0.
166
167

EXAMPLE

169              package require ow
170
171              ow open -d /dev/ttyS0 -t 60
172
173              set save_templow [ow get /28.86BF80000000/templow]
174              ow put /28.86BF80000000/templow 10
175
176              set room_sensor [ow set /28.86BF80000000]
177              $room_sensor put temphigh 50
178
179              set room_temp [$room_sensor set temperature]
180              set current_temp [$room_temp get]
181
182

SEE ALSO

184   Programs
185       owfs  (1)  owhttpd  (1)  owftpd  (1)  owserver (1) owdir (1) owread (1)
186       owwrite (1) owpresent (1) owtap (1)
187
188   Configuration and testing
189       owfs (5) owtap (1) owmon (1)
190
191   Language bindings
192       owtcl (3) owperl (3) owcapi (3)
193
194   Clocks
195       DS1427 (3) DS1904(3) DS1994 (3)  DS2404  (3)  DS2404S  (3)  DS2415  (3)
196       DS2417 (3)
197
198   ID
199       DS2401 (3) DS2411 (3) DS1990A (3)
200
201   Memory
202       DS1982  (3)  DS1985  (3)  DS1986  (3)  DS1991 (3) DS1992 (3) DS1993 (3)
203       DS1995 (3) DS1996 (3) DS2430A (3) DS2431  (3)  DS2433  (3)  DS2502  (3)
204       DS2506 (3) DS28E04 (3) DS28EC20 (3)
205
206   Switches
207       DS2405 (3) DS2406 (3) DS2408 (3) DS2409 (3) DS2413 (3) DS28EA00 (3)
208
209   Temperature
210       DS1822  (3)  DS1825  (3)  DS1820 (3) DS18B20 (3) DS18S20 (3) DS1920 (3)
211       DS1921 (3) DS1821 (3) DS28EA00 (3) DS28E04 (3)
212
213   Humidity
214       DS1922 (3)
215
216   Voltage
217       DS2450 (3)
218
219   Resistance
220       DS2890 (3)
221
222   Multifunction (current, voltage, temperature)
223       DS2436 (3) DS2437 (3) DS2438 (3)  DS2751  (3)  DS2755  (3)  DS2756  (3)
224       DS2760 (3) DS2770 (3) DS2780 (3) DS2781 (3) DS2788 (3) DS2784 (3)
225
226   Counter
227       DS2423 (3)
228
229   LCD Screen
230       LCD (3) DS2408 (3)
231
232   Crypto
233       DS1977 (3)
234
235   Pressure
236       DS2406 (3) -- TAI8570
237

AVAILABILITY

239       http://www.owfs.org
240

AUTHOR

242       Serg Oskin (serg@oskin.ru)
243
244
245
246
247
248Tcl                             20/January/2005                     Owtcl(TCL)
Impressum