Owtcl(TCL) Owtcl(TCL)

```

```

# [NAME](#NAME)

Owtcl - OWFS library access commands for Tcl

# [SYNOPSIS](#SYNOPSIS)

**package require ow**

**ow option** ?*arg ...*?

**::OW::init interface** ?*interface ...*? ?*arg ...*?  
**::OW::finish**  
**::OW::isconnect**  
**::OW::get** ?*path*? ?*arg ...*?  
**::OW::put path** ?*value*?  
**::OW::isdirectory path**  
**::OW::isdir path**  
**::OW::exists path**

# [DESCRIPTION](#DESCRIPTION)

See the file mann/description.nso.

## [owtcl](#owtcl)

[**owtcl (3)**](/man/os/owfs/owtcl.3) is a Tcl extension that provides an interface to OWFS. The underlying interface to the 1-wire bus is identical to **owfs (1)** (filesystem view) and [**owhttpd (1)**](/man/os/owfs/owhttpd.1) web server interface. Only the top layer has been modified to return native Tcl data.

# [COMMANDS](#COMMANDS)

Performs one of several operations, depending on *option*. The legal *option*s (which may be abbreviated) are:

[**ow open arg ...**](#ow)

Connect to 1-wire adapter or *owserver*. *arg ...* defines a way of connection to the 1-wire bus.  
The full set of initialization args is extensive. They correspond roughly to the command line args of [**owfs (1)**](/man/os/owfs/owfs.1) [**owhttpd (1)**](/man/os/owfs/owhttpd.1) and **owftpd (1)**

[**ow close**](#ow~2)

Close connection to 1-wire bus or owserver.

[**ow version** ?*-list*?](#ow~3)

Return version of the owtcl and owlib/

[**ow opened**](#ow~4)

Return 1 if connected to 1-wire adapter or *owserver*, otherwise 0.

[**ow error** *level* *value*](#ow~5)

Set debug options. See [**owfs (5)**](/man/os/owfs/owfs.5)

[**ow error** *print* *value*](#ow~6)

Set debug options. See [**owfs (5)**](/man/os/owfs/owfs.5)

[**ow get** *path* ?*-list*?](#ow~7)

Returns contents of OWFS directory as the list if path contains name OWFS directory. If path is name of OWFS file, returns of contents of this file. For files \*.ALL returns a values list.

[**ow put path value**](#ow~8)

Puts *value* in OWFS file indicated in *path*. For files \*.ALL use a value list.

[**ow isdirectory path**](#ow~9)

If *path* is the directory return 1. Otherwise return 0.

[**ow isdir path**](#ow~10)

Synonym of **ow isdirectory**

[**ow set path**](#ow~11)

Creates a new **ow**-like command with root in the *path*. A new command allows options *get*, *put*, *isdirectory*, *isdir* and *set*.

# [LOW-LEVEL COMMANDS](#LOW-LEVEL_COMMANDS)

The following low-level commands are possible:

**::OW::init interface** ?*interface ...*? ?*arg ...*?

Connect to 1-wire adapter or *owserver*. *interface* and *arg ...* defines a way of connection to the 1-wire bus.  
The full set of initialization options is extensive. They correspond roughly to the command line options of ,B [owfs (1)](/man/os/owfs/owfs.1) [**owhttpd (1)**](/man/os/owfs/owhttpd.1) and [**owftpd (1)**](/man/os/owfs/owftpd.1)

**::OW::finish**

Close connection to 1-wire bus or owserver.

**::OW::isconnect**

Return 1 if connected to 1-wire adapter or *owserver*, otherwise 0.

**::OW::get** ?*path*? ?*-list*?

Returns contents of OWFS directory as the list if path contains name OWFS directory. If path is name of OWFS file, returns of contents of this file. For files \*.ALL returns a values list. If path is not defined, contents of root OWFS directory come back.

**::OW::put path** ?*value*?

Puts *value* in OWFS file indicated in *path*. For files \*.ALL use a value list. If /fIvalue is not defined, puts a empty string.

**::OW::isdirectory path**

If *path* is the directory - return 1. Otherwise return 0.

**::OW::isdir path**

Synonym of **::OW::isdirectory**

**::OW::exists path**

If *path* is exists - return 1. Otherwise return 0.

# [EXAMPLE](#EXAMPLE)

```
package require ow
ow open -d /dev/ttyS0 -t 60
set save_templow [ow get /28.86BF80000000/templow]
ow put /28.86BF80000000/templow 10
set room_sensor [ow set /28.86BF80000000]
$room_sensor put temphigh 50
set room_temp [$room_sensor set temperature]
set current_temp [$room_temp get]
```

# [SEE ALSO](#SEE_ALSO)

See the file mann/seealso.nso.

# [AVAILABILITY](#AVAILABILITY)

http://www.owfs.org

# [AUTHOR](#AUTHOR)

Serg Oskin (serg@oskin.ru)

20/January/2005 Tcl

---

Document: ow(n) from owfs 3.2.4-r10 (Chainguard OS)
Source: https://github.com/owfs/owfs
