Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Contact Us
Online Help
Domain Status
Man Pages

Virtual Servers

Topology Map

Server Agreement
Year 2038

USA Flag



Man Pages

Manual Reference Pages  -  X10DIGIMAX (5)


x10digimax - DigiMax 210 support for HEYU


System Requirements
Compiler Option
Stored Digimax Data
Heyu Scripts
Script Environment
Configuration Directives
See Also


Heyu is an X10 Automation program for Linux, Unix, and Mac OS X. See man page heyu(1) for usage information.

DigiMax The DigiMax 210 is a wireless thermostat which transmits encoded Temperature, Setpoint, and Under/Over setpoint RF signals. When equipped with a compatible RF receiver, Heyu can receive and decode this information.


To use a DigiMax with Heyu requires a 433.92 MHz RFXCOM X10 RF receiver and Heyu version 2.3 or greater.


Support for DigiMax is compiled into Heyu by default. A compiler option can be used to omit this support. See the file INSTALL included in the Heyu distribution source directory for details.


It is assumed that a working installation of Heyu version 2.3 or greater exists on the computer, and that the user has a basic familiarity with Heyu.

The Heyu configuration file should include the directive:
TTY_AUX <serial_port or network_address:port> RFXCOM
where <serial_port> is the port where the RFXCOM receiver is connected, or <network_address:port> is where the RFXLAN receiver is listening. The RFXCOM receiver connects to a USB port but includes a USB->Serial converter chip, while the RFXLAN connects over a network.

Start Heyu with 'heyu start', then open another xterm window and run 'heyu monitor' in it to start the Heyu Monitor.

Press and hold both the '+' and '-' buttons on the DigiMax until the display starts flashing "]]]" (about 3 seconds). It will start transmitting its initialization signal every 10 seconds (for 5 minutes or until a button is pressed). Or you can just wait until the DigiMax sends its normal signal about every 5 minutes. In the Heyu monitor window you should then see something like this (ignoring the date and time):

rcva func RFdata : Type DigiMax ID 0xEB83 Data 0x29151350

Map the DigiMax ID to an otherwise unused housecode and unitcode address with an ALIAS directive in your Heyu configuration file using module type DIGIMAX.

Run 'heyu restart' to incorporate this change into the running Heyu daemons. Then the next time the DigiMax makes a transmission you should see (with the above example) something like this:

rcva func dmxTemp : hc B unit 7 Temp 21C Set Heat (Upstairs)
rcva func dmxSetpoint : hc B unit 7 Setpoint 19C Set Heat (Upstairs)
rcva func dmxOn : hc B unit 7 Set Heat (Upstairs)
-- or --
rcva func dmxOff : hc B unit 7 Set Heat (Upstairs)

Notes: The first dmxTemp signal after a start or restart will display the flag "NotSet" as the Heyu engine will not have recorded the Setpoint temperature until it receives the dmsSetpoint signal.

It's not clear whether the DigiMax thermostat will automatically swap On and Off signals if operated in "cool" mode (which requires cutting a jumper wire in the thermostat), or whether the swapping would be implemented in the base station which transmits On/Off powerline signals. User feedback is requested. The current implementation swaps the signals.


If the Heyu Engine daemon is running, current DigiMax data is stored in the Heyu state tables and displayed in the Heyu log file (if thus configured).

Stored data can be retrieved with the following Heyu state commands, where Hu is the Housecode|Unit address to which the sensor has been mapped in the ALIAS directive, or the alias label itself.
heyu dmxtemp Hu - Current temperature
heyu dmxsetpoint Hu - Temperature setpoint
heyu dmxstatus Hu - On/Off status (1 = On, 0 = Off)
heyu dmxmode Hu - Heat/Cool mode (1 = Heat, 0 = Cool)

The command 'heyu show digimax' will display stored data from all configured DigiMax units in tabular form.

When DigiMax functions dmxOn and dmxOff are received, the normal Heyu state for the particular housecode and unit is set to "On" or "Off" respectively and will be reflected when state commands like 'heyu onstate Hu' and 'heyu show housemap H' are run.


Heyu scripts can be launched by the functions "dmxsetpoint", "dmxtemp", "dmxon", and "dmxoff" the same as any other Heyu function. The launch conditions in the SCRIPT directive must include the source keyword "RCVA" and may optionally include the keyword "changed", any of the common flags, and the global security flags. They may also optionally include the local flags.
SCRIPT L9 rfxtemp rcva armed away ::
SCRIPT L9 dmxon dmxoff changed rcva ::

Local flags for the DigiMax functions are:
set, heat, cool, init, and their negations, e.g., notset.


Any Heyu script has access to the stored DigiMax values through environment variables linked to the housecode|unit (Hu) and its alias mapped to each DigiMax unit.
X10_Hu_dmxSetpoint x10_<Hu_alias>_dmxSetpoint
X10_Hu_dmxTemp x10_<Hu_alias>_dmxTemp
X10_Hu_dmxStatus x10_<Hu_alias>_dmxStatus (1 = On, 0 = Off)
X10_Hu_dmxMode x10_<Hu_alias>_dmxMode (1 = Heat, 0 = Cool)
X10_Hu_dmxSet x10_<Hu_alias>_dmxSet (1 = Set, 0 = notSet)
X10_Hu_dmxInit x10_<Hu_alias>_dmxInit (1 = Init, 0 = notInit)

If a Heyu script is launched by one of the functions "dmxsetpoint", "dmxtemp", "dmxon" or "dmxoff", the environment will additionally include variables for flags and values without the "Hu" identification as follows:
flags : X10_dmxSet, X10_dmxHeat, X10_dmxInit
dmxsetpoint : X10_dmxSetpoint
dmxtemp : X10_dmxTemp
dmxon or dmxoff : X10_dmxStatus, X10_dmxHeat

No variable is created for data which is invalid or "not ready".


In addition to the ALIAS and scaling directives mentioned above, the following will also affect DigiMax data. See man page x10config(5).



DigiMax support was added to Heyu by Charles W. Sullivan using the protocol gratefully provided by RFXCOM.

heyu(1), x10config(5), x10sched(5), x10scripts(5), x10aux(5), x10cm17a(5), x10rfxsensors(5), x10rfxmeters(5)
Search for    or go to Top of page |  Section 5 |  Main Index

--> X10DIGIMAX (5) local

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.