Adaptive Home Logic - AHL/3™
What’s
New
Update [3.4.0.4] (Download Latest
Version)
RSS
News Feeds
Updated the programs default RSS news
provider to BCC News, following recent changes by the previous news provider
that made it less reliable. The program’s parsing of news feeds has also been
improved, so that news is now more accurately pronounced by the speech system.
Driver
Architecture
The driver management code has been
further fine tuned for faster operation, significantly reducing the number of
driver communication timeouts, together with a noticeable improvement in
overall efficiency and performance.
Release
Date: 16 January 2013
Update
3.4
This update
provides support for X10 CM15 status reporting, 1-Wire temperature sensors and
Bluetooth device proximity detection together with some stability improvements.
CM15 X10 status reporting
Although the
program makes a note of the last instructions sent to an X10 module, an event
conditional upon the status of a module will now check with the CM15 interface
to see if the module’s status has been changed outside of program control,
making it aware of the status of two-way X10 lamp and appliance modules that
may have been turned on or off manually.
E-mail
An issue has
been rectified that could prevent the program from sending an event message by
email. Incoming emails are also now better parsed, so that a sender’s name containing
underscores is more accurately pronounced by the speech system.
System Status
The space
above the program’s scanner display can now be utilised by the events to
display or flash the system’s condition status, such as condition white, blue,
green, yellow or red (alert!). More profoundly bringing attention to itself
that a certain condition as arisen.
1-Wire Temperature Sensors
Instructions
are now provided on how to easily interface the program with any number of
1-wire temperature sensors, making it very easy to accurately display indoor
and outdoor temperatures within the program’s virtual weather station display,
to control HVAC systems, and / or to log different temperature reading from
around the home.
Bluetooth Proximity Detection
This release
also sees the introduction of a new driver to detect the presence of your
Bluetooth enabled smart phones, and therefore whether the person carrying the
smart phone is at home or away. This can be used to automatically (and
discreetly) alert you that another family member has arrived home safely, and /
or to automatically lock the computer when you go out, etc.
Other
Unfortunately,
it has become necessary to disable the enter key, as a way to quickly submit
requests entered within the program’s interaction field, until a better
solution is found. Although this minor ability was very convenient, it’s not
the way Window’s was supposed to work, we got around this by using the
program’s advanced call-back functionality, but have found that this could interfere
with the program’s networking capabilities, causing it to eventually become
unstable and crash.
Remote telnet
operations are now recorded in the program’s log file.
The Extract
Data routine has been updated to accept the wildcard character not only in the
middle of the prefix word but also at its beginning or instead of it, making it
even easier to interface the program with an even wider range of peripherals.
The optional
closing wave file is now played synchronously, following a customer request, which
allows the final closing wave file to be completely played out even when the
termination process is quicker than expected.
A new
facility, accessed via the interaction field, to hide or show the desktop
icons, making the display screen clearer and to improve privacy whilst making
videos of the program.
Release
Date: 09 December 2011
Update
3.3
Version 3.3 is a small but interesting
update that advances the system’s stability and introduces some exciting new
features.
Power Line
Modules
The data validation
routine within the PLM entry screen has been improved to better detect invalid
data input that could later cause the program to crash during processing.
Natural
Language Interface
The keyboard
enter key can now be used to very quickly process requested entered within the
program’s interaction field, significantly improving the effectiveness of the
Natural Language Interface. Several new functions have also been implemented
within the NLI to rapidly clear any or all of the CM display boxes, as well as
a new function to speak the time, also in plain language, for example “It’s now
a quarter past one, p.m.”.
On Screen
Display
The program
now has a new ability to alert you to an important event by displaying a brief
message on the screen in fairly large bright green lettering, a bit like a
television that displays the name of a new channel, regardless of any other
windows that might be use, or even if the program is operating in the
background from the system tray.
Console Beep
The events now
have the ability to sound the console beep at a specified frequency and
duration, in a similar way to the beep sound that the computer makes when it’s
first turned on, providing yet another way to alert the operator, in a fairly
profound way, that an important event has taken place.
Power Status
The program
can now take into account the computer power status, which is particularly
useful if the program is running on a laptop, as an event could then be setup
to alert you if the batteries drop below a specified level.
Other
As
well as your system’s local time, the program now also display’s UTC
(Coordinated Universal Time) during start-up.
Release
Date: 24 June 2011
Update
3.2
An intermediate update that primarily
enhances the performance and usefulness of the program’s driver architecture:-
Driver
Architecture
Tweaked
and augmented several parts of the driver management code, improving overall
system efficiency and
performance.
Added the
ability to transfer the value contained within a driver’s field to a user
variable; providing greater flexibility and making it easier to log driver
output.
Velleman K8055
Introduced a
new driver to monitor and control the digital and analogue inputs and outputs
of a Velleman K8055 USB Experiment Interface Board, making the outside world
even more accessible!
Other
Several
sections within the program’s help file have been updated.
Release
Date: 18 February 2011
Update
3.1
An intermediate update that includes
several enhancements & fixes:-
SMS Facility
AHL/3 can now alert you to important circumstance by
SMS message delivered direct to your mobile phone, as well as allowing the
program to be securely and simply controlled via an SMS message sent from your
mobile phone, when it’s connected to a compatible GSM modem or another mobile
phone via a USB cable or Bluetooth adaptor.
X10 CM15
AHL/3 now includes support to control the new CM15 X10
interfaces.
Other
The system information routine has been updated to
correctly identify the newer OS platforms.
The program has been modified to prevent its graphics
from flickering when clicked.
The email address field lengths have been increased to
cope with longer e-mail address details.
A bug was identified in the set com port routine that
could cause the program to crash if the Settings->Com Port dialogue were
aborted, and then subsequently when the program was restarted.
An issue was identified in the edit PLM sub that could
cause the program to crash if it reported that the interface method was not
ready and then the apply button was clicked.
A minor issue has
been corrected with the Event Message Report.
The program’s icon has been updated to 3D!
Release Date: 11 February 2010
Update v3.0
Version
3 is a major update that significantly improves the program’s Integrity,
extensibility and degree of refinement.
32/64 Bit Compatibility
AHL/3 is now compatible with all editions of Windows
XP, Vista and Windows 7.
Driver Architecture
Despite having fairly extensive communication
facilities, AHL/3 sees the introduction of a comprehensive driver architecture
incorporating exceptionally fast inter-process communications, providing it
with almost unlimited extensibility, allowing OEM’s, third-party software
developers and your AHL team to add wide-ranging support for some of the more
proprietary products and devices into your wider home automation environment.
Event Logic
The program’s event engine together with the event
entry screen has been significantly redesigned to allow complex event scenarios
to be easily implemented, negating the necessity to write scripts in all but
the most complex of circumstances. Now it very easy and intuitive to use
multiple (IF / AND / OR / XOR / ELSE) logic to create more intelligent events
that can react to more complex circumstances as required.
SAPI-5 TTS Voices
In addition to SAPI4 TTS voices and MS speech Agents,
the program can now also support some of the newer SAPI v5 TTS voices as well.
The voice dialogue has also been improved with a test facility, making it
easier to experiment with the various settings.
32 Com port data streams
Redesigned and augmented the com port settings routine
and dialogue to handle up to 32 com port data streams concurrently. In
addition, any changes can now be abandoned before being applied.
Streamlined data handling
The data section within the event entry screen
together with the underlying code has been streamlined to remove some minor
inconsistencies between file, com port and socket data operations; improving
efficiency, uniformity, ease of use and dependability. In addition data stream
output has been augmented so that live current data (event status, IO ports,
global and / or user variables) can be embedded within an output data stream,
allowing a generic device not only to be monitored and controlled by the
program, but also permitting it to react automatically to the status of the
program as well.
Event Functionality
Along with improved event logic there are also many
other improvements. In addition to starting another program or batch file, an
event can now also close another program as well. It can also very quickly
start or stop a media audio file using its new built-in intrinsic media player,
or open / close a particular CD draw, flash the screen or keyboard LED’s, or
initiate a shut down sequence.
Updated Look
In line with the greater graphic resolution found in
Control via Email
As well as being able to send e-mail messages, to
alert you to circumstances that may arise, the program can now also be securely
controlled via e-mail. It can even alert you to, or speak, newly received
(personal) e-mail messages, whilst leaving them on your server in case you wish
to reply.
Log Reporting
The program’s log reporting system has been completely
revised to record all aspects of the program’s operation including Driver
activity, Events, Natural Language Interface, Power Line Modules, System
Messages and Warnings. Log entries can now be filtered by Type, Object, Message
Level and Date (with built-in calendar control to ease date selection) before
being sorted by Date/Time, ID# or Message Level in either ascending or
descending order before being displayed or printed, making it very easy to
focus in on your area of interest.
Other
• The application has now been completely
componentized, greatly improving efficiency, consistency, maintainability,
security, performance and dependability, whilst at the same time reducing
operating overhead. It’s also making greater direct use of the Windows API,
improving efficiency yet further.
• Now an event can open or close a particular CD draw,
change the program’s default voice, flash the main window, or toggle the keyboard
LED’s.
• An issue has been identified that was preventing UPB
modules from being controlled automatically by the events.
• An issue was found with the program’s MD5 integrity
check that could occasionally cause the program to fail at start-up. Program
start-up is also quicker.
• Corrected a minor design flaw within the APRS remote
control protocol that was preventing an APRS remote access discontinue from
being scheduled or cancelled, and the program’s run level from being changed
remotely whilst a security access code was in force.
• In addition to the sun rise and set times for your
area, the program can now also take into account the phase and illumination of
the moon each day.
• The program’s clock has been upgraded to display the
time to a tenth-of-a-second resolution.
• The program’s support menu option has been updated
in line with our new e-mailing strategy.
• A number of issues were identified that were causing
an incorrect TTS voice to be selected on a machine with a different number of
installed voices.
• A file path issue has been corrected within the wave
file play routine.
• An issue has been corrected within the log entry
purge routine that could eventually cause the program to crash.
• The program now has a new dialogue to select a
custom input stream separating character. This prevents the possibility of
separating character inconsistencies when multiple events are acting on the
same data stream.
• The virtual weather station graphical display now
automatically provides a
• Found a bug within the display mapping routine that
under certain circumstances could cause the program to crash.
• An issue was identified in the system info routine
that was computing the free space on drive ‘c:’ rather than the drive that the
program is actually using.
• Found a potential issue that could prevent the date
from being displayed in the correct format, or at all, when the program entered
a new day, even though internally the date was being acted upon correctly.
• Extensively reviewed, revised and streamlined the
program’s help file.
Release Date: January 2010
Update v2.0
This
is our most significant update so far, taking the program to whole new level of
refinement & sophistication:-
New
- GUI (Graphical User Interface)
New clean GUI (HAL9000 style) - to accommodate
additional data streams, RSS News / Weather feeds, Virtual Weather Station graphical
display, Socket / Com port data, etc. The input dialogue is also improved,
making it easier to make a keyboard request (in plain language), or to manually
send data (plain text or hex values) to a com port or socket stream on-the-fly,
facilitating testing.
New
- Display Mapping
The operator can now select which data stream is sent
to a particular text editor (or in HAL9000 language CM or Monitor Circuit), so
as to monitor several different data streams simultaneously. It's even possible
to display a data stream in plain ASCII text in one display box whilst
simultaneously displaying its Hex values in another. Making it much more
straightforward to interface with even the most awkward of devices!
New
– Intelligent Speech Buffer System
This latest release features an automatic intelligent
speech buffer system that speaks items in order of priority & prevents the
possibility of speech overlap. In addition each speech sentence can now be
spoken in a different voice and / or at a different pitch, speed or volume (or
in other words personality, mood or emphasis) from sentence to sentence where
necessary. Also a verbose message, which is instigated by an event to report a
change in its status, can now be selected randomly (from a text file pertaining
to the message) to provide a less predictable but relevant response, as well as
being selected sequentially and simple static messages.
New
- TCP/IP Sockets
Adaptive Home Logic can now automatically establish
& maintain a TCP/IP socket connection with up to 26 networked devices
concurrently, using Window’s built-in Winsock for optimal efficiency. This
greatly extents the program’s reach by allowing it to communicate with
virtually any TCP/IP device, regardless of how its connected, including
(industrial strength automation) Ethernet (Input / Output) peripherals, devices
connected via WiFi, other computers within a LAN or connected via the Internet,
as well as other software (running on the local or a networked computer) that
can communicate via TCP/IP, including using Adaptive Home Logic in a
distributed configuration, as well as allowing the program to act as a bridge
between one form of computer communication and another.
New
– Remote Access Telnet Host
The program’s TCP/IP Server can easily be configured
to act as a Telnet host, allowing direct (password protected) remote access to
the program’s natural language interface from any inter-networked computer in
the world.
New
– Technology Matrix
The program now incorporates a technology matrix that
makes it uniform and straightforward to utilise various power line modules even
when their underlying technology is different, as well as easing migration.
New – X10 and UPB (Universal Power
Bus) Two-Way drivers
Adaptive Home Logic now has direct intrinsic support for
both X10 & UPB to quickly control, monitor and re-act to your power line
modules, without the necessity of a home automation controller. Featuring
interface / module polling and status reporting, support for linked UPB modules
and the ability to automatically set a modules status at start-up and or
shut-down, whilst remembering (or ascertaining) its correct brightness level.
Please note that the UPB driver is in its public BETA testing stage of
development.
New
– RSS Weather Feed
Keep up to date with the very latest weather
conditions & forecast for your area. The program can now automatically
download Yahoo’s (The Weather Channel) RSS weather feed at regular intervals,
interpret & display this information, in either metric or imperial units. Specific
data can also be automatically extracted and mapped to the user variables, so
as to be available to the events & /or the virtual weather station
graphical display.
New
– Virtual Weather Station Graphical Display
See your current weather conditions at a glance with
the new Virtual Weather Station graphical display, updated in real time,
including self-adjusting inside & outside temperature bar graphs
(Fahrenheit / Celsius), Wind Speed & Direction (on a compass rose) and
atmospheric pressure trend (on a bar graph with adjustable update interval).
This data can be supplied by a virtual weather station peripheral or for free
via the RSS weather feed, or even a bit of both! Events can also be established
to alert you to high wind speeds, etc.
New
– RSS News Feeds (Talking News Aggregator!)
Stay up to date with the very latest World, National,
Business or Technology News, Entertainment or Gossip by automatically
downloading up to 5 different RSS news feeds. Each news feed may be displayed
& / or spoken.
New
– Event Entry Screen
The different sections of the event’s entry screen are
now accessible via buttons similar to a tabbed card-index system, so as to only
present the operator with the fields relevant to their area of interest, making
the program even easier to use & understand.
New
- Other
In a similar way that a data stream maybe displayed in
either plain text or in hexadecimals values, the data to be sent to, or
extracted from, a serial or networked device may also be specified in hex or
plain text.
The program’s date format & the (Sun rise / set)
location co-ordinates are now stored within an INI file, so these details are
now remembered when a new database is created.
The low memory warning dialogue, possibly displayed at
program start-up, will now automatically resume execution of the program
following 30 seconds of no user interaction in support of the program’s “power
failure auto-restart” capability.
An issue was corrected with the Auto Mute function.
An issue with the file data extract and the file
compare operations has been corrected, which was giving incorrect results if
the file became empty.
An issue was found with the file re-naming operation,
when the same file was selected.
Release Date: 27 December 2007
Update
v1.02
This is an intermediate but important update that
includes several enhancements & fixes:-
User Variables
Extended the number of user variables from 10 to 999,
greatly enhancing program flexibility & usability.
Adjust Offset
Augmented the events minutes, first light, sun rise,
sun set and after twilight conditions with the facility to specify a plus,
minus or random offset.
Last
A last loop option has been added to the events
conditions, so that the I/O ports, X10 modules, etc. can be automatically set
to a safe state when the program closes.
Other
Further enhanced & refined the Natural Language
Interface.
The Limit Range Dialogue was
redesigned.
The Diagnostic Reporting function was improved to
display a range of user variables.
An issue was identified with the events ‘Minutes’
field.
An issue was
identified with accessing a database stored on a networked volume.
An issue was
identified with using a database created on a system with a different number of
TTS voices.
Fully reviewed & revised help file; rewriting
several pages for improved clarity.
Release
Date: 19 October 2006
Update
v1.01
This is a significant update that includes critical
items, enhancements & fixes:-
Significant Enhancements
SQL (Standard Query
Language)
This updates replaces the ad-hoc database with an integrated & embedded (zero-configuration, no administration, non-bloated) SQL-92 ACID compliant RDMS (Relational Database Management System).
Improved data integrity & reliability (Transactions
are Atomic, Consistent, Isolated & Durable even after system crashes and
power failures).
Each database is stored within a single ordinary
portable disk file making them easy to backup, copy, e-mail or to use from a
memory stick.
Easier to use & understand, Greater future
capabilities (including data import / export, reporting, ODBC)
WSH (Windows Script Host)
This version adds support for WSH, for advanced users
that wish to plug-in their own VBScript (Visual Basic Script) or JScript (Java
Script) routines into the program to provide additional or specialist
functionality.
Create complex ‘if-then-else’ scenarios, automate
computer management tasks, or interface the program with live WMI (Windows
Management Information).
The program can pass live data concerning the events,
user & or global variables to a script when it’s started.
Uses operating system calls for optimum performance.
Knowledge of Windows Messaging is not required.
RS-485 (multi-drop serial network)
Redesigned the Com port handling sub-routines so that
different events can quickly respond &/or control unique serial devices
attached to the same RS-485 master / slave multi-drop “daisy chain” serial
network, when used with a RS-232 to RS-485 converter. The general integrity
& efficiency of the Com port handling routines was also improved for
resoluteness and easy of use.
General Input File
Augmented
the general file input routine so that user variables (flag, counter, etc.)
& I/O ports can be silently set via file input.
Critical
Mutex
(Mutually Exclusive)
This updates adds an OS Mutex. This prevents possible
data corruption, by preventing multiple copies of the application from being
run concurrently and writing the same data at the same time.
Other
The program now provides a warning if
there is insufficient memory for correct operation.
An issue was identified where the program was using
excessive processor resources whilst in pause mode.
An issue was identified that could cause
the verbose message report tabulation to go out of sync.
The Seasons function was corrected, now
that we have the official dates.
General code optimization, several minor
performance enhancements, some typographical improvements
Updated the compressed help file to reflect
changes + several minor improvements.
Automatically installs SAPI4 and L&H
TruVoice American English TTS engines.
Release
Date: 29 May 2006