Table of Contents
- Tiny webserver for 1-wire control
-c config ] -d serialport | -u | -s [host:]port -p tcp-port
1-wire is a wiring protocol and series of devices designed
and manufactured by Dallas SemicondUctor, Inc. The bus is a low-power low-speed
low-connector scheme where the data line can also provide power.
is uniquely unalterably numbered during manufacture. There is a wide variety
of devices, including memory, sensors (humidity, temperature, voltage,
contact, current), switches, timers and data loggers. More complex devices
(like thermocouple sensors) can be built with these basic devices. There
are also 1-wire devices that have encryption included.
The 1-wire bus is accessed
via one of a number of serial, parallel, i2c, network or USB adapters.
OWFS is a suite of programs that fundementally make the 1-wire bus
and its devices easily accessible. The underlying priciple is to create
a virtual filesystem, with the unique ID being the directory, and the individual
properties of the device files.
There is optional data caching to improved
performance, but possible confusion over stale data.
is a small webserver that shows the Dallas/Maxim 1-Wire bus attached to
a serial port. The main view shows the devices found, You can then navigate
to individual devices, and view/alter their properties.
the same naming convention as owfs (1)
, where the URL corresponds to the
The web server is a modified version of chttpd
by Greg Olszewski.
It serves no files from the disk, only virtual files from the 1-wire bus.
Security should therefore be good. Only the 1-wire bus is at risk.
Sets the tcp port the web server runs on. Access with the
If no port is specified, an ephemeral
port is selected by the operating system. Use zeroconf (Bonjour) to discover
the assigned port.
These options specify the 1-wire
bus master the physically connects to the 1-wire bus. More than one can be
specified. The result will be the logical union of all the specified bus
masters. Individual adapters can be addressed as bus.0 bus.1 ...
At least one
device option is required. There is no default.
Note that your operating
system will likely restrict access to physical ports to authorised users.
Serial adapter. The address of the serial port is operating
system-dependent. Adapters supported are the DS2480B-based DS9097U , iButtonLink's
LINK in emulation mode, or the passive DS9097
Use i2c adapter
0. Based on the DS2482-100 or the DS2482-800. The DS2482-800 is interesting,
it actually has 8 separately addressable 1-wire bus lines, and will appear
as 8 separate busses.
USB adapter (based on the DS2490, like the DS9490R).
In general the operating system will assign the first avaliable adapter.
Use the option: -u2 or --usb=2 for the second adapter. To use all the available
USB adapters: -all or --usb=all
The iButtonlink LINK adapter
on serial port 0. The LINK uses it's own ascii communication protocol.
to an owserver at the listed network location.
Create a simulated
bus with simulated devices (family codes 10,12 and 28 in this case). All
the responses are random, and writing is not supported.
a simulated bus with simulated devices (family codes 10,12 and 28 in this
case). All the responses are predictable (see the web site for the algorithm)
and thus useful for automated test scripts.
Temperature scale used for
data output. Celsius is the default.
Can also be changed within the program
representation of the 1-wire unique identifiers. OWFS uses these identifiers
as unique directory names.
Although several display formats are selectable,
all must be in family-code-first form, unlike some other programs and the
labelling on iButtons, which are CRC8-first.
format for the 1-wire devices. Each device has a 8byte address, consisting
- family code, 1 byte
- ID number, 6 bytes
- CRC checksum, 1 byte
formats are f.i (default, 01.A1B2C3D4E5F6), fi fic f.ic f.i.c and fi.c
are accepted as input, but the output will be in the specified format.
Do we allow writing to the
1-wire bus (writing memory, setting switches, limits, PIOs)? The write option
is available for symmetry, it's the default.
PID -- process ID of owfs into the specified filename. Useful for startup
Whether the program releases the
console and runs in the background after evaluating command line options.
background is the default.
- default mixed destination:
stderr foreground / syslog background
- syslog only
- stderr only
- /dev/null (quiet mode).
- default errors only
- all high level calls
- data summary for each call
- details level
- debugging chaff
--error_level=9 produces a lot of output
Name of an owfs (5)
configuration file with
more command line parameters
See also this man
page and the web site http://www.owfs.org
basic summary of options.
Version of this program and related libraries.
These options affect the times that data stays in
memory, and the times that the program will wait for network or external
device responses. Default values are shown.
a volatile property expires in the cache. Volatile properties are those
(like temperature) that change on their own.
- 1-wire bus master options
- cache and
communication size and timing
- mountpoint or TCP server settings
- control and debugging options
- Unique ID display format
and temperature scale
Can be changed within the program
Seconds until a stable
property expires in the cache. Stable properties are those that shouldn't
change unless explicitly changed. Memory contents for example.
Can be changed
within the program at /settings/timeout/stable
until a directory listing expires in the cache. Directory lists are the
1-wire devices found on the bus.
Can be changed within the program at /settings/timeout/directory
Seconds until the presence and bus location of a 1-wire
device expires in the cache.
Can be changed within the program at /settings/timeout/presence
Seconds until the expected response from the serial port
adapter is deemed tardy. Applies to the LINK, DS9097U and DS9097 (passive)
Can be changed within the program at /settings/timeout/serial
Seconds until the expected response from the usb port adapter
is deemed tardy. Applies to the DS9490.
Can be changed within the program
Seconds until the expected
response from the tcp port adapter is deemed tardy. Includes the LINK-HUB-E
Can be changed within the program at /settings/timeout/network
Seconds until the expected response from the owserver (1)
is deemed tardy.
Can be changed within the program at /settings/timeout/server
Seconds that an ftp session is kept alive.
Can be changed
within the program at /settings/timeout/ftp
the program will wait for a (tcp) response from the HA7Net adapter.
be changed within the program at /settings/timeout/ha7
Paul Alfille (firstname.lastname@example.org)
-p 3001 -d /dev/ttyS0
- Web server runs on tcp port 3001, serial adapter at
-p 3001 -s littlehost:4304 --error_level=3
- Web server on port
3001, from owserver process on host "littlehost", extensive error messages.
-p 3001 -u -u2 -r
- Read-only web server on port 3001, using two usb adapters.
Table of Contents