Provided by: owfs-doc_3.1p5-2_all bug

NAME

       DS2406,  DS2407  -  Dual  Addressable  Switch  with 1kbit Memory, Hidable Dual Addressable
       Switch with 1kbit Memory

SYNOPSIS

       Dual Switch, Write-once Memory

       12 [.]XXXXXXXXXXXX[XX][/[ channels | latch.[A|B|ALL|BYTE] | memory |  pages/page.[0-3|ALL]
       |    PIO.[A|B|ALL|BYTE]    |    power    |    sensed.[A|B|ALL|BYTE]    |    set_alarm    |
       TAI8570/[sibling|temperature|pressure] | T8A/volt.[0-7,ALL] address | crc8 | id |  locator
       | r_address | r_id | r_locator | type ]]

FAMILY CODE

       12

SPECIAL PROPERTIES

   channels
       read-only, unsigned integer
       Is  this  a 1 or 2 channel switch? The DS2406 comes in two forms, one has only one PIO pin
       (PIO.A). Returns 1 or 2.

   latch.A latch.B latch.ALL latch.BYTE
       read-write, yes-no
       The activity latch is set to 1 with the first negative or positive edge  detected  on  the
       associated PIO channel.
       Writing  any  data will clear latch for all (both)) channels. This is a hardware "feature"
       of the chip.
       ALL references both channels simultaneously, comma separated
       BYTE references both channels simultaneously as a single byte, with channel A in bit 0.

   memory
       read-write, binary
       128 bytes of non-volatile, write-once data.

   pages/page.0 ... pages/page.3 pages/page.ALL
       read-write, binary
       Memory organized as 4 pages or 32 bytes. Memory is write-once.
       ALL is the aggregate of all 4 pages, sequentially accessed.

   PIO.A PIO.B PIO.ALL PIO.BYTE
       read-write, yes-no
       State of the open-drain output ( PIO ) pin. 0 = non-conducting (off), 1 = conducting (on).
       Writing zero will turn off the switch, non-zero will turn on the switch. Reading  the  PIO
       state will return the switch setting (flipflop in the data sheet). To determine the actual
       logic level at the switch, refer to the sensed property.
       Note that the actual pin setting for  the  chip  uses  the  opposite  polarity  --  0  for
       conducting,  1 for non-conducting. However, to turn a connected device on (i.e. to deliver
       power) we use the software concept of 1 as conducting or "on".
       ALL references both channels simultaneously, comma separated.
       BYTE references both channels simultaneously as a single byte, with channel A in bit 0.

   power
       read-only, yes-no
       Is the DS2406 powered parasitically =0 or separately on the Vcc pin =1

   sensed.A sensed.B sensed.ALL sensed.BYTE
       read-only, yes-no
       Logic level at the PIO pin. 0 = ground. 1 = high (~2.4V - 5V ). Really makes sense only if
       the PIO state is set to zero (off), else will read zero.
       ALL references both channels simultaneously, comma separated.
       BYTE references both channels simultaneously as a single byte, with channel A in bit 0.

   set_alarm
       read-write, unsigned integer (0-331)
       A number consisting of three digits XYZ, where:

       X      channel selection
              0 neither
              1 A only
              2 B only
              3 A or B

       Y      source selection
              0 undefined
              1 latch
              2 PIO
              3 sensed

       Z      polarity selection
              0 low
              1 high

       All  digits  will be truncated to the 0-3 (or 0-1) range. Leading zeroes are optional (and
       may be problematic for some shells).

       Example:

       311    Responds on Conditional Search when either latch.A or latch.B (or both) are set  to
              1.

       <100   Never responds to Conditional Search.

   TAI8570/
       subdirectory
       Properties when the DS2406 (3) is built into a TAI8570.
       If  the  DS2406 (3) is not part of a TAI8570 or is not the controlling switch, attempts to
       read will result in an error.

   TAI8570/pressure
       read-only, floating point
       Barometric pressure in millibar.

   TAI8570/sibling
       read-only, ascii
       Hex address of the DS2406 (3) paired with this chip in a TAI8570.

   TAI8570/temperature
       read-only, floating-point
       Ambient temperature measured by the TAI8570 in prevailing temperature units (Centigrade is
       the default).

   T8A/volt.[0-7|ALL]
       read-only, floating-point
       Uses the T8A (by Embedded Data Systems ) 8 channel voltage converter. Units in volts, 0 to
       5V range. 12 bit resolution.

STANDARD PROPERTIES

   address
   r_address
       read-only, ascii
       The entire 64-bit unique ID. Given as upper case hexadecimal digits (0-9A-F).
       address starts with the family code
       r address is the address in reverse order, which is often used in other  applications  and
       labeling.

   crc8
       read-only, ascii
       The  8-bit  error  correction  portion.  Uses  cyclic  redundancy check. Computed from the
       preceding 56 bits of the unique ID number. Given as upper case hexadecimal  digits  (0-9A-
       F).

   family
       read-only, ascii
       The  8-bit  family  code.  Unique  to each type of device. Given as upper case hexadecimal
       digits (0-9A-F).

   id
   r_id
       read-only, ascii
       The 48-bit middle portion of the unique ID number. Does not include  the  family  code  or
       CRC. Given as upper case hexadecimal digits (0-9A-F).
       r id is the id in reverse order, which is often used in other applications and labeling.

   locator
   r_locator
       read-only, ascii
       Uses  an  extension  of  the 1-wire design from iButtonLink company that associated 1-wire
       physical connections with a unique 1-wire code. If the connection is behind a Link Locator
       the  locator  will  show  a  unique 8-byte number (16 character hexadecimal) starting with
       family code FE.
       If no Link Locator is between the device and the master, the locator field will be all FF.
       r locator is the locator in reverse order.

   present (DEPRECATED)
       read-only, yes-no
       Is the device currently present on the 1-wire bus?

   type
       read-only, ascii
       Part name assigned by Dallas Semi. E.g.  DS2401 Alternative packaging  (iButton  vs  chip)
       will not be distiguished.

