Software by The Gizmology Group
408/257-8872
. . .
info "at" gizmology.com
. . .
www.gizmology.com
18983 Saratoga Glen Place . . Saratoga, CA . . 95070-3549
The program contains an extensive scheduling capability. You can create detailed schedules that SmartV2 executes. Events that control lights and other devices may be scheduled for any minute (or range of minutes) of any hour (or range of hours) of any day (or range of days) of any month (or range of months.) You may specify particular days of the week, or even every Nth day, where N can be any number from 2 to 365. SmartV2 contains a sunrise/sunset table that is tailored for your latitude and longitude. Events may be specified to occur from two hours before to two hours after the current sunrise or sunset.
You can create SmartV2 Sequences. A Sequence is a list of events that SmartV2 will execute in order. Sequences can be invoked by operating a wall switch, entering a command on a keypad, or by including them in a schedule. A Sequence could be used to create a "scene"; lights would be turned on and dimmed to appropriate values. A Sequence may include "delay" events. Delays of seconds, minutes, or hours are possible. You could use a Sequence containing delays and initiated by a Schedule to control a set of lawn sprinklers, for instance.
SmartV2 is controlled by keypad display devices at various locations around the home. A single press of any single digit will produce an event. These events are assigned to the digits on a per-keypad basis by the Single Digit Entry file. You may modify this file to assign your chosen events to the keypad digits.
More extensive control of the system is also possible via the keypads. The "#" and "*" keys let you access an interactive dialog where any output in the system may be controlled. Schedules may be enabled/disabled; any switch input, including security sensors, may be enabled/disabled; and the status of the system may be interrogated.
The arming and disarming of the security system and its sensors are password protected. There are several security levels and a particular password may be limited in the level of access afforded. Sensors may be configured to be active only at or below a certain security level. This allows you to select perimeter-only or full security protection. The security level is set by entering a correct password at any keypad.
The Configuration File, as well as other SmartV2 files described later, are intended to be created and modified by a spreadsheet program, such as Microsoft Excel. Each row of the spreadsheet describes a particular SmartV2 entity, called an "Object". Objects are groupings of data within the program. Some Objects correspond directly with real-world devices, such as switches, lights, and dimmers. Other Objects are virtual, they represent entities that are wholly inside the program, such as Schedules, Sequences, and the Security System. All SmartV2 Objects are described by short mnemonics, such as BIA, DM, SK, or SE.
SmartV2 expects the Configuration File to be named xxxxCON.TXT and to reside in current directory. Errors that are encountered when SmartV2 reads the file are displayed on the system console.
Tech Note: The files that SmartV2 reads are plain ASCII text files. They consist of lines terminated by the normal CR/LF. The columns (or fields) within each line are delimited by TAB characters. This format is usually generated by a spreadsheet program when "Text" format is requested when saving the file. The xxxx characters in the filename are replaced by your installer with a set of characters unique to your installation. For instance, if your name were "Smith" then the file name might be SMITCON.TXT.
The columns of the Configuration File supply various attributes of the Object. Each spreadsheet column is described in detail below.
Comment Column | User Assigned Number | Object Class | Object Number | Object Type | Minimum Security Level | Object Description | Linked Object Class | Linked Object Number | Event Parameter |
User-Assigned Numbers are positive integers in the range of 1 to 32,767.
The numbers should be unique, although SmartV2 will not complain if they are not. Duplicate numbers may produce strange results; one Object will usually be ignored in favor of another one with the same number.
User-Assigned Numbers are optional. If you never want to control an Object, you needn't assign it a number.
The Object Class mnemonic in this column tells SmartV2 what kind of an Object is being described in this row. All Objects and their mnemonics are fully described in the next section The Object Classes.
Most Object description rows are initially created by your installer. With the exception of SK and SE Object rows, you should not add or remove object description rows in the Configuration File. You will, however, change the column contents from time to time.
This Object Number and the Object Class are SmartV2's internal identification of the Object. SmartV2 uses the User-Assigned Number and the Object Description when communicating with you.
The Object Type further describes the object to SmartV2.
Currently there is only one valid Object Type entry; the "NC" Type. "NC" indicates to SmartV2 that this Bit Input Object (BIA or BID) is a "Normally Closed" switch. Actions will be reversed for this type of switch. Action that would be taken when a switch is "closed" will be taken when this switch is "opened"
The Minimum Security Level is a positive integer in the range of 0 to 32,767.
Practically, you would not set the Minimum Security Level higher than the Maximum System Security Level unless you want to disable keypad control of the Object.
The description may consist of any printable ASCII characters. Because of the size of the keypad display (48 character), a practical limit for length of the description is 24 to 30 characters.
The Linked Object Class mnemonic is obtained from the Object Class column for the Object that this Object is intended to control.
This number is obtained from the Object Number column for the Object that this Object is intended to control; except when an SK or SE Object is controlled, then the User-Assigned Number is used.
Error Code | Error Description |
---|---|
Bad Object mnemonic | |
Invalid Object Number | |
Invalid Dimmer Range | |
Security System Object Number must be 0, 1, or 2 | |
Security System Object must have a User-Assigned Number. |
Objects use their stored data to respond to Events that are sent to the Object by other Objects or by other parts of the SmartV2 system. Any Event may be sent to an Object, but only certain Events evoke a response from the Object.
Below, each class of Object is described:
A Bit Input Object sends the following Events to its Linked Object.
Event | Action causing the event to be sent. | Event Parameter |
---|---|---|
UTOD | Up-to-Down. A normally-open switch has closed or a normally-closed switch has opened. | From Config. File |
DTOU | Down-to-Up. A normally-open switch has opened or a normally-closed switch has closed. | From Config. File |
You may specify almost any other Object Class as a Linked Object for a Bit Input Object. Please refer to the particular Object Class description to learn how to specify that Object as a BIA or BID Linked Object.
A Bit Input Object cannot be a Linked Object for any other Object because it does not respond to UTOD or DTOU Events.
There are two "flavors" of Bit Input Objects; Bit Input ADAM Objects (BIA) and Bit Input Digital Objects (BID). The BIA Objects correspond to inputs that are obtained via the Advantech Data Acquisition Modules (ADAM 4050's), while the BID Objects correspond to inputs obtained via the Advantech 48-bit Digital I/O Cards. Segregating the Bit Input Objects in this way allows additional ADAM modules to be added to the system without the necessity of re-numbering the Digital I/O Card inputs.
Bit Input Objects may be enabled, or disabled from any keypad; provided that the keypad is set to a security level equal to or greater than the Minimum Security Level as specified for the Bit Input Object in the Configuration File. You refer to the Object by its User-Assigned Number when enabling, or disabling it from a keypad. As noted above, a disabled Bit Input Object completely ignores its switch input.
A list of disabled Bit Input Objects whose Linked Object is either the Security System Object (SS) or the Fire Alarm Object (FA) may viewed with the appropriate Information Display Object.
A Bit Input Object processes the following Events:
Event | Action Description | Event Parameter |
---|---|---|
EON | Enable this input. | none |
EOFF | Disable this input | none |
A Bit Input Object may be enabled or disabled on a time schedule by referencing it in the Schedules File. You can also include it in a Sequence Object for group control or in the Single Digit Entry File for one-button keypad control.
Do not change the Object Class or Object Number columns in the Configuration File row for a Bit Input Object. These are preset by your installer to match your hardware configuration.
Just as for Bit Input Objects, there are two "flavors" of Bit Output Objects; Bit Output ADAM Objects (BOA) and Bit Output Digital Objects (BOD). The BOA Objects correspond to outputs of the Advantech Data Acquisition Modules (ADAM 4050's), while the BOD Objects correspond to outputs of the Advantech 48-bit Digital I/O Cards. Segregating the Bit Output Objects in this way allows additional ADAM modules to be added to the system without the necessity of re-numbering the Digital I/O Card outputs.
A Bit Output Object may be specified as a Linked Object for a Bit Input Object. It may also be turned on or off with a time schedule by referencing it in the Schedules File. You can also include it in a Sequence Object for group control or in the Single Digit Entry File for one-button keypad control.
A Bit Output Object processes the following Events:
Event | Action Description | Event Parameter |
---|---|---|
EON | Turn on. | none |
EONT | Turn on. Turn off after timeout. | Minutes |
ETOG | Toggle. | none |
ETOGT | Toggle. If toggled on, turn off after timeout. | Minutes |
EOFF | Turn off. | none |
ESOO | Set On/Off state same as another Object. | User Assigned Number |
EFLSH | Flash. On=2T, Off=T. | "T" in 18ths of a second (default = 1) |
UTOD | Same as ETOG. | 0 or none |
UTOD | Same as ETOGT. | Minutes |
A Bit Output Object that is a Linked Object of a Bit Input Object receives UTOD and DTOU events from the Bit Input Object. A UTOD event causes the Bit Output Object to toggle. If the Event parameter of the Link is non-zero, then a UTOD toggle to ON initiates a timeout-to-off lasting <Event Parameter> minutes. The DTOU events are ignored by the Bit Output Object.
When a Dimmer Object is defined in the Configuration File, the Event Parameter field of the definition row contains the "previous dim level" that the system will use when the lamp is first turned on after a cold system reset.
A Dimmer Object may be specified as a Linked Object for a Bit Input Object. It may also be controlled with a time schedule by referencing it in the Schedules File. You can also include it in a Sequence Object for group control or in the Single Digit Entry File for one-button keypad control.
A Dimmer Object processes the following Events:
Event | Action Description | Event Parameter |
---|---|---|
EON | Turn on at previous dim level. | none |
EDIM | Turn on at given dim level. | Dim Level |
EONT | Turn on at previous dim level. Turn off after timeout. | Minutes |
ETOG | Toggle. If toggled on and Dim Level is non-zero, dim at given level. Otherwise dim at previous level | Dim Level |
ETOGT | Toggle (on at previous level). If toggled on, turn off after timeout. | Minutes |
EOFF | Turn off. | none |
ESOO | Set On/Off state same as another Object. Use previous dim level. | User Assigned Number |
EFLSH | Flash (at previous dim level). On=2T, Off=T. | "T" in 18ths of a second (default = 1) |
UTOD | Manual dimming, see below. | none |
DTOU | Manual dimming, see below. | none |
Manual control of a Dimmer Object by a Bit Input Object operates as follows. When the switch is pushed and released (sending the Dimmer Object a UTOD and a DTOU), the On/Off state of the dimmer is toggled. If the switch is pushed and held down (UTOD) when the lamp is off, then the lamp is turned on at its previous level and grows brighter until it is at maximum brightness or until the switch is released (DTOU). If the previous level was maximum brightness, then the lamp is turned on and grows dimmer until it is at minimum brightness or until the switch is released (DTOU). If the lamp is already on when the switch is pushed and held down (UTOD), then the previous dimming direction is reversed and the lamp grows brighter or dimmer until it is at maximum or minimum or the switch is released.
Because SmartV2 cannot detect the length of time that a keypad key is held down (due to hardware limitations), the above behavior cannot be implemented when a Dimmer Object is controlled by a Single Digit keypad entry. The usual alternative is to have the keypad generate a ETOG event in response to a single push.
You create a Schedule Item by adding a row to the Schedules File. You place the Schedule Item into a Schedule Object by putting the Schedule Object's User-Assigned Number into a field in the Schedule Item's row.
A Schedule Object processes the following Events:
Event | Action Description | Event Parameter |
---|---|---|
EON | Enable the Schedule Items belonging to this Schedule Object. | none |
EOFF | Disable the Schedule Items belonging to this Schedule Object. | none |
A Schedule Object is usually turned on or off by a specific keypad command, but it may also be specified as a Linked Object for a Bit Input Object. It could be controlled with another time schedule by referencing it in the Schedules File. You can also include it in a Sequence Object for group control or in the Single Digit Entry File for one-button keypad control.
If you omit the User-Assigned Number when you create a Schedule Item in the Schedules File, then that Schedule Item is placed in the Schedule Object Zero container. Schedule Object Zero is always ON, so the contained Schedule Items are always enabled.
You create a Sequence Object by adding a row to the Configuration File where you supply a description and a User-Assigned Number for your Sequence Object.
You create the list of Sequence Items by adding a rows to the Sequences File. You relate each Sequence Item in the list to its Sequence Object by putting the Sequence Object's User-Assigned Number into a field in each Sequence Item's row.
A Sequence Object processes the following Events:
Event | Action Description | Event Parameter |
---|---|---|
EON | Turn on. | none |
EONT | Turn on. Turn off after timeout. | Minutes |
ETOG | Toggle. | none |
ETOGT | Toggle. If toggled on, turn off after timeout. | Minutes |
EOFF | Turn off. | none |
ESOO | Set On/Off state same as another Object. | User Assigned Number |
UTOD | Same as ETOG. | 0 |
UTOD | Same as ETOGT. | Minutes |
When a Sequence Object is turned ON or OFF, it executes the Sequence Items that are contained in its list. If the Sequence Object is being turned ON, then the Sequence Items labeled ON are executed. If the Sequence Object is being turned OFF, then the Sequence Items labeled OFF are executed. Those Sequence Items labeled BOTH are executed when the Sequence Object is turned ON or OFF. Execution of the list proceeds from top-to-bottom.
Please see the Sequences File section for a description of the Events that may be specified in a Sequence Item.
The Security System Object is specified by three rows in the
Configuration File. The fields in these rows are
used as follows:
The "Type" and "Minimum Security Level" fields are unused.
Where a Bit Input Object is to be used as a security
sensor, its Linked Object fields should be set as follows:
You are about to leave the house. The system is set to Security Level 2. You
look at the second line of any keypad. If any sensors are detecting an abnormal
condition, they will be shown on the second line. If there is more than one, you
can step through them by repeatedly pushing the CLEAR (or *) key. After fixing
the abnormal conditions (closing windows, doors, etc.), you are ready to arm the
system.
You access the Security System Object with the garage keypad and set the
Security Level to zero. Now the "Escape Device" is activated; usually a light or
lights flashing at a slow rate. You now have <Escape Device> minutes to exit
the garage and close the door before monitoring begins. When monitoring starts,
the Escape Device will be turned off.
Time passes...
A burglar attempts to open one of the windows and activates a sensor. The system
turns on the "Warning Device"; usually a light or lights flashing at a fast rate,
including a light that you would see as you drive up to the house. After
<Security Sensor Linked Object> minutes, the Siren Device is activated.
The siren sounds for <Siren Device> minutes and then shuts off. The Warning
Device continues.
The burglar has been scared off, and you arrive home. You see the outdoor Warning
Device light flashing. At this point you know that you should call the police and
not enter the house until they escort you in; but, you imprudently decide to enter
the house anyway.
You use your remote control to open the garage door, go in and use the keypad
to enter Security Level 2 and your password. Just the entry of any valid
password will cause the Security System to turn off the Warning Device. Later
you use the Information Display Object to look at the Latched Security
Sensors and find out which window was opened.
Whenever ANY successful password protected Security Level command is accomplished,
the Security System does the following:
When the new Security Level is zero and the Escape Device time expires,
the Security System scans all enabled Security
Sensors and causes Up-to-Down (UTOD) events to be generated for those Sensors that
were already "down" when the scan began.
If the new Security Level is 1, then the scan begins immeadiatly.
Whenever any monitored Security Sensor is activated, the Security System latches that
fact. Later the latched sensors can be listed with the appropriate
Information Display Object
and the latches cleared.
As in the away-from-home scenario,
the system is set to Security Level 2. You
look at the second line of any keypad. If any sensors are detecting an abnormal
condition, they will be shown on the second line. After fixing
the abnormal conditions (closing windows, doors, etc.),
you cause the system to begin at-home monitoring by setting the Security
Level to 1. The Escape Warning device does not activate; monitoring begins
immeadiatly.
If any sensor is activated, the "Warning Device" is turned on. After
<Security Sensor Linked Object> minutes, the Siren Device is activated.
The siren sounds for <Siren Device> minutes and then shuts off. The Warning
Device continues.
You can deactivate at-home monitoring, including the Warning Device and the
siren if they are on, by setting the Security Level to 2.
The Fire Alarm Object does NOT operate the Fire Alarm. The fire detection system in
your home is an autonomous system. SmartV2 does only three tasks with respect to
the fire detection system:
Where a Bit Input Object is to be used
to monitor a fire sensor,
its Linked Object fields should be set as follows:
The SmartV2 system is completely passive with respect to the fire detection
system in your home. Owing to the mechanical relay logic used in the fire
detection system, if SmartV2 should somehow "camp on" the interior fire siren
reset circuit, fire detection would still "get through" and sound the interior
alarms.
There are nine types of Information Display Objects that correspond to nine
rows in the Configuration File:
After you enter the Information Display Object's User Assigned Number and the
#-key, the first piece of information is presented. To obtain additional pieces
of information, you should repeatedly press the keypad #-key. When the last
piece of information has been displayed, the keypad will revert to the time/date
display.
In the case of the System Statistics display, repeated #-key presses will display
the following:
The Event Log is kept in a memory buffer. When the buffer is filled, the
oldest log entries are overwritten with current log entries. The log may
be dumped to a floppy disk with the use of a
Console Display command.
A COLD reset results in a complete initialization of the system. No historical
data is included. A WARM reset is a COLD reset followed by the incorporation
of a Recovery File that was written before a previous
shutdown.
Initialization File errors result when invalid data is found in the various files
that are read during restart
(Configuration File,
Schedules File,
Sequences File,
Single Digit Entry File, and
Password File).
Individual error messages appear on the
Console Display
during restart.
All of the Events are defined in the following table:
The 12-key keypad was intentionally chosen to match a standard telephone keypad.
It is planned to extend SmartV2 to include telephone control, wherein the display
functions would be replaced with voice responses.
The System Status requires additional explanation. The Status is a series of
three digits following the time. It normally looks like this:
"2.0.0". The first digit indicates the
System Security Level,
a number between zero and four.
The middle digit indicates the number of security or fire sensors that are currently
disabled.
The last digit indicates the number of activated security or fire sensors.
When the Security Level is two or above, activated security sensors are of no
particular concern, an example being an open window while you are at home.
A description of an activated security or fire sensor is displayed on the second
line. If more than one security or fire sensor is activated, you may step through
their descriptions by repeatedly pressing the "*" key. SmartV2 will also step
through these descriptions at each 1 minute update.
Security Level
System Operation
All enabled security sensors are being monitored.
If a sensor detects an abnormal condition, a warning device is
activated. After a specified time, the security
siren is activated. The siren is turned off after
another specified time.
Only certain enabled security sensors are being monitored.
If a sensor detects an abnormal condition, the same
actions occur as described above for Level 0.
No sensors are monitored.
No sensors are monitored. Some Objects may be disabled
or enabled from the keypad.
See Minimum Security Level.
No sensors are monitored. Most Objects may be disabled
or enabled from the keypad.
See Minimum Security Level.
* When you set the Security Level to 3 or 4, that level
is effective only for YOUR keypad. The other keypads are set to level 2
by your action.
User Assigned Number
Object Class
Object Number
...
Object Description
Linked Object Class
Linked Object Number
Event Parameter
Security Object UAN
...
Security Object name for keypad display.
Siren Device Class
Siren Device Number
Minutes that siren should sound.
Any non-zero; unused
...
unused
Warning Device Class
Warning Device Number
none
Any non-zero; unused
...
unused
Escape Device Class
Escape Device Number
Minutes until monitoring begins.
User Assigned Number
........
Linked Object Class
Linked Object Number
Event Parameter
Specify a UAN if you want to enable/disable this sensor.
........
Maximum Security Level at which this sensor is active*
Minutes after sensor activation before siren sounds
* Notice the special use of the Linked Object Number field.
If you want this sensor to be active only at Security Level zero, put a zero in
this field. If you want a sensor to be active at both security levels 0 and
1, put a 1 in this field.
Security System Operation Scenario
Now that the Security System Object is configured, let's see how it is used in
a typical scenario:
Using the Security System when you are at home
When you are at home, you can cause the Security System to monitor only
external sensors. For instance windows and outside doors, but not interior
motion detectors.
Note: see above description of
Bit Input Objects
used as security sensors where the Linked Object Number field allows you
to differentiate between external and internal sensors.
Fire Alarm Object (FA)
The Fire Alarm Object is a virtual object; it exists only as a grouping of data
within the program and does not correspond to a real-world device.
User Assigned Number
........
Linked Object Class
Linked Object Number
Event Parameter
Specify a UAN if you want to enable/disable this sensor.
........
none
Information Display Objects (ID)
Information Display Objects are virtual objects; they exist only as a grouping
of data within the program and do not correspond to real-world devices.
When accessed from a keypad each Object displays a particular kind of information
or changes the state of the information displayed.
User Assigned Number
Object Class
Object Number
...
Minimum Security Level
Object Description
Supply a UAN for keypad access.
...
access control
Latched Fire Sensors
Supply a UAN for keypad access.
...
access control
Clear Fire Sensor Latches
Supply a UAN for keypad access.
...
access control
Latched Security Sensors
Supply a UAN for keypad access.
...
access control
Clear Security Sensor Latches
Supply a UAN for keypad access.
...
access control
Disabled Security/Fire Sensors
Supply a UAN for keypad access.
...
access control
Enable All Sensors
Supply a UAN for keypad access.
...
access control
Disabled Schedule Objects
Supply a UAN for keypad access.
...
access control
System Statistics
Supply a UAN for keypad access.
...
access control
UAN<>0 Object List
Events
SmartV2 Events are the basis for all actions taken by the program. Events are
sent from Object to Object within the program. They are also sent from the main
monitoring loop components to the Objects. The following table outlines the
events that are sent and received by the various parts of the system. The event
names given in italics are internal to the program.
System Component
Events Received
Events Sent
Main Loop (Monitor Bit Inputs)
none
UTOD, DTOU
Main Loop (Keypad Polling) & Keypad Object
FOUP, NOUP
EOFF, EON, EONT, EDIM, SSYS, DFLT, and any Events obtained
from the Single Digit Entry File.
Bit Input Object
EON, EOFF,UTOD, DTOU
UTOD, DTOU, DT3E, DT4E
Bit Output Object
EON, EONT, ETOG, ETOGT, EOFF, ESOO, EFLSH,
UTOD, DT3E, DT4E
DT3E, DT4E
Dimmer Object
EON, EONT, ETOG, ETOGT, EOFF, ESOO, EFLSH,
UTOD, DTOU, DT1E, DT2E, DT3E, DT4E
EON, EOFF, DT1E, DT2E, DT3E, DT4E
Schedule Object
EON, EOFF, NOUP
Events obtained from the Schedules File.
Sequence Object
EON, EONT, ETOG, ETOGT, EOFF, ESOO, UTOD, DT1E, DT3E,
and Events obtained from the Sequences File
including ELOOP, EDLYH, EDLYM, and EDLYS.
EON, EOFF, and Events obtained from the
Sequences File.
Security System Object
SSYS, UTOD, DTOU, DT1E, DT2E
EON, EONT, EOFF, DT1E, DT2E
Fire Alarm Object
UTOD, DTOU
none
Information Display Object
DFLT
none
Recovery Handler Object
UTOD, RCPF
none
Event
Action Description
Event Parameter
EON
Turn on.
none
EONT
Turn on. Turn off after timeout.
Minutes
EDIM
Turn on at given dim level.
Dim Level
EOFF
Turn off.
none
ETOG
Toggle.
none
ETOGT
Toggle. If toggled on, turn off after timeout.
Minutes
ESOO
Set On/Off state same as another Object.
User Assigned Number
EFLSH
Flash. On=2T, Off=T.
"T" in 18ths of a second
EDLYS
Delay a Sequence by
Seconds
EDLYM
Delay a Sequence by
Minutes
EDLYH
Delay a Sequence by
Hours
ELOOP
Go back to first line of Sequence
none
DFLT
The Default Event
none
UTOD
Up-to-Down transition of Bit Input Object
none
DTOU
Down-to-Up transition of Bit Input Object
none
RCPF
Restore sustem from checkpoint recovery file
none
DT1E
Delta Time Interval #1 expired
none
DT2E
Delta Time Interval #2 expired
none
DT3E
Delta Time Interval #3 expired
none
DT4E
Delta Time Interval #4 expired
none
FOUP
Forced Object Update
none
NOUP
Normal Object Update
none
SSYS
Set Security System
Level, Password
Keypads & How To Use Them
Day to day interaction with the SmartV2 system is accomplished via several 12-key
keypads. The 12 keys include the 10 digits as well as a "*" key and a "#" key.
(Note: some keypads substitute a key labeled "CLEAR" for the "*" key and an
unlabeled key for the "#" key.)
Each keypad also contains a 24 character by 2 line Liquid Crystal Display. The
display provides a method for SmartV2 to prompt and/or reply to the keypad entries.
Default Display
When the keypad is not in use, it displays the Day, Date, Time, System Status, and
any activated Security Sensors. This display is updated once each minute or more
often if changes in System Status or Security Sensors occur. You can force the
display to update by pressing the "*" key.
Single Digit Keypad Functions
While the Day/Date default is being displayed, the ten digits of the keypad are
enabled for single-push functions.
The single-push function that is performed by each of the ten keys is defined
in the Single Digit Entry File. For instance, if the "2" key
of a given keypad is pushed, an ETOG toggle event might be sent to a
Bit Output Object
causing the connected light to be turned on or off. So, depending on your
configuration of the Single Digit Entry File, a single push
of any of the ten digits on a particular keypad will result in a defined
action being performed.
The first step, required by all functions, is the specification of the Object to be controlled. If, while the Date/Time is being displayed, you press the #-key, the prompt "=Object?" will appear. Now you enter the User-Assigned Number of the Object you wish to control. As you enter each digit, SmartV2 will interpret what has been entered. So, if you wanted to enter "100" and you enter "1", SmartV2 will show you the description of Object 1. Then, when you enter "0", SmartV2 will show you the description of Object 10. Finally, when you enter the second "0", the description of Object 100 will appear. If this is not the Object that you want, you can "back up" by pressing the *-key. This will leave Object 10. You can "back up" all the way to the Date/Time display by repeatedly pushing the *-key. Throughout your interaction with the keypad, the *-key is always available to "back up" from where you are.
If you are satisfied that Object 100 is the one that you want to control, then choose it by pressing the #-key. There are some Objects, the Information Display Object in particular, wherein just choosing the object is enough to perform the function. Other Objects require further information before the function can be performed. For those Objects, you will see the "=Action?" prompt at this point.
The number corresponding to each possible Action is given below:
Action Number | Action Description | First Parameter | Second Parameter |
---|---|---|---|
turn OFF (or disable) | none | none | |
turn ON (or enable) | none | none | |
turn ON with Timeout | Minutes | none | |
set DIM | Dim Level | none | |
set Security Level | Security Level | Password |
* Because the Security System Object accepts only one action, the "=Action?" prompt is skipped and you are presented with the "=Security Level?" prompt directly.
So, when you see the "=Action?" prompt, enter an action number. If you enter an action that is inappropriate for the class of Object selected, SmartV2 will reply with "=Unknown Action Number". Just "back up" with the *-key and choose a different action number. When you are satisfied with the action you have chosen for your Object, press the #-key. If there are no parameters required for your action, then SmartV2 will perform the action and tell you what was done. After the action has been performed, the keypad is in Default Display state, but still showing the reply to your request. After a few seconds, the Date/Time display will reappear or you can force it to return by pressing the *-key.
If your action requires a parameter, such as the Dim Level, then, upon pressing the #-key to select your action, SmartV2 will prompt for the parameter value. After you enter the parameter value, press the #-key again. If no more parameters are required, your action is performed and a reply is displayed, just as in the no-parameter case above. Any additional parameters are entered in the same manner.
At program initialization, after the Configuration File is read, SmartV2 reads the Schedules File. Like the Configuration File, this file is also intended to be generated by a spreadsheet program and so consists of rows and columns of information. The Schedules File is normally named xxxxSKD.TXT.
A Schedule Item row is divided into fields:
Comment | Minute (or Sunrise, Sunset, or Reset) | Hour (or Sunrise / Sunset adder) | Day of Month | Day of Week | Every Nth Day | Month | Schedule Object Number | Event Object Number | Event Mnemonic | Event Parameter |
3,5,10-12,21,25-27, 31If this set of numbers were placed in the Day-of-Month field, then the event would be generated on each of the individual days (3,5,21,31) and also on days within the ranges (10,11,12,25,26,27). Also, an asterisk (*) is allowed. An asterisk in any of these fields indicates that ALL of the possible values for that field are wanted. So an asterisk in the Month field would mean All/Any Month.
This field may also contain any one of three special words: SUNRISE, SUNSET, and RESET. Since SmartV2 knows the local sunrise and sunset times for each day of the year, event generation can be keyed to sunrise or sunset. If RESET is specified, then the event will be generated once during system reset.
If the minute field contains SUNRISE or SUNSET, then the hour field has special meaning. It can now contain a positive or negative number ranging from -120 to +120. This is the number of minutes to be added to or subtracted from the sunrise or sunset time. Thus you can have a yard light come on 30 minutes after sunset, for instance. Remember that sunset does not mean darkness; darkness is usually about half an hour after sunset.
Error Code | Error Description |
---|---|
No valid number found before "-" or "," | |
Out of range, too low | |
Out of range, too high | |
Decreasing range. i.e. m-n, where m>n | |
Sunrise/Sunset offset too large (+ or -) | |
Day-of-week does not contain seven characters | |
Invalid Event Mnemonic | |
Can't find this User-Assigned-Number | |
Err: No uasc/uan match in line nn of xxxxSKD.TXT |
At program initialization, after the Configuration File is read, SmartV2 reads the Sequences File. Like the Configuration File, this file is also intended to be generated by a spreadsheet program and so consists of rows and columns of information. The Sequences File is normally named xxxxSEQ.TXT.
A Sequence Item row is divided into fields:
Comment | Sequence Object Number | ON/OFF/BOTH | Event Object Number | Event Mnemonic | Event Parameter |
Also, when an EOFF event is received, the Sequence Object executes all of its Sequence Items that contain either an OFF or a BOTH in this field.
The Sequence Items are executed in the order that they are encountered in the Sequences File, top-to-bottom.
Sequence Items can invoke some special events. These events are processed directly by the Sequence Object, not sent to any other Object. The special events control the execution of the sequence. They are:
Event Mnemonic | Event Description |
---|---|
EDLYS | Delay <Event Parameter> seconds |
EDLYM | Delay <Event Parameter> minutes |
EDLYH | Delay <Event Parameter> hours |
ELOOP | Restart the Sequence at the first Sequence Item |
When a Sequence Item using one of these special events is created, you must include a valid Event Object Number or an initialization error 313 will result. Just use the Sequence Object's User-Assigned Number as was used in the Sequence Object Number field.
Error Code | Error Description |
---|---|
Blank or zero User-Assigned Number in Sequence Object Number field. | |
Invalid Event Mnemonic | |
Can't find this User-Assigned Number | |
Err: No uasc/uan match in line nn of xxxxSEQ.TXT |
At program initialization, after the Configuration File is read, SmartV2 reads the Single Digit Entry File. Like the Configuration File, this file is also intended to be generated by a spreadsheet program and so consists of rows and columns of information. The Single Digit Entry File is normally named xxxxSDE.TXT.
A row in the Single Digit Entry File is divided into fields:
Comment | Keypad Number | Single Digit | Event Object Number | Event Mnemonic | Event Parameter |
Error Code | Error Description |
---|---|
Number out of range | |
Invalid Event Object Number or Event Mnemonic |
At program initialization, after the Configuration File is read, SmartV2 reads the Password File. Like the Configuration File, this file is also intended to be generated by a spreadsheet program and so consists of rows and columns of information. The Password File is normally named xxxxPWD.TXT.
A row in the Password File is divided into fields:
Comment | User Number for Logging | User Name | Maximum Security Level | Password |
Error Code | Error Description |
---|---|
Number out of range, low. | |
Err: Too many passwords at line nn of xxxxPWD.TXT. |
"Sunrise" and "sunset" are lies that we teach to our children. According to Buckminster Fuller, we should say "sunsee" and "sunclipse".
At program initialization, after the Configuration File is read, SmartV2 reads the Sunrise/Sunset File. Although generated by a program, the Sunrise/Sunset File is of the same format as the other initialization files and could have been generated by a spreadsheet program. The Sunrise/Sunset File is normally named xxxxSUN.TXT.
A row in the Sunrise/Sunset File is divided into fields:
Comment | Day Number | Sunrise | Sunset |
Error Code | Error Description |
---|---|
Number out of range. Using default. | |
Day Number gap or duplicate. Default remaining days. |
Since this file is intended to be read only by SmartV2, the format is of little concern to the user and will not be described here. The file is a text file, however, and could be perused with a word processor program.
The Recovery File is named SVRCOVR when created by SmartV2. At program initialization, SmartV2 attempts to open a file by this name. If SVRCOVR is found and successfully used to restore the system state, then SmartV2 is said to have executed a WARM reset. A initialization performed without using the SVRCOVR file is a COLD reset. After the SVRCOVR file is found and used for a WARM reset, the file is deleted.
Note that because the log entry for an event is generated after the event is processed, and because events (esp. Sequence ON/OFF) can generate other events, the order of events in the log is not intuitive. The log IS chronological in order of event completion, however.
The memory log content is dumped to a file at the same time as the Recovery File is generated, just before power failure. You can also cause the log to be dumped with a Console Display command.
When the log is dumped by manual command, the filename SVLOG.TXT is used, overwriting any previous log file of that name. When the log is dumped automatically, prior to a power failure, a hopefully-unique file name is generated by appending three digits from the system clock to "SVLOG" and then appending ".TXT". The dumped log file is not reloaded during restart.
The format of the entries in the log file are TAB-separated fields, terminated with the usual CR/LF. The content of the fields is as follows:
Date | Time | A mnemonic representing the Event | A mnemonic representing the Receiving Object's Class | Receiving Object's Number | A mnemonic representing the Sending Object's Class | Sending Object's Number | Event Parameter Value |
Each of these functions will be examined in detail:
4 FFFFFFFF FFFFFFFF 4300 7F30 **** 7F00 5E02The first single digit is an incrementing forever-loop pass counter that reassures you that the system is indeed alive. The next two 8-character "words" are hexadecimal representations of 32 bits of Digital I/O module inputs or outputs (BID/BOD). Next are 4-character "words". Each of these correspond to one ADAM 4050 module where the first two hexadecimal characters represent the module's input bits (BIA) and the last two characters represent the output bits (BOA). A string of asterisks (****) indicate errors were encountered in accessing that ADAM module.
ADAM adr=10 SIOS=0 CKSUM=0 NORP=0 BDCH=0 BDLN=0 BDHX=0An explanation of the fields is given in the following table:
adr | Hexadecimal address of the ADAM module |
SIOS | Errors returned from the PC-ComLIB serial port driver software |
CKSM | Checksum errors found in ADAM replies |
NORP | No-replies to ADAM commands sent |
BDCH | Bad first characters in ADAM replies |
BDLN | Bad lengths in ADAM replies |
BDHX | Bad hexadecimal characters in ADAM replies |
After the ADAM counters are dumped, SmartV2 displays one more line:
Max Timer Overrun = 2This indicates the maximum number of ticks (18ths of a second) that occurred after a software timer expired before the forever-loop had the opportunity to process it. Unless this is very large and there are other symptoms of slowness, you should not be concerned about this number.
FQ | Quit. Save Recovery File & Log |
FX | Exit. Don't save Recovery File or Log |
FLS | Show Log Status |
FLD | Dump Log |
FA | Toggle ADAM Errors Display |
FB | Toggle Bit Display |
FP | Reload Password File |
FSK | Reload Schedules File |
FSE | Reload Sequences File |
FSD | Reload Single Digit Entry File |
To execute one of these commands, type the command and press "Enter".
When the Console Display is not in use, you may turn off its power with no ill effects. When you turn it on it will display the latest screen's-worth of data.
PLEASE READ THIS LICENSE CAREFULLY BEFORE USING THE SOFTWARE. BY USING THE
SOFTWARE, YOU ARE AGREEING TO BE BOUND BY THE TERMS OF THIS LICENSE. IF YOU DO
NOT AGREE TO THE TERMS OF THIS LICENSE, PROMPTLY RETURN THE UNUSED SOFTWARE TO
THE PLACE WHERE YOU OBTAINED IT AND YOUR MONEY WILL BE REFUNDED.
1. License. The application, demonstration, system and other software
accompanying this License, whether on disk, in read only memory, or on any other
media (the "Software") and the related documentation are licensed to you by The
Gizmology Group. You own the disk on which the Software and documentation are
recorded but The Gizmology Group and/or The Gizmology Group's Licensor retain
title to the Software and related documentation. This License allows you to use
the Software on a single computer and make one copy of the Software and
documentation in machine-readable form for backup purposes only. You must
reproduce on such copy the The Gizmology Group copyright notice and any other
proprietary legends that were on the original copy of the Software and
documentation. You may also transfer all your license rights in the Software
and documentation, the backup copy of the Software and documentation, and a copy
of this License to another party, provided the other party reads and agrees to
accept the terms and conditions of this License.
2. Restrictions. The Software contains copyrighted material, trade secrets and
other proprietary material. In order to protect them, and except as permitted
by applicable legislation, you may not decompile, reverse engineer, disassemble
or otherwise reduce the Software to a human-perceivable form. You may not
modify, network, rent, lease, loan, distribute or create derivative works based
upon the Software in whole or in part. You may not electronically transmit the
Software from one computer to another or over a network.
3. Termination. This License is effective until terminated. You may terminate
this License at any time by destroying the Software, related documentation, and
all copies thereof. This License will terminate immediately without notice from
The Gizmology Group if you fail to comply with any provision of this License.
Upon termination you must destroy the Software, related documentation, and all
copies thereof.
4. Export Law Assurances. You agree and certify that neither the Software nor
any other technical data received from The Gizmology Group, nor the direct
product thereof, will be exported outside the United States except as authorized
and as permitted by the laws and regulations of the United States. If the
Software has been rightfully obtained by you outside of the United States, you
agree that you will not re-export the Software nor any other technical data
received from The Gizmology Group, nor the direct product thereof, except as
permitted by the laws and regulations of the United States and the laws and
regulations of the jurisdiction in which you obtained the Software.
5. Government End Users. If you are acquiring the Software and documentation
on behalf of any unit or agency of the United States Government, the following
provisions apply. The Government agrees: (i) if the Software and documentation
are supplied to the Department of Defense (DoD), the Software and documentation
are classified as "Commercial Computer Software" and the Government is acquiring
only "restricted rights" in the Software and its documentation as that term is
defined in Clause 252.227-7013(c)(1) of the DFARS; and (ii) if the Software and
documentation are supplied to any unit or agency of the United States Government
other than DoD, the Government's rights in the Software and its documentation
will be as defined in Clause 52.227-19(c)(2) of the FAR or, in the case of NASA,
in Clause 18 52.227-86(d) of the NASA Supplement to the FAR.
6. Limited Warranty on Media. The Gizmology Group warrants the diskettes
and/or compact disc on which the Software and documentation are recorded to be
free from defects in materials and workmanship under normal use for a period of
ninety (90) days from the date of purchase as evidenced by a copy of the
receipt. The Gizmology Group's entire liability and your exclusive remedy will
be replacement of the diskettes and/or compact disc not meeting The Gizmology
Group's limited warranty and which is returned to The Gizmology Group or a The
Gizmology Group authorized representative with a copy of the receipt. The
Gizmology Group will have no responsibility to replace a disk/disc damaged by
accident,abuse or misapplication. ANY IMPLIED WARRANTIES ON THE DISKETTES
AND/OR COMPACT DISC, INCLUDING THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
FITNESS FOR A PARTICULAR PURPOSE, ARE LIMITED IN DURATION TO NINETY (90) DAYS
FROM THE DATE OF DELIVERY. THIS WARRANTY GIVES YOU SPECIFIC LEGAL RIGHTS, AND
YOU MAY ALSO HAVE OTHER RIGHTS WHICH VARY BY JURISDICTION.
7. Disclaimer of Warranty on Software. You expressly acknowledge and agree
that use of the Software and documentation is at your sole risk. Except as is
stated above, the Software and related documentation are provided "AS IS" and
without warranty of any kind and The Gizmology Group and The Gizmology Group's
Licensor(s) (for the purposes of provisions 7 and 8, The Gizmology Group and The
Gizmology Group's Licensor(s) shall be collectively referred to as "The
Gizmology Group") EXPRESSLY DISCLAIM ALL OTHER WARRANTIES, EXPRESS OR IMPLIED,
INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
FITNESS FOR A PARTICULAR PURPOSE. THE GIZMOLOGY GROUP DOES NOT WARRANT THAT THE
FUNCTIONS CONTAINED IN THE SOFTWARE WILL MEET YOUR REQUIREMENTS, OR THAT THE
OPERATION OF THE SOFTWARE WILL BE UNINTERRUPTED OR ERROR-FREE, OR THAT DEFECTS
IN THE SOFTWARE AND THE DOCUMENTATION WILL BE CORRECTED. FURTHERMORE, THE
GIZMOLOGY GROUP DOES NOT WARRANT OR MAKE ANY REPRESENTATIONS REGARDING THE USE
OR THE RESULTS OF THE USE OF THE SOFTWARE AND RELATED DOCUMENTATION IN TERMS OF
THEIR CORRECTNESS, ACCURACY, RELIABILITY, OR OTHERWISE. NO ORAL OR WRITTEN
INFORMATION OR ADVICE GIVEN BY THE GIZMOLOGY GROUP OR A GIZMOLOGY GROUP
AUTHORIZED REPRESENTATIVE SHALL CREATE A WARRANTY OR IN ANY WAY INCREASE THE
SCOPE OF THIS WARRANTY. SHOULD THE SOFTWARE PROVE DEFECTIVE, YOU (AND NOT THE
GIZMOLOGY GROUP OR A GIZMOLOGY GROUP AUTHORIZED REPRESENTATIVE) ASSUME THE
ENTIRE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. SOME
JURISDICTIONS DO NOT ALLOW THE EXCLUSION OF IMPLIED WARRANTIES, SO THE ABOVE
EXCLUSION MAY NOT APPLY TO YOU.
8. Limitation of Liability. UNDER NO CIRCUMSTANCES INCLUDING NEGLIGENCE, SHALL
THE GIZMOLOGY GROUP BE LIABLE FOR ANY INCIDENTAL, SPECIAL OR CONSEQUENTIAL
DAMAGES THAT RESULT FROM THE USE OR INABILITY TO USE THE SOFTWARE OR RELATED
DOCUMENTATION, EVEN IF THE GIZMOLOGY GROUP OR A GIZMOLOGY GROUP AUTHORIZED
REPRESENTATIVE HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME
JURISDICTIONS DO NOT ALLOW THE LIMITATION OR EXCLUSION OF LIABILITY FOR
INCIDENTAL OR CONSEQUENTIAL DAMAGES SO THE ABOVE LIMITATION OR EXCLUSION MAY NOT
APPLY TO YOU.
In no event shall The Gizmology Group's total liability to you for all damages,
losses, and causes of action (whether in contract, tort (including negligence)
or otherwise) exceed that portion of the amount paid by you which is fairly
attributable to the Software and documentation.
9. Controlling Law and Severability. This License shall be governed by and
construed in accordance with the laws of the United States and the State of
California, as applied to agreements entered into and to be performed entirely
within California between California residents. If for any reason a court of
competent jurisdiction finds any provision of this License, or portion thereof,
to be unenforceable, that provision of the License shall be enforced to the
maximum extent permissible so as to effect the intent of the parties, and the
remainder of this License shall continue in full force and effect.
10. Complete Agreement. This License constitutes the entire agreement between
the parties with respect to the use of the Software and the related
documentation, and supersedes all prior or contemporaneous understandings or
agreements, written or oral, regarding such subject matter. No amendment to or
modification of this License will be binding unless in writing and signed by a
duly authorized representative of The Gizmology Group.