home | help
X10AUX(5)		       File Formats Manual		       X10AUX(5)

NAME
     x10aux - Auxiliary input to Heyu via RF

DESCRIPTION
     Heyu is a program for controlling an X-10 "CM11A" home control device.  See
     the heyu(1) man page for usage information.

     This  page contains information about the capability of Heyu to receive and
     process signals from RF remotes and sensors using a WGL W800RF32A, an  X-10
     MR26A,  or  an RFXCOM X10 RF receiver connected to a second serial port, or
     an RFXLAN network version of the RFXCOM connected to a local network.

HARDWARE
     The W800RF32A  is	manufactured  by  WGL  &  Associates  (http://www.wglde-
     signs.com).   Two	models are available - the US/Canada model operates at a
     frequency of 310 MHz and the International  model	(W800RF32AE)  at  433.92
     MHz.   It	is capable of receiving signals from standard X10 RF remotes and
     sensors like the X-10 HR12A "PalmPad", from security X10 remotes  and  sen-
     sors  like  the X-10 DS10A Door/Window Sensor, and from older entertainment
     X-10 remotes like the UR81A Universal Remote which are designed to be  used
     in  conjunction with an X-10 MR26A Receiver.  Its receiving range is excel-
     lent.

     The X-10 MR26A is capable of receiving standard X10 and  the  older  enter-
     tainment  X10  signals,  but  not	the security X10 signals.  Its receiving
     range is somewhat limited, perhaps 20-30 feet.

     The RFXCOM X10 receiver (http://www.rfxcom.com) is available in a US/Canada
     310MHz version, an International 433.92 MHz version, and  a  dual-frequency
     version.	All  versions  receive signals from standard, entertainment, and
     security RF remotes and sensors (which transmit at their  frequency).   The
     433.92  MHz  and  dual-frequency  versions can additionally receive signals
     from various  other  sensors  like  Oregon  Temperature/Humidity/Barometric
     Pressure sensors.

     The RFXCOM X10 receiver is supported by Heyu in both variable length packet
     and 32 bit (W800 emulation) modes.

     The  RFXCOM is a USB device but has a built-in FTDI USB-to-Serial converter
     and communication with it is the same as with a serial port (assuming  your
     OS supports the FTDI chipset, as does Linux).

     All of these devices are strictly RF receivers and have no transmitting ca-
     pability.

     The  RFXLAN  version of the RFXCOM receiver connects to a local network and
     is accessible over a TCP socket. Its optional transmitter part, if present,
     is not supported.

QUICK START
     Stop Heyu (if already running)  with  the	command  'heyu	stop'.	 Plug  a
     W800RF32A/AE  or  MR26A receiver into a serial port.  Or plug an RFXCOM re-
     ceiver into a USB port and determine the serial device assigned by the  OS.
     (Under  Linux, the first USB device plugged in will normally be assigned to
     /dev/ttyUSB0, or possibly to /dev/usb/ttyUSB0, the  second  USB  device  to
     /dev/ttyUSB1,  etc.).  Or	connect an RFXLAN receiver to your local network
     and configure of verify its network address and port it listens on.

     Describe for Heyu the port and receiver being used with the  following  di-
     rective in the Heyu configuration file:
       TTY_AUX	<serial_port or network_address:port>  <receiver device>
     Examples:
       TTY_AUX	/dev/ttyS1  W800RF32A
       TTY_AUX	10.10.10.10:10000  RFXCOM

     The  configuration  directives  TRANSCEIVE  and RFFORWARD determine whether
     signals from a Standard X10 transmitter (like the HR12A  PalmPad)	are  di-
     rectly transceived to the powerline or are forwarded to the Heyu Engine for
     processing.   The	defaults  for these directives are "TRANSCEIVE	ALL" and
     "RFFORWARD  NONE".

     Run 'heyu start', and in another xterm 'heyu monitor'.  Verify that the  RF
     signals  are  being correctly received.  Transceived signals will appear in
     the monitor window with source "snda", indicating they  were  sent  by  the
     auxilliary daemon heyu_aux.

     For  transmissions from Security X10 sensors like the X10 DS10A Door/Window
     sensor (with an RF receiver capable of receiving these  transmissions)  the
     Heyu monitor will display an "RFdata" signal.
     Example:
       ... rcva func  RFdata : Type Sec  ID 0x23  Data 0x04

     Before  Heyu  can decode the signal data it has to know the type of sensor.
     This is accomplished by mapping the sensor module type and its ID (0x23  in
     this  example)  to an otherwise unused housecode|unit address with an ALIAS
     directive in the configuration file, e.g.,
       ALIAS Back_Door B2  DS10A  0x23

     Then after running 'heyu restart', opening the door will result in a  moni-
     tor display like:
       ... rcva func Alert : hu B2 swMin (Back_Door)
     where  the  flag  swMin indicates the "Delay" slider switch on the DS10A is
     set to the Min position.  The "rcva" means the signal was received from the
     Heyu Auxilliary daemon, heyu_aux.	(This signal  source  will  have  to  be
     specified	in the SCRIPT launch conditions if the alert signal is to launch
     a script.)

RF TRANSMITTERS
     In addition to the various standard X10 remotes and sensors, Heyu currently
     includes RF decoder modules for the following RF security and entertainment
     remotes and sensors:

     North American models:
       SH624 Security Remote
       KR10A Security Keychain Remote
       DS10A Security Door/Window Sensor
       MS10A Security Motion Sensor (See section MS10A WARNING).
       UR81A Universal Remote (Entertainment).

     International models:
       Marmitek  DS90  Security  Door/Window  Sensor   (See   section	"SPECIAL
     DS90/DS18-1
	 SETUP" towards the bottom of this man page.)
       ElekHomica  DS18-1  Door/Window Sensor (2 channel. Equivalent to Marmitek
     DS90)
       ElekHomica DS18 Door/Window Sensor (1  channel,	433.92	MHz  version  of
     DS10A)
       Marmitek SD90 and SD10 Smoke Detectors (See section "SPECIAL SD90
	 SETUP" towards the bottom of this man page.)
       Marmitek MS90 Security Motion Sensor
       ElekHomica EH-CWSD10 Smoke Detector
       ElekHomica EH-WD210 Water Detector
       Marmitek GB10 Glass Break Detector
	 (Also sends a sDusk signal at dark)

     Decoders  are also included for RFXSensor and RFXMeter signals, and signals
     from the DigiMax 210 Thermostat and Oregon sensors. Owners of these devices
     should see  man  pages  x10rfxsensors(5),	x10rfxmeters(5),  x10digimax(5),
     and/or x10oregon(5).

     Modules for other remotes and sensors will be added once the RF code gener-
     ated  by  each button-press or sensor action is known.  (Heyu displays this
     information.)

     Security remote and sensor devices transmit two significant bytes	of  code
     at  each button-press or sensor action.  The first of these is an identifi-
     cation byte which is (nominally) unique for  each	individual  device;  the
     second  describes the function of the particular button-press or sensor ac-
     tion.

     Older entertainment remotes like the UR81A transmit two  significant  bytes
     of code.  The first of these is either constant or restricted to a few val-
     ues; the second describes the function of the button-press.

     The  way  each  of the bytes are encoded for RF transmission allows distin-
     guishing between standard, security, and entertainment codes.

MODULE OPTIONS
     REVERSE keyword.
     The Alert/Clear action of security Door/Window sensors may  be  swapped  by
     including	the  keyword REVERSE as a parameter to the ALIAS directive which
     maps the sensor ID to a Housecode|Unit address.  With this option the Alert
     signal is issued when the door/window is closed and the Clear  signal  when
     it  is  opened.  This option is currently supported by the models DS10A and
     DS90 sensors.  It was added so that these sensors can be used  with  a  N/O
     switch instead of the N/C magnetic switch supplied with the unit.

     MAIN keyword
     AUX keyword
     These  keywords are currently supported only by the DS90 Security Door/Win-
     dow sensor.  See the special setup instructions for this sensor in the SPE-
     CIAL DS90 SETUP section toward the bottom of this man page.

BASIC OPERATION
     In order to receive RF signals, Heyu relies on the heyu_aux  daemon,  which
     is  started either manually with the 'heyu aux' command or automatically in
     the startup sequence with the 'heyu start' command.  The  serial  port,  or
     network  address  in  case of the RFXLAN network receiver, and attached re-
     ceiver device must be specified in the Heyu  configuration  file  with  the
     TTY_AUX directive. The syntax for this directive is:
       TTY_AUX	<serial_port or network_address:port>  <receiver device>
     where <receiver device> is W800RF32A, MR26A, or RFXCOM.  Examples:
       TTY_AUX	/dev/ttyS1  W800RF32A
       TTY_AUX	10.10.10.10:10000  RFXCOM

     RFXCOM defaults to the variable length packet mode model, RFXCOMVL.  The 32
     bit W800 emulation mode RFXCOM32 may be specified if necessary.

     There is no default for this directive.

     Standard  X10 RF signals received by heyu_aux may either be directly trans-
     ceived to X10 powerline code or may be forwarded  to  the	heyu_engine  and
     used to launch scripts without the delay inherent in X10 powerline communi-
     cation.   The  alternatives  are controlled by the two configuration direc-
     tives, TRANSCEIVE and RFFORWARD.  The syntax for these directives is:
	TRANSCEIVE  <list>
	RFFORWARD   <list>
     where <list> may be the keywords ALL or NONE, or may be a string of housec-
     ode enclosed in square [] brackets.
     Example:
       TRANSCEIVE  [BFH]
       RFFORWARD   [IJK]
     which will transceive RF signals on housecode B, F, and H, and  forward  RF
     signals  on housecode I, J, and K.  RF signals on all other housecodes will
     be ignored.

     Either of these directives may also use the keyword ALLEXCEPT  followed  by
     the  square bracketed housecode list to include all housecodes except those
     in the list.
     Example:
       TRANSCEIVE  [BFH]
       RFFORWARD  ALLEXCEPT [BFHLM]
     In this example, housecodes B, F, and H will be transceived,  housecodes  L
     and M will be ignored, and all others will be forwarded.

     Any given housecode may not be both transceived and forwarded.

     The default for the TRANSCEIVE directive is ALL, and that for the RFFORWARD
     directive is NONE.

     Finer  grained  control  is  available from special module types used in an
     ALIAS directive which can override the TRANSCEIVE and RFFORWARD  selections
     for  specific  units  and functions within a housecode.  These module types
     are:
       PALMPAD (or HR12A) - Controls RF On, Off, Dim, and Bright
       KEYCHAIN (or KC624) - Controls RF On and Off
       ONLYON - Controls RF On
       ONLYOFF - Controls RF Off
       MS12, MS13, MS14, MS16 - Controls RF On and Off.

     The MSxx module types differ from the KEYCHAIN module  type  only	in  that
     they  are defined as "sensors" and will be listed in the table displayed by
     'heyu show sensors'.

     Each of these special module types requires one of  the  parameters  TRANS-
     CEIVE, RFFORWARD, or RFIGNORE to define its functionality.
     Example:
       ALIAS  XMMS_Control D1-4 PALMPAD  RFFORWARD
     which  would  direct  heyu_aux to forward On/Off/Dim/Bright signals from an
     X-10 PalmPad (or any other RF remote) on housecode D, units  1  through  4,
     regardless  of the selections in TRANSCODE and RFFORWARD (which will other-
     wise control other RF signals on this housecode).

     Example:
       ALIAS  LightIgnore  B2  KEYCHAIN  RFIGNORE
     would direct heyu_aux to ignore RF signals from the  light  sensor  on  Ad-
     dress+1 of a (non-security) Motion Sensor, e.g., the X-10 MS14A, set to ad-
     dress  B1 (which often causes collision problems when the sensor's "motion"
     signal turns on a lamp within view of the sensor).

     If, for whatever reason, you have an external transceiver like a  TM751  or
     RR501  in operation, Heyu should usually not transceive on the same housec-
     ode lest there be signal collisions on the AC power line.

     Note: Heyu identifies signals transceived by heyu_aux as having the  source
     SNDA.  Signals  forwarded	to  heyu_engine  are identified as having source
     RCVA.  Remember this when using these signals to launch a script.

     Security and Entertainment X10 RF signals received by heyu_aux are  decoded
     and  processed  by  the Heyu State Engine daemon, heyu_engine.  Since these
     types of signals contain no Housecode/Unit identification, the transmitting
     device must be mapped to a Housecode and Unit in an ALIAS configuration di-
     rective for the RF signal to be decoded by the Heyu Engine.  Once	decoded,
     the  signals can be used to launch scripts or control various Heyu features
     like a home security system.

     Heyu identifies security and entertainment signals from heyu_aux as  origi-
     nating from source RCVA. Remember this when using these signals to launch a
     script.

     For  security  devices, the identification of the individual device (or de-
     vices if you have more than one of the same type) must be provided with the
     ALIAS directive.  The syntax is:
       ALIAS  <label> <housecode|unit> <device model>  <ID> [<ID> [<ID>...]]
     where <ID> represents the security ID of a device expressed as a  hexadeci-
     mal  number, either with or without the "0x" prefix.  Up to 16 security IDs
     can be associated with a single housecode|unit  address  for  security  re-
     motes.

     Note:  multiple  device  IDs are normally mapped to a single housecode|unit
     address only for security remotes of the same model.  Security sensors must
     be mapped to different addresses so the signals from each	can  be  distin-
     guished.  Examples:
       ALIAS  my_sh624_remote  D12  SH624  0x1c b2
       ALIAS  back_door  C3  DS10A  0x65

     To  determine  the  security ID of a device, start Heyu normally and open a
     Heyu Monitor window.  Operate the device(s) in question by pressing a  but-
     ton,  opening  the door, or whatever it takes to make it send an RF signal.
     Heyu will display the raw RF signal in the monitor window like this:
	rcva func     RFdata : Type Sec ID 0x65 Data 0x04
     which provides the information that  a  signal  was  received  by	heyu_aux
     (rcva)  and that it is from a device of type Sec[urity] with ID 0x65.  Once
     we have added the ALIAS directive (in the back_door DS10A example above) to
     the configuration file and restarted Heyu, the same signal now  interpreted
     by heyu_engine will be displayed in the monitor as:
	rcva func      Alert : hc C unit 3 swMin (back_door)
     Indicating the door was opened and that the DS10A has its slider switch set
     to the "min" position.

     Most X10 Security devices actually send a 16-bit ID code, however the upper
     byte  is  received  only  with an RFXCOM receiver in variable length packet
     mode.  The examples here illustrate only the 8-bit code which would be  re-
     ceived  by  a W800RF32A/AE receiver or RFXCOM in 32 bit mode.  In the ALIAS
     directive, use whatever ID code, 16-bit or 8-bit, is reported by Heyu  from
     your RF receiver.

     For  entertainment  remotes  like	the UR81A, the ID doesn't change.  It is
     built into the model and isn't specified in the ALIAS.  So using the  UR81A
     as an example, we could use the directive:
       ALIAS my_ur81a  B2  UR81A

     The RF signals from entertainment remotes are currently decoded by heyu_en-
     gine  only as virtual data ('vdata') signals.  Heyu scripts can examine the
     data value (environment variable X10_Vdata) to  determine	what  action  to
     take  for	a particular button-press.  An example script is UR81A_Action.sh
     found in the Utilities section of the Heyu website (http://www.heyu.org).

SECURITY FUNCTIONS AND FLAGS
     The "Arm" and "Disarm" RF signals from security remotes like the X-10 SH624
     and KR10A correspond to functions "arm" and "disarm".  They control  Heyu's
     global  security  flags  ("armed",  "disarmed",  "armpending",  "home", and
     "away") the same as if the corresponding 'heyu arm  ...'  or  'heyu  disarm
     ...'  commands  were entered from the keyboard. (Global flags may be tested
     in the launch conditions for any script.)

     Signals from security remotes and sensors also set local flags for the  ac-
     tual  or  implied switches on the devices: "swmin", "swmax", "swhome", "sw-
     away", and finally "lobat" for a sensor low-battery flag.	(Local flags may
     only be tested in a launch condition based on a signal  received  from  the
     particular device which set that flag.)

     Security  sensors	send the RF signals "Alert" or "Clear", corresponding to
     functions "alert" and "clear".  They periodically repeat the current  state
     of  the  device  in a signal approximately every 60-90 minutes, just to let
     the host system (Heyu in this case) know they are functioning normally.

     Don't confuse the functions "arm" and "disarm" with the flags  "armed"  and
     "disarmed",  and  don't  confuse the local flags "swhome" and "swaway" with
     the global flags "home" and "away".

CONFIGURATION DIRECTIVES
     The TTY_AUX, TRANSCEIVE, RFFORWARD, and ALIAS directives are described ear-
     lier in this document.

     TRANS_DIMLEVEL directive
     This directive specifies the dim level for each RF  Dim  or  Bright  signal
     transceived  by heyu_aux.	This is the same level as would be sent with the
     'heyu dim ...' or 'heyu bright ...' command from the keyboard.  The default
     value is 2, which produces a change of about 6 percent in brightness.  Set-
     ting the value to 3 would produce a change of about 11  percent.	The  al-
     lowed  range for this directive is 1-22, the same as for commands sent from
     the keyboard.  Example:
       TRANS_DIMLEVEL  2

     AUX_REPCOUNTS directive
     RF transmitters of all types generally repeat the transmission in	multiple
     bursts.  For  example  the  X-10  HR12A  "PalmPad" transmits a minimum of 6
     bursts - more if button is held down; the X-10 security remotes and sensors
     typically transmit 5-7 bursts.  This directive instructs  heyu_aux  how  to
     handle multiple bursts in an uninterrupted sequence by providing 3 numbers:
       AUX_REPCOUNTS  <MIN> <REPEAT> <MAX>
     where:
       <MIN> is the minimum number of identical RF bursts in a row
       required for heyu_aux to issue its first response, i.e.,
       transceive the signal or send the signal to heyu_engine.
       (Default is 1 for the W800RF32A and RFXCOM, or 2 for the MR26A,
       which is more susceptable to noise.)

       <REPEAT> is the number of identical RF bursts in a row before
       heyu_aux will issue additional responses. (Default 8)
       If <REPEAT> is set to zero, no more than the first response
       will be issued. Otherwise, setting the value of <REPEAT> too
       low can result in overruns - RF signals will accumulate
       in the system's serial driver buffer faster than they
       can be transceived.

       <MAX> is the number of bursts in a row without any break at which
       point heyu_aux will stop issuing its normal responses and
       instead issue a "RF Flood : Started" signal. (Default 200)
       Once there's a break in the flood, heyu_aux will issue a
       "RF Flood : Ended" signal.
       If <MAX> is set to zero, heyu_aux will continue to send responses
       without limit and there will be no "RF Flood" signals.

     The  purpose  of  the <MAX> count is to protect the system from being over-
     whelmed by an accidental (or deliberate) unbroken flood of RF bursts, e.g.,
     from a stuck button on a remote.	Once  there's  an  interruption  in  the
     flood,  the  counting  reverts  back  to  <MIN>.  Heyu can be configured to
     launch a "-rfflood" script when it receives a RF  Flood  Started  or  Ended
     signal.

     Most users won't need to change the defaults for this directive.
     Example:
       AUX_REPCOUNTS 1	8  200
     will result in a signal being transceived or sent to the heyu_engine on the
     1st,  9th,  17th,	..., 193rd burst. Then RF Flood messages will be sent on
     the 200th, 400th, 800th, etc., burst.

     SUPPRESS_RFXJAM directive
     Older firmware versions of the RFXCOM receiver sent a special  signal  when
     they  detected RF jamming, however the system was prone to many false posi-
     tives and the feature was removed.
     The options for this directive are YES or NO, with the  default  being  NO.
     With  this default, jamming signals from the older RFXCOM receivers are re-
     ported in the Heyu Monitor and Log file  as  "RF  Jamming	:  Started|Ended
     Main|Aux",  where	Main  and  Aux	refer to the RFXCOM Master and Slave re-
     ceivers.  If set to YES, the jamming signals are treated as RF Noise.

     HIDE_UNCHANGED directive
     This directive allows the display of signals in the Heyu  Monitor	and  log
     file  to be suppressed if successive signals are unchanged, for example the
     periodic "heatbeat" signals from security sensors	or  temperature  signals
     from temperature sensors.
     With  the	default value of NO for this directive, the log file and monitor
     will be cluttered with  between  about  16  to  24  superfluous  (typically
     "Clear")  signals	daily for each security sensor, or far more from sensors
     like Oregon temperature sensors which transmit approximately every 30 to 90
     seconds.

     If the value of this directive is set to YES, then the signal will be  dis-
     played  in  the  monitor and log file only when it represents a change from
     the previous state, or if the signal launches a script.  Only  the  display
     is hidden - the processing by heyu_engine continues normally.

     DISPLAY_RAW_RF directive
     This  directive  instructs  Heyu  whether or not to display the raw RF data
     bytes from the receiver device.  The choices are the default "NONE" to  not
     display  any  raw data, "NOISE" to display data which heyu_aux judges to be
     RF noise, or "ALL" to display both noise and normal raw RF data.

     The display of raw data is in addition to the normal decoded data	display.
     Displaying  raw  data  requires  writing  a _lot_ of data to the spool file
     which can interfere with CM11A communications, so this directive should  be
     left  at  the  default "NONE" (or "NOISE") except for testing and debugging
     (or just to see what it looks like).

     Note: Some versions of the W800RF32A are said to  receive	4-byte	RF  data
     from  newer  X10  entertainment remotes like the CR14A "Pan 'n Tilt" remote
     and the UR89A "Lola" remote.  With the current absence of models for  these
     remotes  in Heyu, heyu_aux is forced to classify RF data which might be re-
     ceived from these remotes as RF noise.

     SECURID_16 directive
     Is used with the RFXCOM receiver in variable length mode to  instruct  Heyu
     how  to  handle 16-bit Security IDs. The default is YES, to use 16-bit IDs.
     If set to NO, Heyu will mask off the upper byte  and  use	only  the  lower
     byte, which corresponds to the 8-bit ID used by the W800RF32 and RFXCOM re-
     ceiver  in 32 bit mode.  This directive is provided primarily for those who
     have configured a large number of sensors using the 8-bit IDs,  until  they
     have a chance to reconfigure them.

     SECURID_PARITY directive
     Some  security  sensors  appear to have a firmware bug whereby a parity bit
     for the upper byte of a 16-bit ID isn't set  properly.   With  the  default
     value of YES for this directive, the signal will be classified as NOISE and
     ignored.	Setting  the value of this directive to NO instructs Heyu to ig-
     nore this parity bit, which is less risky than ignoring the signal.

LAUNCHING SCRIPTS
     In addition to the standard X10 functions	transceived  by  heyu_aux  (with
     source  SNDA), the following functions received by heyu_engine (with source
     RCVA) from heyu_aux are available for launching scripts:  "arm",  "disarm",
     "panic"  "alert",	"clear", "slightson", "slightsoff", "vdata", "test", and
     "tamper".

     Other special functions which can launch scripts are described in the  Heyu
     man pages for RFXSensors, RFXMeters, Digimax, and Oregon sensors.

     Don't forget to include the source keyword(s) in the launch conditions.

     The  keywords  and flags which can be tested in the launch conditions for a
     script in addition to the usual keyword "changed" and the common flags 1-16
     are: "armed", "armpending", "disarmed", "home", "away", "swhome", "swaway",
     "swmin", "swmax", "lobat", "tamper", "main", and "aux".   (The  last  three
     currently relate only to the DS90 Security Door/Window sensor.)
     Example:
       ALIAS  side_window  E7 DS10A  0x3d

       SCRIPT side_window alert armed away rcva :: heyu turn siren on

     The  special launcher type "-rfflood" will launch a script when an RF Flood
     signal is received.  The flags that can be tested in the launch  conditions
     for  this	launcher  are the special flags "started" or "ended", the common
     flags 1-16, and  the  security  flags  "armed",  "armpending",  "disarmed",
     "home", and "away".  Example:
       SCRIPT -rfflood started armed away :: heyu on siren
       SCRIPT -rfflood ended :: heyu off siren

MS10A WARNING
     When  the total voltage of the four AA cells in the MS10A falls below about
     4.3 Volts, THE SENSOR WILL NO LONGER DETECT MOTION.  Its  heartbeat  signal
     then is always Alert with the LoBat flag, which continues to be transmitted
     until  the  battery voltage is somewhat lower.  To avoid false alarms, Heyu
     scripts should always check for the Alert/LoBat condition	before	checking
     for Alert alone, e.g.,
       SCRIPT MyMS10A alert lobat rcva :: echo "Low battery" | mail
       SCRIPT MyMS10A alert rcva :: call_police.sh

SPECIAL DS90/DS18-1 SETUP
     The  DS90	and DS18E Security Door/Window Sensors have two independent cir-
     cuits.  In addition to the main circuit which is actuated by  the	magnetic
     door/window  switch, there is an auxiliary circuit actuated by connecting a
     switch to a pair of internal contacts.

     The DS90/DS18-1 also has a "tamper" switch actuated by removing  the  cover
     from  the	unit which will issue a "Tamper" command and set the Heyu tamper
     flag.  (The tamper flag is sticky and must be cleared by executing a  'heyu
     clrtamper' command.)

     Each  circuit has its own security ID.  The security IDs are related by the
     following formula, so given one the other can be derived:
       (bit-reversed)AUX_ID = 1 + (bit-reversed) MAIN_ID.

     This sensor can be configured in Heyu several different ways:

     Map the main and aux circuits to different housecode|unit addresses.   Sim-
     ply  use the main ID in one ALIAS directive and the aux ID in another ALIAS
     directive.
     Example:
	ALIAS kitchen_door  C12  DS90  0x63
	ALIAS kitchen_deadbolt C13 DS90 0xE3

     Map both main and aux circuits to the same housecode|unit	address  by  in-
     cluding  both  security  IDs  in the one ALIAS directive.	The signals from
     each will be distinguished by flags MAIN or AUX.
     Example:
	ALIAS kitchen_entry  C12  DS90	0x63  0xE3

     Note: A potential hazard with mapping both circuits  to  the  same  housec-
     ode|unit  address	is  that  they both use the same activity timer.  So the
     failure of one circuit won't be tagged as "inactive" so long as  the  other
     circuit is still working.

     If  both circuits are mapped to the same address, the raw data from the AUX
     sensor is stored in the "memory level" byte in the state table and  can  be
     recovered with 'heyu rawmemlevel Hu'.

     Use  only one of the two circuits and ignore signals from the other.  To do
     this, include the security ID for whichever circuit you want to use in  the
     ALIAS  directive.	 Tell  Heyu which one it is by adding the keyword either
     MAIN or AUX as a parameter to the directive.
     Example:
	ALIAS kitchen_door  C12  DS90  0x63  MAIN
     In the above, Heyu will compute the AUX ID (0xE3) and  ignore  signals  re-
     ceived from it.

SPECIAL SD90 SETUP
     The  Marmitek  SD90  Smoke Detector transmits signals at two independent ID
     addresses, an "Emergency" or "Test" address and a "Sensor" address.

     Marmitek security base stations apparently use only the signal at the Emer-
     gency address, and with the factory default SD90 setting the signals at the
     Sensor address are disabled.  This is unfortunate because the Sensor trans-
     missions include two important features which are absent in  the  Emergency
     transmissions: a periodic "heartbeat" signal and a low battery flag.

     The  Emergency  and  Sensor  addresses  may individually be programmed to a
     value 1 through 16.  The following table displays the (8-bit)  security  ID
     for each programmed address.

     Note:  An	RFXCOM RF receiver in the default variable length mode will dis-
     play a 16-bit security ID with a high byte of 0x54 and a low byte as  shown
     in this table, e.g., 0x54C0 for Emergency address 1.

       Address	  Emergency   Sensor
       -------	  ---------   ------
	  1	    0xC0      Disabled	(Factory setting)
	  2	    0xC1       0xD1
	  3	    0xC2       0xD2
	  4	    0xC3       0xD3
	  5	    0xC4       0xD4
	  6	    0xC5       0xD5
	  7	    0xC6       0xD6
	  8	    0xC7       0xD7
	  9	    0xC8       0xD8
	 10	    0xC9       0xD9
	 11	    0xCA       0xDA
	 12	    0xCB       0xDB
	 13	    0xCC       0xDC
	 14	    0xCD       0xDD
	 15	    0xCE       0xDE
	 16	   Disabled    0xDF

     Each installed SD90 Smoke Detector unit should be set to its own unique ad-
     dresses.	It's probably a good idea to check with nearby neighbors who may
     have a SD90 within range of your RF receiver.

     While the Emergency and Sensor addresses for a given SD90	can  be  set  to
     different	values,  there's  no particular reason for doing so and the full
     functionality of the SD90 can be achieved by  setting  both  Emergency  and
     Sensor address to the same value from 2 through 15.

     Instructions  for	changing the Emergency and Sensor addresses are provided
     in the Marmitek SD90 Advanced Use manual, which at the time of this writing
     is available for download from URL:
     http://www.marmitek.com/nl/manual/9652_SD90_AdvancedUse.pdf
     however there's currently no reference to this  anywhere  on  the	Marmitek
     website.  The instructions are reproduced here.

     Having  decided  on  the Emergency and Sensor addresses to use, perform the
     following steps:
       1. Press and hold the Test button, and while doing so, press and hold the
     Reset button until the yellow LED lights up.  Then release the  Reset  but-
     ton.
       2. Release the Test button and wait 3 seconds.
       3.  Briefly  press  the Test button the number of times for the Emergency
     address, e.g., once for address 1, twice for address 2, etc.  The LED  will
     blink for each press.
       4. Wait until the LED lights up again, then wait another 3 seconds.
       5.  Briefly  press the Test button the number of times for the Sensor ad-
     dress.  Then wait.

     After a delay of about 3 seconds, the LED will flash the Emergency  address
     and after another few seconds will flash the Sensor address.  If the Sensor
     address  is anything other than 1, the LED will then flash rapidly a number
     of times to indicate the procedure has been completed.

     The programmed addresses can be recovered by  pressing  the  Reset  button.
     The LED will flash the Emergency address, then after a short delay the Sen-
     sor address.

     The Heyu SD90 model allows the Emergency and Sensor signals to be mapped to
     the same or different housecode|unit addresses, depending on whether one or
     both IDs are supplied as a parameter in the ALIAS directive.
     Examples:
       ALIAS Both_ID  F1  SD90	0xCA  0xDA
     -- or --
       ALIAS Emer_ID  F1  SD90	0xCA
       ALIAS Sens_ID  F2  SD90	0xDA

     (where  0x54CA  and  0x54DA should be substituted for 0xCA and 0xDA respec-
     tively in the above when using an RFXCOM receive).

     The signal from the Emergency address appears in the Heyu monitor as "Test"
     when either the Test button is pressed or when the detector is actuated  by
     smoke.  (The SD90 makes no distinction between the two.)

     The  signals from the Sensor address are "Alert" when the detector is actu-
     ated by smoke, and "Clear" when the smoke dissipates and also at the heart-
     beat intervals.

     When the SD90 determines that a low battery condition exists,  it	sends  a
     single  Sensor signal with the LoBat flag, then stops sending the heartbeat
     signal. (The detector will start issuing audible beeps at intervals.)

SPECIAL BWR102 SETUP
     Mapping the BWR102 scale data to a housecode|unit address with an ALIAS di-
     rective and module type ORE_WGT1 is similar to that for other  Oregon  sen-
     sors.

     For each weight measurement, the BWR102 retransmits the encoded weight data
     at  intervals  of	10  or 11 seconds, up to 7 times or until another weight
     measurement is started.  The first of these transmissions will always  have
     the  'changed'  flag  set,  even if the weight is identical to the previous
     weight measurement.  Subsequent retransmissions will have this flag unset.

     The weight units slider switch on the scale controls  only  the  unit  dis-
     played  on  the  scale's LCD; the transmitted native units are always kilo-
     grams, to 0.1 kg precision.  The configuration  directive	ORE_WGTSCALE  is
     used to convert the native units to the user's preferred units.
     Example:
       ORE_WGTSCALE  Lbs  2.200

AUTHORS
     Charles W. Sullivan (cwsulliv01@heyu.org)

SEE ALSO
     http://www.heyu.org
     heyu(1),  x10config(5), x10sched(5), x10scripts(5), x10cm17a(5), x10rfxsen-
     sors(5), x10rfxmeters(5), x10digimax(5), x10oregon(5)

				      local			       X10AUX(5)

home | help