X10EC X10 Event Control
Copyright 1993 ù D.Huras ù All Rights Reserved
1. DESCRIPTION 14. SAVE OPTIONS
2. REQUIREMENTS 15. INTELLIGENT EDIT
3. WARRANTY 16. UNDOCUMENTED CP290 COMMANDS
4. FEATURE OVERVIEW 17. LAST UPLOAD DATE/TIME
5. QUICK START INSTRUCTIONS 18. CP290 ICON STORAGE
6. INSTALLATION INSTRUCTIONS 19. RECYCLE PROCESS
7. COMMAND LINE ARGUMENTS 20. COMPATIBILITY ISSUES
8. PROGRAM OVERVIEW 21. PROBLEM RESOLUTION
9. KEYBOARD USAGE 22. REGISTRATION INFORMATION
10. START UP OPTIONS 23. UPGRADE INFORMATION
11. COMMUNICATION PORTS 24. OTHER HOME AUTOMATION SOFTWARE
12. SCREEN DISPLAY OPTIONS 25. RELEASE HISTORY
13. SUN TIME PARAMETERS 26. ACKNOWLEDGMENTS
X10EC is an Event Scheduler for the X10 CP290 Computer Interface(*1)
with many distinguishing features. X10EC is a full-screen DOS
program that uses a simple point & click user interface. (A Mouse
though not required is highly recommended). X10EC is designed to be
robust software that is processor speed independent; however, the
overhead required for the user interface is significant and a 286 or
above processor is recommended. This program is shareware and you
are invited to evaluate it for 30 days. If you continue to use the
program after the 30-day evaluation period you are asked to register
it. The author retains all rights to the program.
(*1) The CP290 Computer Interface is a device manufactured by X-10
that can be connected to a microcomputer serial port. The CP290
also plugs into an electrical outlet and it is through this
connection that the CP290 imposes X-10 commands onto the powerline.
X-10 commands use the power line as a carrier; other X-10 devices
connected to the power line will respond to these commands (ie.
switch ON/OFF lights, appliances).
ù An IBM-Compatible PC with at least 1 serial port.
ù An X10 CP290 Computer Interface attached to a serial port.
ù A Microsoft-Compatible Mouse is highly recommended
ù A Colour adapter/display is recommended although the program
should run with a monochrome display/adapter. If you
experience problems with the default colors, then try the /BW
command line argument which will set everything to Black &
The program requires approximately 500K available conventional memory
to run. The program will attempt to run if less than 500K is
available; however, depending on the number of Events/Devices
loaded and the number of modeless Windows opened, an 'Out of Memory'
error may occur. X10EC will forewarn you of a low memory situation
during program startup. You can reduce the memory requirements
somewhat by foregoing the online Help Sub-system (See STARTUP
X10EC is supplied as is. The author disclaims all warranties,
expressed or implied, including, without limitation, the warranties
of merchantability and of fitness for any purpose. The author
assumes no liability for damages, direct or consequential, which may
result from the use of X10EC.
4. FEATURE OVERVIEW
ù User-Friendly point & click DOS character-based Interface
ù Most program functions can be controlled using a mouse; minimal
keyboard intervention is required.
ù Supports Standard CommPorts 1 thru 4 and a User Defined CommPort
that can support any IRQ between 1 & 15 (inclusive) and any
Base I/O Address.
ù SUPPORTS * 5 * UNDOCUMENTED CP290 Commands
ù Compatible with the X10.DAT file format used by X10.EXE
(X10.DAT files can be read, created, updated and written)
ù Supports X10.EXE 'Frozen' Events
ù Supports Relative Times (Sunrise/Sunset +/- Offsets)
ù Stores ALL EVENT information (including Sunrise/Sunset Offsets
and Last Upload Date/Time) within the CP290
ù EVENTS can be programmed without touching the keyboard
(using a mouse)
ù EVENTS can be sorted using one of 3 sort criteria's
ù Flexible EVENT Scheduling; Program EVENTS from a DEVICE List
Window -OR- an EVENT List Window
ù 'Intelligent' Edit (referential integrity) automatically
updates EVENTS when you change a DEVICE House/Unit address
ù Merge Device Descriptions from any number of X10.DAT
files into one X10.DAT file
ù Runs in batch mode to recycle Sunrise/Sunset times
ù Detects and exploits EGA/VGA 43/50 line mode
ù A comprehensive on-line Help sub-system that can be disabled
at the user's option to decrease program load time.
ù The program WILL load without a CP290 Interface attached, however
all attempts at serial communications will result in errors; the
program will attempt to trap all such errors.
5. QUICK START INSTRUCTIONS
These instructions are targetted for experienced users who wish
to get up & running quickly without reading this entire document:
1) Copy X10EC.EXE & X10EC.HLP to a sub-directory of your choice;
preferably NOT the same sub-directory where X10.EXE resides.
2) If you have a relevant X10.DAT file, then copy it to the
sub-directory where you have installed X10EC.EXE; if you don't
have an X10.DAT file X10EC can build one for you.
3) If your CP290 is on CommPort 1, then run X10EC without any
command line arguments; otherwise use the /Cn argument where
n = CommPort (for non-standard IRQ/Base_IO_Address set up see
COMMUNICATION PORTS section).
4) a) X10.DAT File AVAILABLE
X10EC will load the Devices and Events from your X10.DAT
file and display them in the DEVICES and EVENTS Windows
respectively. If the EVENTS in your X10.DAT file are not
up to date, then 'Download Events' using the 'Transfer'
menu item. When the Events have been downloaded they
will be matched against your DEVICES; any Events for
house/unit codes that are not defined as a DEVICE will
show up as 'Unnamed Device' - click on 'Name Device' to
Name these Devices.
b) X10.DAT File NOT AVAILABLE
X10EC will load and attempt to load Devices & Events from
an X10.DAT file (that doesn't exist); each load attempt
will abort, click on OK to continue. You will see an
empty EVENTS window, use the 'Download Events' menu item
under 'Transfer' to populate your EVENTS Window. Now
scroll through the EVENT List and click on 'Name Device'
for each 'Unnamed Device'; type a Description and/or
Location for each.
5. SAVE your X10.DAT file; press CTRL-S.
6. EDIT existing DEVICES and/or EVENTS by double-clicking
the list item your wish to change. (or click on Modify once
you've highlighted the list item). You can apply as many edits
as you wish and experiment with the program. NO CHANGES WILL
BE UPLOADED TO YOUR CP290 UNTIL YOU EXPLICITLY UPLOAD THEM
USING THE TRANSFER MENU. Similarly, no changes will be
written to your X10.DAT File until you explicitly use the
SAVE Menu. X10EC will prompt you to save your X10.DAT File
if any changes were made to the Devices or Events when you
Exit the program UNLESS you use the Unconditional Exit which
quickly Exits the Program without prompting you to save
6. INSTALLATION INSTRUCTIONS
There are no special installation instructions; simply copy the
program to a sub-directory of your choice and run it. The program
will look for 3 files in the directory it is run from. However,
the program will run with or without the following 3 files:
The X10EC.INI file is a text file containing all program
parameters; there is no need to create this file yourself
since the program will generate one whenever you select the
'Save Options' menu item. If an X10EC.INI file is not found
(which will be the case the first time X10EC run), X10EC
will revert to program defaults. A sample X10EC.INI file
(generated by X10EC.EXE) is shown below.
X10EC retrieves the on-line help text from this file. If the
file is not found then X10EC will continue loading however
the help feature will be disabled. If you wish to reduce
X10EC's memory requirements, you can uncheck 'Load Help'
from the Startup Options screen, or use the /NH command
The default X10 Startup File is X10.DAT; X10EC will attempt
to retrieve Device Descriptions and Events from this file
in order to populate the DEVICES and EVENTS Windows respectively.
An X10.DAT file is a file format used by the X10 program
supplied by X10 with the CP290 interface. From the Startup
Options screen you can instruct X10EC to look for the Startup
X10 File on any drive/sub-directory. Conversely, you can
instruct X10EC to NOT retrieve Devices and/or Events from
an X10.DAT file upon Program Startup; in this case X10EC
will open empty DEVICES and EVENTS Windows.
; X10EC.INI File Created: 12-12-1993 07:43:57
; All Lines prefixed with ; are ignored
; CommPort=1,2,3 OR 4 DEFAULT=1
; Colour Values
; 0=Black 4=Red 8=Gray 12=Bright Red
; 1=Blue 5=Magenta 9=Bright Blue 13=Pink
; 2=Green 6=Brown 10=Bright Green 14=Yellow
; 3=Cyan 7=White 11=Bright Cyan 15=Bright White
; End of X10EC.INI (07:43:57)
This X10EC.FILE was created using the 'Save Options' menu item.
7. COMMAND LINE ARGUMENTS
DEFAULTS: If the program is run without any command line arguments
it will default to COMMPORT 1.
The following command line arguments can be entered in any order:
/Annnn(n) ù Base I/O Address applicable to User Defined CommPort
(Must be specified as a decimal number)
If /I agrument is present, but /A is not; then Base
I/O Address will default to 1016 (3F8 Hex).
/BW ù Use Monochrome colours (Black & White)
/Cn ù COMMPORT where n = 1,2,3 & 4
/F:[d]\filename ù X10.DAT Startup File Specification
where [d] = drivespec eg. /F:C:\X10\X10.DAT
/In ù IRQ applicable to User Defined CommPort where n = 1 - 15
If /A argument is present, but /I is not; then IRQ
will default to 4.
/NH ù Do Not Load HELP Sub-System
/NH- ù Load HELP Sub-System (Override INI directive)
/RECYCLE ù Perform Recycle Process (can abbreviate as /R)
COMMAND LINE OPTIONS OVERRIDE X10EC.INI SETTINGS
8. PROGRAM OVERVIEW
X10EC has been designed to be flexible so that the user controls the
program rather than the program controlling the user. There are a
variety of options that let the user determine how the program will
respond in certain instances including Program Startup. The DEVICES
and EVENTS Windows are the 'cornerstones' of the program but they do
not limit the user to performing Device related activities in the
DEVICES Window or Event related activities in the EVENTS Window.
For example, if you spot an EVENT in the Events Window and notice
that there is no Device Description for it, you can simply highlight
the Event and click on the 'Name Device' button; an 'Insert Device'
window will pop up with the House and Unit code preset from the
highlighted Event. Once you have entered the Device Location and/or
Description it will be propagated to all Events in the EVENTS Window
that have targetted that particular house/unit code. Similarly,
while in the DEVICES Window (which provides you a Count of how many
Events have been scheduled for each Device), you may notice that a
particular Device has no Events scheduled. In this case, you can
simply highlight the Device and click the 'Schedule Event' button
and an 'Insert Event' window will pop up with the Device Description
already filled in.
When X10EC loads, it looks at the Startup Options to determine if
Devices and/or Events are to be loaded. Devices can only be loaded
from an 'X10.DAT' file whereas Events can be loaded from either the
same X10.DAT file or downloaded from the CP290. Loading Events from
the file is faster than downloading them, but you may want to ensure
you're always working with current information by waiting for the
download. (Also, if you've RECYCLE'd your Events you may want to
see what the Relative Times were for the last RECYCLE iteration; in
this case you should download the Events). If you have defined
devices across multiple X10.DAT files, you can merge them all
without disturbing the currently loaded Events. Use the 'Retrieve
Devices ONLY' menu item; X10EC will ask you if you want to replace
the loaded Devices with the Devices from the File OR if you want to
append the Devices from the File; select Append to merge the
Devices. Note that any time X10EC loads Devices it will discard
duplicate descriptions; it will also sort Devices by House/Unit code
in support of the referential integrity features offered by X10EC.
The Event Counts displayed in the DEVICES Window refer to
single-unit Events, Group and Global Events are not included in
Once you've loaded Devices/Events, you can update them freely. The
Insert, Modify, & Delete buttons will behave as expected. To use the
Modify or Delete button you must have highlighted an entry from the
List box. Instead of clicking the Modify button you can double
click the list item (or press the spacebar). The Clone button is
similar to the Modify button since it will present a change form
just as if you've clicked the Modify button. The difference is a
new entry will be created. This is handy if you're programming
ON/OFF times; Insert the ON Event, then clone the ON Event, change
the action to OFF and set the Time.
In the Events Window you can Freeze or Secure Events from the list
box. If you Freeze an Event, an asterisk will be displayed beside
the Event Number. If you Secure an Event, a '÷' will precede the
time. (Secured Events will occur at +/- 30 minutes from the set
time). You can easily swap between Windows by clicking the '' key.
The 'Window' menu item allows you to manage the location and size of
the EVENTS and DEVICES windows. If your display is set for
43/50 line mode, you may find that the Split,Horizontal provides you
with the optimal display. The Unsplit command reverts both Windows
back to their startup state.
You can print an Event or Device listing at anytime using 'Print
Report' under the 'File' menu. Each time you print a report you
have the option of printing directly to your printer or to a file.
The lines per report page can be set from the 'Start Up' options
Once you're finished updating Event/Devices you can save them to
your designated X10 Startup File (which will appear on the File
Menu), or to any other filename (use 'Save AS'). You can also
upload your Events to the CP290. X10EC gives you 2 choices, you can
upload the modified Events ONLY, or ALL Events. CAUTION: ONLY USE
THE 'UPDATES ONLY' option if you are sure that the currently loaded
Events are based on the Events loaded in the CP290 before you
applied your Updates. If you do not explicitly Save and/or Upload
the program will prompt you to before exiting; UNLESS YOU EXIT USING
THE 'UNCONDITIONAL EXIT' which quickly exits the program without
prompting you to save/upload anything.
9. KEYBOARD USAGE
Use the TAB/Shift-TAB keys to move among the various controls. The
Up/Down arrows can be used to move up and down List Boxes; the
Spacebar can be used to select the current List Box item. The Enter
key can be used to check/uncheck a check box, or invoke a command
button. The ESCAPE key will exit the current function or the
program if no other windows are visible. Most Command Buttons
and controls have quick access keys which you can identify by
the highlighted character in the button/control name; press the
ALT key + the quick access key to invoke the action.
The menu-bar can be activated by pressing the ALT key, you can use
the cursors keys to navigate the menus, or press the highlighted
character to immediately invoke the desired menu item. Many of the
menu items have short-cut keys. The following list shows ALL menu
items along with the associated short-cut key if one is defined.
Open X10 File
Retrieve Devices/Events ù Ctrl-R
Retrieve Devices ONLY ù
Retrieve Events ONLY ù
Save X10 File ù Ctrl-S
Save X10 File AS ù Ctrl-A
Print Device Listing ù
Print Event Listing ù Ctrl-P
Exit ù Ctrl-X
Unconditional Exit ù Ctrl-Q
Devices ù Ctrl-D
Events ù Ctrl-E
Horizontal ù Ctrl-H
Vertical ù Ctrl-V
Swap ù Ctrl-W
Devices Name ù F2
Event Counts ù F3
Sort Events By
Location,Description ù Shift-F1
Housecode,UnitCode ù Shift-F2
Day,Time ù Shift-F3
ReCycle Sun Times ù F4
Show Sun Times ù Ctrl-T
Upload Events TO CP290
All Events ù Ctrl-U
Updated Events ù
Download Events FROM CP290ù
Clear Events ù
Communications ù Ctrl-C
Startup ù Ctrl-B
Sunrise/Sunset Parms ù
Save Options ù Ctrl-O
Help Information ù F1
About ù Ctrl-F1
10. STARTUP OPTIONS
DEVICES & EVENTS
The DEVICES Window and EVENTS Window are always opened each time you
start X10EC. You can setup X10EC to automatically populate these
Windows by clicking the appropriate option buttons. The only source
to populate the DEVICES Window is an X10.DAT file; the EVENTS Window
can be populated from either an X10.DAT file or a CP290 download.
Only one X10.DAT startup file can be identified and it will source
both the DEVICES Window and the EVENTS Window (if applicable).
General options can be modified at any time while X10EC is executing
and the effect will be immediate.
Uncheck if you DO NOT want X10EC to use the ICON memory area of
the CP290; in this case the Relative Time feature will be
LOAD HELP SUBSYSTEM:
Uncheck to save memory and speed up program load time.
CONFIRM DELETE REQUESTS:
Uncheck to delete without confirmation, You may want to turn
off the confirmation if you're doing many deletes,
it's a good idea to leave it checked just in case.
AUTOREFRESH DEVICE NAMES
On slower machines it could become a nuisance to wait for the
program to refresh the Device Names in the EVENT Window
whenever a Device Name is modified. You may want to Refresh 'ON
DEMAND' instead by using F2.
AUTOREFRESH EVENT COUNTS:
See comments re: AUTOREFRESH DEVICE NAMES;Uncheck to Refresh
'ON DEMAND' (F3).
CP290 CLOCK REFRESH:
The PC Time in the screen header is refreshed every minute; the
CP290 Time in the screen header can also be refreshed
periodically by setting the refresh rate greater than 0.
THE FIELD WIDTH IS ONLY 1 CHARACTER AND THE COMPILER DEFAULTS
TO KEYBOARD 'INSERT MODE'; PRESS THE INSERT KEY TO TOGGLE THE
THE KEYBOARD TO 'TYPEOVER MODE' TO CHANGE REFRESH VALUE.
LINES PER REPORT PAGE
Valid Range is 10-99. (see previous comments re: keyboard
PRINT IBM BOX CHARACTERS:
If your printer is set up to print the IBM ASCII character set
you can improve the appearance of the DEVICE & EVENT printed
reports by checking this box
11. COMMUNICATION PORTS
X10EC supports "pseudo standard" CommPorts 1 thru 4 using the
³ ³ ³ Base I/O Address ³
³ CommPort ³ IRQ ÃÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄ´
³ ³ ³ Decimal ³ HEX. ³
³ 1 ³ 4 ³ 1016 ³ 3F8 ³
³ 2 ³ 3 ³ 760 ³ 2F8 ³
³ 3 ³ 4 ³ 1000 ³ 3E8 ³
³ 4 ³ 3 ³ 744 ³ 2E8 ³
If one of these CommPort settings matches your hardware
configuration simply select the appropriate CommPort from the
Communications Options screen. (You could also start X10EC with the
/C command line argument or use the COMMPORT= X10EC.INI parameter).
You can define your own CommPort by selecting User Defined CommPort
from the Communications Options screen and setting the IRQ interrupt
and Base I/O Address. (You could also use the /I and /A Command
Line Args or IRQ= & Base_IO_Address= X10EC.INI file directives).
IRQ can be set to any value between 1 and 15 (inclusive). Base I/O
Address can be set to any value greater than zero. CAUTION: your
hardware may "lock up" if incorrect settings are used. Once you
have enabled communications with the CP290, then use the 'Save
Options' menu item to save the information to the X10EC.INI file.
THE BASE I/O ADDRESS MUST BE SPECIFIED IN DECIMAL NOTATION.
IBM PS/2 CommPort Parameters are shown below:
³ PS/2 ³ ³ Base I/O Address ³
³ CommPort ³ IRQ ÃÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄ´
³ ³ ³ Decimal ³ HEX. ³
³ 1 ³ 4 ³ 1016 ³ 3F8 ³
³ 2 ³ 3 ³ 760 ³ 2F8 ³
³ 3 ³ 3 ³ 12832 ³ 3220 ³
³ 4 ³ 3 ³ 12840 ³ 3228 ³
³ 5 ³ 3 ³ 16928 ³ 4220 ³
³ 6 ³ 3 ³ 16936 ³ 4228 ³
³ 7 ³ 3 ³ 21024 ³ 5220 ³
³ 8 ³ 3 ³ 21032 ³ 5228 ³
A User Defined CommPort must be used for
PS/2 CommPorts 3-8.
12. SCREEN DISPLAY OPTIONS
This feature allows the user to choose their own screen colours. A
list of screen elements is presented on the left side of the screen
and all of the available Foreground and Background (when applicable)
colours are displayed next to the screen elements. To change a
colour, simply select the screen element you wish to change and
click on the preferred Foreground/Background colours. The Colour
defaults can be restored by clicking on the Colour button, similarly
Black & White colours can be selected by clicking on the Monochrome
button. Note: some colour combinations will render the screen
unreadable, if this happens press the [Esc] key to exit the dialogue
and restore the colours to their previous setting. Once you are
satisfied with your colour selections the 'Save Options' command can
be used to store them so that X10EC always starts up with your
The colours for message boxes cannot be changed (always black
on white;compiler limitation).
There are 3 additional program options that can be set:
The program will attempt to render the screen controls in 3D.
If you choose a bright screen background, the 3D effect will
not be evident and you may wish to turn off THREE-D. It is
also recommended that you turn off THREE-D for Monochrome
The program will paint shadows underneath and to the right of
loaded screen windows; this helps to define the boundaries of
pop-up windows. It is recommended that you turn the WINDOW
SHADOW off for Monochrome Monitors.
The Graphic Gauges checkbox determines whether or not graphical
EGA/VGA characters are used to construct the sliding percentage
complete gauge. If this causes problems with your screen
display, then uncheck the box; the ASCII character 'Û' 219 will
be used to paint the gauges instead.
13. SUN TIME PARAMETERS
This screen under the 'Options' menu allows you to set the
Longitude, Latitude & GMT Offset parameters specific to your
location. These parameters are used to calculate your local Sunrise
and Sunset times. Sample Longitude & Latitude parameters for a
limited selection of cities can be set by using the combo box (click
on the down arrow or press F4 to expand the list box). THE GMT
OFFSET MUST BE EXPLICITLY SET; it can vary depending on whether
Daylight Savings Time is in effect or not. eg. for the Eastern Time
Zone the GMT Offset is +4 when Daylight Savings Time is in effect
and +5 when it is not. The calculated Sunrise/Sunset times will be
accurate to within a minute or two.
You can view the Sun Times for the upcoming 7 days by using the
'Show Sun Times' option under the 'Actions' menu.
Note: when you set a Relative Time and want to see what Absolute
time the Program will upload to the CP290, then use the 'ReCycle
Sun Times' option under 'Actions' and then double-click the Event.
The time is shown in the Absolute Time frame. Note: X10EC will
always 'ReCycle' the Sun Times prior to an upload.
When X10EC encounters a Relative Time it determines the Absolute
Time to upload as follows:
1) It looks at the 'Day(s) of Week' the Event is scheduled,
finds the next Date the Event will run and uses the Sunrise/
Sunset Times for that Day.
2) If the Event is to run today, it will compare the current time
to the Sunrise/Sunset +/- Offset Time. If the time has already
past, then it will use the Sunrise/Sunset time for one week
3) X10EC will not allow the +/- Offset Time to cause the Event to
span to the previous day or the next day; X10EC will only
negatively Offset a time to 12:00 AM on the scheduled day, it
will only positively Offset a time to 11:59 PM.
14. SAVE OPTIONS
This menu option saves all of the current program settings to the
X10EC.INI file. If an X10EC.INI file exists, the program will
display a Warning Message and confirm that you wish to overwrite the
existing X10EC.INI file before proceeding. The X10EC.INI file that
X10EC generates is a plain ASCII file that you can edit using your
favourite editor. X10EC will notify you of any errors within the
X10EC.INI by displaying the offending line along with a message
indicating it will be ignored. Note that the X10EC.INI file is
parsed before command line arguments and therefore will be
overridden by contradicting command line arguments.
15. INTELLIGENT EDIT
X10EC offers some degree of referential integrity when you're
editing Device Names:
ù If you modify a Device Address (ie. House and/or Unit Code)
X10EC can optionally examine all of the scheduled Events and
update* any that target the Device to reflect the new
ù If you Delete a Device Description X10EC can optionally
examine all of the scheduled Events and purge* any that are
specifically targetted for the deleted Device.
ù If you change a Device Name; any Events which target the
Device will be updated to reflect the new Device Name the
next time the Event list gets focus. (IF AUTOREFRESH Device
Names is checked - otherwise you can press F2 at any time to
refresh Device Names).
* Group and Global Events are left intact; only single unit
Events will be purged/modified.
16. UNDOCUMENTED CP290 COMMANDS
X10EC supports the following undocumented CP290 commands:
Fade OFF þ DIMS Light(s) to 0 then turns Unit(s) OFF
(Can target multiple units for this command)
X-Light ON þ Exclusive Light ON - Issues an ALL LIGHTS OFF
then Brightens selected Unit(s)
(Can target multiple units for this command)
All Lights ON þ All Lights on selected House Code set ON
All Lights OFF þ All Lights on selected House Code set OFF
All Units OFF þ All Units on selected House Code set OFF
NOTE: Storing Events with these undocumented commands MAY CAUSE
problems with some CP290 Event Schedulers. These commands
will be transparent to X10.EXE; however, X10.EXE can
only display ON/OFF/DIM. If X10.EXE encounters one of
these undocumented commands it will display it as blank.
17. LAST UPLOAD DATE/TIME
If 'Sunrise/Sunset' support is enabled, X10EC will store the Last
Upload Date/Time in the CP290 Interface. When Events are uploaded
to the CP290, the Last Upload Date/Time is updated. Each time
Events are downloaded from the CP290, the Last Upload Date/Time will
be displayed in the Screen Header (left margin, 3rd line). X10EC
will also extract the Last Upload Date/Time from X10.DAT files when
they are retrieved.
18. CP290 ICON STORAGE
The CP290 also has memory set aside for Icon storage. The DOS
character-based software does not display any graphical Icons hence
this storage area is unused when the CP290 is used with the X10.EXE
program. X10EC uses this memory area to store Sunrise/Sunset (see
Sun Time Parameters) information applicable to the scheduled Events
as well as the 'Last Upload' Date/Time and other information.
Hence, all Event Information including Sunrise/Sunset Offset
information is stored within the device. This means whenever you
download Event Information from the CP290 the Sunrise/Sunset offset
information is also downloaded; you do not have to 'match' or
'associate' the downloaded events with a data file in order to
translate the 'Absolute' Time of Day back to a 'Relative'
(Sunrise/Sunset +/- Offset) Time. This also provides a complete
backup to the Event Information stored in an X10.DAT file.
You can elect not to use the CP290 Icon Storage area by unchecking
the 'Support Sunrise/Sunset' box on the 'Start Up' options screen.
(This will also disable support for the 'Last Upload Date/Time'
information in the screen header).
19. RECYCLE PROCESS
The RECYCLE Process runs X10EC in Batch Mode and updates any Events
that have been scheduled with Relative Times (ie. Sunset/Sunrise
+/- Offsets). This allows you to run X10EC from a Batch File weekly
to ensure your Sunset/Sunrise times are current. X10EC will perform
the following steps when run with the /RECYCLE Command Line
ù Calculate Sunset/Sunrise Times for the upcoming 7 Days
ù Download Event Information from the CP290
ù Download Sunset/Sunrise Offset Information from the CP290
ù Update Events with Sunset/Sunrise relative times
ù Upload any updated Events to the CP290
ù Backup the old X10EC.LOG to X10EC_B.LOG
ù Log all activity to X10EC.LOG
Note that the RECYCLE process DOES NOT read EVENT INFORMATION from
the X10 Startup File, this is to ensure that only currently
scheduled Events as stored in the CP290 are updated. (There is no
guarantee that the current X10 Startup File as defined in the
X10EC.INI reflects the contents of the CP290 Event Memory.)
Consequently you may wish to set up X10EC to always download Events
from the CP290 upon startup rather than retrieving Events from the
20. COMPATIBILITY ISSUES
X10EC is file compatible with X10.EXE but there are some limitations
associated with partially 'Frozen' Group Events. X10.EXE allows you
to partially freeze Group Events, that is some units within the
group can be frozen whereas other remain scheduled Events. X10EC
does not support this level of granularity for Frozen Events; it
considers any Event either Frozen or Thawed (ie. Not Frozen) and
this applies to single unit Events and multiple unit Events alike.
If a multiple unit Event is Frozen by X10EC then all units defined
to the Event will be Frozen.
X10.EXE relies solely on the X10.DAT file to decipher Frozen Events
that it 'Freezes'. Conversely X10EC.EXE can decipher Frozen Events
that it 'Freezes' from either an Event Download or an X10.DAT file.
If Events have been FROZEN by X10.EXE, then X10EC.EXE will behave as
Event Source Event Type Freeze X10EC Interpretation
ÄÄÄÄÄÄÄÄÄÄÄÄ ÄÄÄÄÄÄÄÄÄÄÄ ÄÄÄÄÄÄ ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ
X10.DAT File Single Unit Frozen No impact: will interpret
X10.DAT File Multi-Unit Partial X10EC will capture unFrozen
units only and treat as a
X10.DAT File Multi-Unit Frozen No impact: will interpret
CP290 D/L Single Unit Frozen X10EC will NOT capture unit;
will treat as Frozen Event
CP290 D/L Multi-Unit Partial X10EC will capture unFrozen
units only and treat as an
CP290 D/L Multi-Unit Frozen X10EC will NOT capture units;
will treat as Frozen Event
If this all seems confusing, just be sure to unFreeze any Events you
have Frozen with X10.EXE before using X10EC.EXE. Any Events Frozen
by X10EC will be translated correctly by X10.EXE if you decide to
fallback to X10.EXE.
X10.EXE will read and interpret the X10.DAT files created by X10EC
that include X10EC extensions. Of course, the extensions added by
X10EC will be transparent to X10.EXE, however, THEY WILL BE LOST IF
X10.EXE OVERWRITES the file. (Extensions include Sunrise/Sunset
information and Last Upload Date/Time). For this reason, it is
recommended that you create an X10.DAT file for the exclusive use of
X10.EXE rather than sharing X10.DAT files among the two programs.
21. PROBLEM RESOLUTION
Generally, if your CP290 works with the X-10 supplied software then
you should have no problems running X10EC. The program will load if
you run it without any arguments (thereby defaulting to COMMPORT 1)
and your CP290 is actually attached to COMMPORT 2. If this is the
case X10EC will report 'Timed Out waiting for a response' when it
attempts to retrieve the CP290 Time, Day of Week and Base HouseCode.
You can toggle to the correct COMMPORT once the program is running
by using the Options, Communications menu. The Save Options menu
option will save all settings to the X10EC.INI which obviates the
need for command line arguments.
If you run X10EC with a modem attached to the COMMPORT, you may get
unpredictable results since the modem will echo everything back to
If you use a Serial Mouse, this may cause a conflict if X10EC
attempts to communicate with a CP290 on the same CommPort. You may
want to start X10EC with the /C command line argument to ensure it
does not default to CommPort 1 if your mouse is also on CommPort 1.
If you suspect that your CP290 is failing, you should try using the
diagnostic/debug features provided by X10DC.
In some cases X10EC may report communication errors (ie. time-outs,
unmatched checksums, etc). This may occur when scheduled Events
collide with CP290 Uploads/Downloads that are in progress. (The
CP290 transmits onto the serial port line whenever a scheduled event
occurs and when you press the rocker buttons on the CP290). X10EC
attempts to minimize collisions by discarding unexpected serial
input, however the possibility still exists. You should just
re-invoke the interrupted action to recover from this type of
The open architecture of the PC compatible operating environment and
the near infinite combinations of hardware and software complicate
the compatibility of applications software. While every effort has
been made to ensure that X10EC is compatible with as many
hardware/software combinations as possible, there may be operating
environments in which X10EC will not run properly.
Problems can be reported to:
37 Ruddell Crescent
Georgetown, Ont. L7G 5N4
Internet: [email protected]
22. REGISTRATION INFORMATION
The registration fee for X10EC is $25. (US Dollars for US shipping
addresses, CDN Dollars for Canadian shipping addresses). X10EC is
currently supplied as functioning software without built-in delays
or obtrusive "nag" screens prompting you to register. The Relative
Time feature (ie. Sunrise/Sunset support) is the only feature not
supported in the shareware version of X10EC. A SIGNIFICANT amount
of time and effort went into this program; please register the
program if you intend to use it beyond the 30-day evaluation period.
Registered Users will be shipped a printed manual and a 3«" diskette
(if you would prefer a 5¬" diskette please advise) containing the
registered version of the program. Registration Benefits:
ù Full support for the Relative Time feature which allows you
to schedule Events relative to your local Sunset/Sunrise time
offset by up to +/- 255 minutes.
ù BONUS PROGRAM: Registered Users will also receive a bonus
program; X10DAT reads an X10.DAT file and prepares a report
listing all installed devices and scheduled events including
"frozen" events and multiple unit events. See the X10DAT.RPT
file for a report sample.
ù DISCOUNTED REGISTRATION FEE for X10DC; X-10 Direct Control.
Registered Users can register X10DC for $15; the regular
registration fee is $20.
Complete the order form in the REGISTER.FRM file and send with
your payment to:
37 Ruddell Crescent
Georgetown, Ont. L7G 5N4
Alternatively, you may wish to register using CompuServe Shareware
Registration; you can register X10EC, X10DC or BOTH using CompuServe
Shareware Registration. The Registration Fee will be charged to
your CompuServe billing account and the latest version of the
software will be shipped within one business day. GO SWREG while on
CompuServe to use Shareware Registration.
Program Title Program Name Program ID# Charge
ÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ ÍÍÍÍÍÍÍÍÍÍÍÍ ÍÍÍÍÍÍÍÍÍÍÍ ÍÍÍÍÍÍÍ
X-10 Event Control X10EC 1774 $25.00
X-10 Direct Control X10DC 620 $20.00
X-10 Control Bundle X10CB 1775 $40.00
(X10DC + X10EC)
Shareware Registration (SWREG) will prompt you through the
registration process; you can register programs by referring to them
by program name or ID #. SWREG will display a description of the
program and prompt you to confirm the registration order; you have
the opportunity to abandon the registration process at any time.
23. UPGRADE INFORMATION
ºREGISTERED USERS of prior versions of X10EC can upgrade to theº
ºcurrent version at ANY TIME by simply sending a diskette º
ºcontaining their registered version of the software and $2 º
ºfor postage to the address above. º
24. OTHER HOME AUTOMATION SOFTWARE by David Huras
Program Description Status
------- ------------------------------------------ --------------
X10DC X10 Direct Control - CP290 Point & Click Version 1.50
Initial Release: February '93 December '93
X10EC X10 Event Control - CP290 Point & Click Version 1.00
Interface Program to manage Event Data. December '93
Includes Sunrise/Sunset Time Offsets.
Initial Release: December '93
IRDC/ INFRA-RED Direct Control/Command Line Ctrl Version 1.01
IRDQ A program which sends instructions to a October '93
ONE FOR ALL (6 or 12) remote control. The
remote then emits I/R signals.
IRDCW INFRA-RED Direct Control for WINDOWS Version 1.00
Please register this software if you use it regularly; by registering
you reinforce my commitment to ongoing development.
25. RELEASE HISTORY ù X10EC Shareware/Registered Version
Date Version Changes
------ ---------- ----------------------------------------------
JAN'94 1.02 þ Fixed problem with 12:00 PM scheduled event
time (thanks Paul S.)
DEC'93 1.01 þ Fixed problem whereby Hilite3 assumed Hilite2
colour when Screen Colours dialogue cancelled
þ Fixed CP290 Day field width problem
(occurs on Wednesday only)
DEC'93 1.00 First Public Release
DEC'93 1.00 á.02 þ Added Upload prompt when EVENTS window
unloaded (and Events updated)
þ Fixed IRQ/Base_IO_Address default when
only 1 present
þ Clear CP290 on Upload ALL Events (faster
than clearing individually)
þ Added WARNING TITLE color to Save Options
þ Fixed TITLE when Retrieving Devices ONLY
DEC'93 1.00 á.01 þ Added CLS to Program Exit (To Clear
þ Added UnSplit Menu Item: EVENTS/DEVICES
Windows revert to Startup Size
þ CP290 Clock Refresh defaulted to 1 Minute
(match PC Clock Refresh)
þ /F Switch corrected to bypass colon (":")
þ Short-Cut Key pass thru: added work-around
code to block short-cut keys when modal
form displayed (compiler bug).
þ Changed 'X10.DAT File' reference to 'X10
File' on Startup Options
þ Corrected 'Screen Colors' problem whereby
Text Hilights 1,2,3 would revert to black
when dialogue was Cancel'd
þ Added SPACEBAR as keyboard equivalent to
DoubleClick in EVENTS/DEVICES list boxes
NOV'93 1.00 á.00 Initial Beta Version
Special Thanks to Gary Soles, Beta Tester.
ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄEND OF X10EC.DOCÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