ALARMS

       Use the set_alarm property to set the alarm triggering criteria.

DESCRIPTION

   1-Wire
       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.

       Each  device  is  uniquely  and  unalterably numbered during manufacture. There are 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  scheme uses a single bus master and multiple slaves on the same wire. The bus
       master initiates  all  communication.  The  slaves  can  be  individually  discovered  and
       addressed using their unique ID.

       Bus  masters  come in a variety of configurations including serial, parallel, i2c, network
       or USB adapters.

   OWFS design
       OWFS is a suite of programs that designed to make the 1-wire bus and  its  devices  easily
       accessible. The underlying principle is to create a virtual filesystem, with the unique ID
       being the directory, and the individual properties of the device are represented as simple
       files that can be read and written.

       Details of the individual slave or master design are hidden behind a consistent interface.
       The goal is to provide an easy set of tools for a software designer to  create  monitoring
       or  control  applications.  There are some performance enhancements in the implementation,
       including data caching,  parallel  access  to  bus  masters,  and  aggregation  of  device
       communication.  Still  the  fundemental  goal  has  been  ease  of  use,  flexibility  and
       correctness rather than speed.

   DS2406
       The DS2406 (3) allows control of other devices, like LEDs and relays.  It  superceeds  the
       DS2405 and DS2407 Alternative switches include the DS2408 or even DS2450
       The  DS2407 is practically identical to the DS2406 except for a strange hidden mode. It is
       supported just like the DS2406

   TAI8570
       The TAI-8570 Pressure Sensor is based on a 1-wire composite  device  by  AAG  Electronica.
       The  TAI8570  uses  2 DS2406 (3) chips, paired as a reader and writer to synthesize 3-wire
       communication. Only 1 of the DS2406 (3) will allow temperature or pressure readings.  It's
       mate's address can be shown as sibling.

       The  TAI8570  uses  the  Intersema  MS5534a  pressure  sensor,  and stores calibration and
       temperature compensation values internally.

       Design and code examples are available from AAG Electronica http://aag.com.mx  ,  specific
       permission  to  use  code  in  a GPL product was given by Mr. Aitor Arrieta of AAG and Dr.
       Simon Melhuish of OWW.

ADDRESSING

       All 1-wire devices are factory assigned a unique 64-bit address. This address  is  of  the
       form:

       Family Code
              8 bits

       Address
              48 bits

       CRC    8 bits

       Addressing under OWFS is in hexadecimal, of form:

              01.123456789ABC

       where 01 is an example 8-bit family code, and 12345678ABC is an example 48 bit address.

       The dot is optional, and the CRC code can included. If included, it must be correct.

DATASHEET

       http://pdfserv.maxim-ic.com/en/ds/DS2406.pdf
       http://pdfserv.maxim-ic.com/en/ds/DS2407.pdf
       http://www.embeddeddatasystems.com/page/EDS/PROD/IO/T8A
       http://oww.sourceforge.net/hardware.html#bp

SEE ALSO

   Programs
       owfs  (1)  owhttpd  (1) owftpd (1) owserver (1) owdir (1) owread (1) owwrite (1) owpresent
       (1) owtap (1)

   Configuration and testing
       owfs (5) owtap (1) owmon (1)

   Language bindings
       owtcl (3) owperl (3) owcapi (3)

   Clocks
       DS1427 (3) DS1904 (3) DS1994 (3) DS2404 (3) DS2404S (3) DS2415 (3) DS2417 (3)

   ID
       DS2401 (3) DS2411 (3) DS1990A (3)

   Memory
       DS1982 (3) DS1985 (3) DS1986 (3) DS1991 (3) DS1992 (3) DS1993 (3) DS1995  (3)  DS1996  (3)
       DS2430A (3) DS2431 (3) DS2433 (3) DS2502 (3) DS2506 (3) DS28E04 (3) DS28EC20 (3)

   Switches
       DS2405 (3) DS2406 (3) DS2408 (3) DS2409 (3) DS2413 (3) DS28EA00 (3)

   Temperature
       DS1822  (3) DS1825 (3) DS1820 (3) DS18B20 (3) DS18S20 (3) DS1920 (3) DS1921 (3) DS1821 (3)
       DS28EA00 (3) DS28E04 (3) EDS0064 (3) EDS0065 (3)  EDS0066  (3)  EDS0067  (3)  EDS0068  (3)
       EDS0071 (3) EDS0072 (3) MAX31826 (3)

   Humidity
       DS1922 (3) DS2438 (3) EDS0065 (3) EDS0068 (3)

   Voltage
       DS2450 (3)

   Resistance
       DS2890 (3)

   Multifunction (current, voltage, temperature)
       DS2436  (3)  DS2437  (3) DS2438 (3) DS2751 (3) DS2755 (3) DS2756 (3) DS2760 (3) DS2770 (3)
       DS2780 (3) DS2781 (3) DS2788 (3) DS2784 (3)

   Counter
       DS2423 (3)

   LCD Screen
       LCD (3) DS2408 (3)

   Crypto
       DS1977 (3)

   Pressure
       DS2406 (3) TAI8570 (3) EDS0066 (3) EDS0068 (3)

   Moisture
       EEEF (3) DS2438 (3)

AVAILABILITY

       http://www.owfs.org

AUTHOR

       Paul Alfille (paul.alfille@gmail.com)