HomeVisionXL News

Debug plug-in version 2.4

11 December 2022, 11:15 CET

By: Ron Boston

Major Change:

  • An "Ignore" button is added that will ignore debug statements from selected plug-ins instead of just hiding their output. "Ignored" plugins are shown grayed out in the Hidden section.

    "Ignore" is useful for plug-ins that produce a lot of debug output but aren't being actively observed. Ignoring a plug-in means its debug output is not stored at all and doesn't contribute to the lines stored in the debug screen.
Other Changes:
  • The two digit day of the month is prepended to the time if the Time option is selected.

HomeVisionXL for 64-bit Raspberry Pi OS

12 April 2022, 14:53 CEST

By: Schelte Bron

The HomeVisionXL application is now available in a version for the aarch64 architecture. This means that HomeVisionXL can now also be used on a Raspberry Pi that has been loaded with the 64-bit Raspberry Pi OS.

HomeVisionXL 2.4 has been repackaged

12 April 2022, 14:45 CEST

By: Schelte Bron

All HomeVisionXL version 2.4 applications have been repackaged to include newer versions of some libraries. Especially the tcltls library needed updating because version 1.6.7 could no longer meet the current security demands of many web sites and other remote servers.

The tcltls library has been updated from version 1.6.7 to 1.7.22. The tdom library is updated from version 0.8.3 to 0.9.2. In the windows version, the twapi library has been updated from 3.0.17 to 4.6.0.

Web plug-in version 7.6

12 April 2022, 13:37 CEST

By: Schelte Bron

The web plug-in needed a small change to support tls 1.7. This is only relevant for people who configured a HTTPS server.

Actions plug-in version 1.3

5 June 2020, 09:17 CEST

By: Ron Boston

Version 1.3 of the Actions plug-in includes the following new features:

  • Allow multiple commands in one "action" call without needing to issue separate "action"s.
  • Add a wait command to provide a delay between actions. Especially useful for IR commands.
  • Add the "neutral" command for X-10 devices.
  • See the Actions plug-in description for more details.

Comfort Security System plug-in version 1.1

13 April 2017, 14:19 CEST

By: Schelte Bron

Comfort’s latest Comfigurator program now produces files with a .cclx suffix. These files also use a format that differs from the older .ccl files. The comfort plug-in has been enhanced to cope with both file formats.

HomeVisionXL 2.4 released.

7 July 2016, 21:11 CEST

By: Schelte Bron

HomeVisionXL version 2.4 has a few bug fixes and includes newer versions of some libraries. Most importantly the tls library is updated to version 1.6.7, which supports TLS1.2 and SNI (Server Name Indication). Tcl has been upgraded to 8.6.5, dbus to 2.1, and udp to 1.0.11.

For details about other changes in HomeVisionXL 2.4, see

Sendmail plug-in version 0.9

7 July 2016, 21:11 CEST

By: Ron Boston


  • Update for Server Name Identification requirement for Gmail.
  • Replaced explicit base64 coding procedures to take advantage of the built-in binary encode/decode commands.

Web plug-in version 7.5

29 April 2016, 23:16 CEST

By: Ron Boston

Major changes:

  • Commands can now be sent to the web server via GET formatted URLs in addition to POSTs. You must set a new option in the Web Server Plug-in's Configuration General tab to enable commands in GET URLs. See the help pages for details.
  • Firefox version 34 turned off support for SSLv3 due to the POODLE issue, so secure access to the webserver may produce an "Unable to connect safely" message. The web server now uses TLS instead of SSLv3 to resolve this issue.
Bug Fixes:
  • Minor tweaks.
For more information, see the Web Server Plug-in help pages, especially "General Configuration" and "Performing Actions" (was: "Tags That Perform Actions").

Weather plug-in version 5.2

15 March 2015, 17:08 CET

By: Ron Boston


  • Your selected station and the stations actually used for current and forecast weather can now be mapped using Google Maps (or an alternative mapping site as long as it accepts location info in the form of latitude and longitude in its URL).
  • Weatherbug/Earth Networks has switched to an even newer "Pulse API", necessitating more changes in the Weatherbug portion of the Weather plug-in. Due to changes in the new API compared to the old API, some features are different or no longer supported. Here is a list of differences:
    • Access Codes for the old API are obsolete. A new registration is required with Weatherbug/Earth Networks to get keys to use with the new API. Registration can be done at Choose the free "Pro" option. (Note: At the time of the publication of this News, the above link was still "under re-construction". If you registered for the previous Pulse-API, you can get updated keys by emailing If you have not yet registered for Weatherbug, you must wait until the website is open for business.)
    • Different sized weather icons are no longer available, and all icons are "transparent". Hence, these options have been removed from the configuration screen.
    • Some methods of station selection are now different. See the "Web-Based Weather Data" help page for details.
  • If Weatherbug/Earth Networks is used for the current weather, the barometric pressure change rate (rising/falling/steady) is available. Weather variables PressureRate, PressureRateIn, PressureRateMb, and PressureRateMm are available for use by the Control, Web and NetIO plug-ins. If "pressure" is selected to be spoken, the change rate is added at the end. If writing weather variables to the HomeVision controller is enabled, the change rate is now included.
  • Probability of Precipitation is now available for Weatherbug as well as NWS forecasts.
  • NetIO related changes:
    • The weather (wx and fc) netio procedure has been updated to work with NetIO Version 3.2, and the corresponding "get" commands have been simplified in the process. You WILL need to change any weather "gets" in your NetIO config file(s).
    • Some forecast items have day and night values, but in some cases only one of the two will exist. When getting one of these items via NetIO, you can ask for the other day/night value to be returned if the one you asked for doesn't exist by adding the "best" keyword to the end of the command.
    • Weather updates (current, forecast or both) can be triggered within NetIO by using the "netioaction" or "events" command.
    • See the new "Weather Info for NetIO" help page for details.
  • WeatherSetVar can now be called with an argument indicating whether to fetch current or forecast weather, or both (the default). Also, if set to run immediately (instead of in the background), the fetch interval is not affected.
  • The "Retrieve Stations" button now returns many more NWS/METAR stations than in the past, but it's unclear why all of these new stations are present in the data. Many of the new stations do not produce usable weather data and there is no foolproof way to determine ahead of time which stations are "good" and which are "bad". Startup time and Retrieve time are noticeably longer. To reduce the size of the saved station list (and subsequently reduce startup time), you can check the new "Retrieve Short List" checkbox, which will only save stations with 4 character IDs or with the string "air" in the station name. Unfortunately, this method still doesn't guarantee all stations are working stations. You can further reduce the list by "hiding" stations that don't work so they won't be included in the search for the nearest station when in NWS mode and using latitude/longitude or HV Location to select a station.

    If you are happy with the station list you already have, you do not need to retrieve a new list!

  • NWS no longer provides a "don't know" (a question mark) icon, so the weather/images folder is now populated with one.
  • Using websockets for weather objects on web pages now works for IPv6 addresses. HomeVisionXL version 2.3 is required.
  • The NWS web links have changed. While NWS's servers automatically redirect to the new URLs and the Weather plug-in responds to the redirects, if you are still using the old links, you may want to manually update yours in "Edit Web and File Links" to avoid the extra time of the redirect. Open the weather.hap file with your favorite editor, and, near line 67, copy the WebLink URL to "NWS Current" and the WebLinkFc URL to "NWS Forecast". New users of the Weather plug-in will get the new links by default.
Bug Fixes:
  • Finding NWS stations based on latitude and longitude searched too large an area. Now a "square" approximately 400 miles per side is searched.
  • Fixed a typo in the default NWS forecast link.

NetIO Server Plug-in Version 3.2

15 March 2015, 17:05 CET

By: Ron Boston


    The methods for handling commands, custom commands and custom objects have be simplified to provide more flexibility. Most people will be unaffected by these changes. However, if you use custom actions and/or custom objects, you may need to change any helper plug-ins you are using and potentially change how these are referenced in the NetIO application attributes (sends, reads, etc.). Netio helper plug-ins that implement the "netio" procedure will not work until changed to match this version. Those users known to be affected have already been provided with updated helper plug-ins. If you were missed, please contact me via the homevision-users group.

    Version 5.2 of the Weather plug-in (which provides netio and netioaction helper procedures to get and control weather data) has been updated to support the new methods of this version of the NetIO Server plug-in.

    Here are some highlights of changes:
    • The netio procedure in helper plug-ins now has only one required argument - the object type. Any number of arguments can follow. Eliminated are the requirements to include "object state", "id", and "val". "val" was always zero and not all custom objects needed an "object state" or "id", so these were mostly just taking up space and complicating the mapping of NetIO app commands to the helper procedures. Now these are optional if desired for the particular functionality of the helper plug-in.
    • Command "types" may now be mixed on the same line. I.e., any command of type "get", "set", "action", "netioaction" and "events" (but excluding "auth", which should always be a command by itself). There is a limited set of combinations that might make sense, but there was no real reason to limit what you can try.
    • If a netioaction command's object type is not a standard object type (e.g., x10, var, etc), then the command name "action" can be used instead of "netioaction". The NetIO Server will detect this and call the correct procedure.
    For more information, see the NetIO Server plug-in help pages, especially "Basics", "Actions" and "Custom Objects".
Helper Plug-ins now included:
    Two helper plug-ins are now included in the NetIO plug-in package. These plug-ins are separate from the NetIO Server plug-in itself and are optional. If you want to use one or both of them, simply enable them in the Plugin Manager. If you do not want to use them, you can safely delete the corresponding .hap file.
    • Control Variable Helper Plug-in, Version 1.2 (netio_cv.hap)
      This helper plug-in provides access to any Control plug-in Control Variable set via the ControlSetVar procedure.
    • Event Log Helper Plug-in, Version 1.1 (netio_evlog.hap)
      This helper plug-in provides access to the HomeVision Event Log.
    There are no "help" files associated with these helper plug-ins. "Netioaction" and "get" command formats and functionality are documented as comments in the plug-in .hap files.

NetIO Server Plug-in Version 3.1

6 November 2014, 20:53 CET

By: Ron Boston


  • The NetIO Server now supports IPv6 connections. You can also enter IPv6 IP addresses into the "trusted" list. HomeVisionXL version 2.3 is required.
  • To provide an easier way to construct NetIO pages that display dynamic lists or "pages" of objects (X-10, flags, variables, etc.), parameter functionality has been expanded:
    • A new parameter, "id2", has been added, along with its corresponding character "&". "id2" works the same as the "id" parameter.
    • In places where id, level, or value are used in commands, you can now do simple math with parameter characters (?, &, and #). For example:


      This allows you to "define" "id2" to be a page start value, and the "2" as the offset into the page. You can create multiple widgets like this with different offsets, and a set of buttons that set the page ("id2") to different values, resulting in a list of objects that change depending on which "page" button was clicked. See the new NetIO Server plug-in help page "Setting and Using Parameters" for more details and examples.
  • NetIO Application version 2.0's big change was to require all data sent back to the app be terminated with a defined character sequence. The default is a newline. Since this was the way the NetIO Server plug-in already terminated the data it sends to the NetIO application, in most cases the App change was transparent. However, with the App now detecting newlines as end-of-data characters, this causes problems for data sent to the app that has embedded newlines (typically used to create multi-line label text). The NetIO Server now allows the terminating sequence for data sent to the NetIO Application to be user-settable. The default terminating sequence is a newline (\n), which is the same terminating sequence as used in previous versions of the NetIO Server plug-in. For most users, this should be OK. However, if your returned data contains newlines, then the terminating sequence must be changed. In this case, using a carriage return (\r) as the default terminating character works well. You should set the new Netio Server General configuration item "Response terminator character(s)" field to "\r" (without the double quotes). In addition, using the NetIO UI Designer, you must add the "receiveTermination" attribute to your Connection and set this attribute to "\r" (again, without the double quotes).
Minor Bug Fixes:
  • Calls to custom object netio procedures with greater than 5 arguments did not work properly. Previously, all arguments from 5 and up were combined together and passed as the fifth argument. Now they are passed as separate arguments.
  • If the log file could not be written, a cryptic error message occurred. Now the error message makes more sense.
  • The plug-in now makes sure all new configuration items exist and have appropriate defaults.
For more information, see the NetIO Server plug-in Help pages, especially "Getting Started", "General Configuration", and "Setting and Using Parameters".

Web plug-in version 7.4

6 November 2014, 17:03 CET

By: Schelte Bron and Ron Boston

Major changes:

  • The Web Server plug-in now supports IPv6 connections. You can also enter IPv6 IP addresses into the "trusted" list. HomeVisionXL version 2.3 is required.
  • When creating a server certificate for secure connections, you can now enter multiple "Common Names" (IPv4/IPv6 IP addresses and/or domain names). This allows you the choice of addressing your web server using any of the provided Common Names, instead of being restricted to one.
  • Reading the Event Log is now more robust, especially for slower processors like the Raspberry Pi.
Bug Fixes:
  • Updated the certificate wizard to use the new Geonames API to get location info for certificates.
  • If the log file could not be written, a cryptic error message occurred. Now the error message makes more sense.
  • Reduced the possibility of an error message if connections to the web server are externally disconnected.
For more information, see the Web plug-in Help pages, especially "Configure Trusted Clients" and "Certificate Configuration".

Tweet Plug-in Version 1.2

1 November 2014, 16:41 CET

By: Schelte Bron

Twitter appears to have updated its requirements for secure connections. The tweet plug-in has been adapted to comply with these new requirements.

Actions plug-in version 1.2

19 October 2014, 11:35 CEST

By: Ron Boston

Version 1.2 of the Actions plug-in includes the following fix:

  • X-10 command "directtolevel" was missing one of the t's and has been fixed. For backward compatibility, the original mis-spelled "directolevel" has been retained, so now both "directtolevel" and "directolevel" are allowed.
See the Actions plug-in description for more details.

HomeVisionXL 2.3 released.

4 June 2014, 18:06 CEST

By: Schelte Bron

HomeVisionXL version 2.3 is finally here. This version uses Tcl 8.6.1, which gives HomeVisionXL IPv6 capabilities. It also provides several new features to plug-in developers.

Unfortunately support for Mac had to be dropped with this version because it became uneconomical to maintain the OSX environment for the very limited number of users.

For details about the new features and bug fixes in HomeVisionXL 2.3, see

Tweet Plug-in Version 1.1

21 April 2014, 11:35 CEST

By: Ron Boston


  • Updated URI for twitter to use secure connection and new API 1.1.
  • Messages now can be sent from a file using the form:

      tweet file "filename"

    If "filename" is a simple file name, tweet assumes the same path used for "Write to File". Otherwise, "filename" should contain an absolute path.
  • Messages longer than 140 characters now are broken into multiple tweets.

NetIO Server Plug-in Version 3.0

6 March 2014, 11:43 CET

By: Ron Boston

New Features/Changes:

  • The NetIO Server now provides the ability to set and reference four "parameters": house, unit, id and level. You use the new "set" command to pre-set these values. If you use an "action", "netioaction", or "get" command with a "*" in the ID field, the command will combine and use the previously set house and unit codes for the ID. If you use "?" instead, the numeric id parameter will be used. If the command contains a "#" in the level, scene, or value field, the previously set level value will be used. These new parameters allow you to create "generic" screens to set X-10 devices, variables, flags, etc. without hard-coding object IDs.
  • Customization of returned text and images from get commands has been expanded to include variable, analog, and digital temperature sensor objects. This is particularly useful if you have a variable that holds state information that can have several different values, and you prefer to display textual names or images for these states instead of just numbers. (Thanks for Bruce Fisher for this idea!)
  • While Input and Output state text can already be user-set within HomeVisionXL, for consistency Input and Output object state returned text also can now be customized in the same manner as other objects.
  • When specifying custom return values, you can now combine individual IDs and ID ranges on one line, e.g., "13,20-35", if they have the same return values.
See the NetIO Server plug-in "Actions" and "Getting Status Information" help pages for details.

NetIO Server Plug-in Version 2.0

20 August 2013, 22:44 CEST

By: Ron Boston

New Features:

    Four new major features have been added to help in customizing actions and responses:

  • For times when actions are needed that are more complex than the Action plug-in can handle, customized actions can be added with a custom plug-in.
  • Multiple "action" and custom action commands can be sent in one command from the NetIO application. This can be particularly useful for those NetIO application properties other than "sends" that do not allow multiple entries: e.g., "onSend", "offSend", "release"
  • Multiple "get" commands can be sent in one "reads" command from the NetIO application. The output from all of the commands are joined together with a user-specified separator character and returned to the NetIO application which can parse and format the data into a useful display. For example, it is easy to create a single label that will display a temperature made up of the whole and fractional parts that are stored in separate variables.
  • Customization of returned text and images from get commands can be done by defining "returns" values in an external file, which is read during NetIO Server plug-in startup. Separate definitions can be made for individual object IDs or ranges of IDs. For example, you can have one set of image icons for X10 light devices and a different set for X10 devices that control other types of equipment.

    Other new features:

  • The amount of information that is logged is controlled by a new "log level" configuration setting.
  • Debug output can be turned on/off via a "sticky bit". Debug output is turned off by default. Turning debug output off (or disabling the debug plug-in) will significantly speed up responses, especially for relatively slow processors like the Raspberry Pi.
  • The NetIO Server plug-in now obtains object state information directly, instead of via the wsupdate procedure and storing the information within the plug-in. What this means is:
    • Custom object plug-ins no longer need to send data to it via the wsupdate procedure. The custom object plug-in's netio procedure should obtain the requested object information directly in the plug-in and return the appropriate value. Note 1: Custom object plug-ins that also provide data for the web should continue to use the wsupdate procedure to send this data to the web plug-in. Note 2: Weather plug-in version 5.1 is required to provide custom objects "wx" and "fc" using this new method.
    • In most cases, the "event" command is no longer needed in a page's "sendOnAppear" property. The "event" command causes an object's state information to be updated. Since in most cases object state information is updated independently of the NetIO Server, having the NetIO Server force updates is usually redundant and wasteful of processing time. You may wish to use the "event" command if there is an object that doesn't independently update its state information. For standard objects, this could be the "variable" object, which typically does not have Auto Reporting turned on. Any custom objects that don't independently update their own state information may also benefit from using the "events" command. However, since the "event" command is typically used only with the "sendOnAppear" property, which is executed only when a page is selected, the update may get stale if you stay on the page a long time. So, if possible, it is best to design your custom object such that it will always have access to the latest state information.
  • The NetIO Server plug-in no longer forces object updates at startup, since it no longer stores object state information within the plug-in.
  • Improved some server log entries for authentication related responses.
Bug fixes:
  • Multiple devices from outside the local network (with same IP address) can now set up connections simultaneously.
  • Getting Timer info now works.
  • Implemented miscellaneous fixes to prevent the plug-in from throwing errors.
See the NetIO Server plug-in help pages for details.

For weather custom objects "wx" and "fc", NetIO Server plug-in version 2.0 requires Weather plug-in version 5.1.

Weather plug-in version 5.1

20 August 2013, 22:41 CEST

By: Ron Boston


  • The netio procedure for custom objects "wx" and "fc" has been changed to work with NetIO Server plug-in version 2.0.

  • Weatherbug/Earth Networks is switching to a new "Pulse API", necessitating changes in the Weatherbug portion of the Weather plug-in. Except for the need to get and use new authorization keys, users should see no other changes. Information retrieved from Weatherbug/Earth Networks remains the same.

    Official cut-over to the new API is expected in early November, 2013; however, the new API is up and running as a "beta" until the official cut-over date. This version of the plug-in works with the new API as it exists as of the date of the release of this version. Releasing this Weather plug-in version that supports the new API now will give you plenty of time to switch over before the old API is turned off. New versions will be released if necessary to track any future changes.

    A new registration is required with Weatherbug/Earth Networks to get new keys to use with the new API. Registration can be done at Access Codes for the existing API will be obsolete after the cut-over, but should work up to that point.

    Upgrades of the Weather plug-in from previous versions will default to the existing API. Users can manually switch over to the new API any time before the cut-over.

    New installations of the Weather plug-in will default to the new API.

See the Weather plug-in help pages for details.

Sendmail plug-in version 0.8

21 July 2013, 09:48 CEST

By: Schelte Bron

Detailed list of major changes:

  • Add a date header to the mail, so mail programs will report the correct time the mail was generated, rather than when it was received.
  • Resend the mail in case of communication failures with the mail server.
  • In case of problems with the email address of some recipients, continue to send the mail to the rest of the distribution list.
  • Put a time stamp for the start of the dialog with the mail server in the logs to facilitate finding a specific event.
  • Force trigger strings to be at least 7 characters.
  • Properly allow the plug-in to run in a gui-less HomeVisionXL
  • Change the code to work with itcl 3 and 4

NetIO Server Plug-in Version 1.0

8 March 2013, 13:05 CET

By: Ron Boston

The NetIO Server plug-in is now available. The NetIO Server supports the NetIO Controller application. The NetIO Controller application itself is an independently developed commercial application and is available on the Apple and Google stores for a nominal fee.

The NetIO Controller application is a general purpose, user-configurable remote device controller for Android and iPhone/iPad products. As such, it can be used to provide a means to control and display status of HomeVision objects on a smartphone or tablet. Application details can be found at the NetIO Controller Application website.

The NetIO Server Plug-in provides a server interface between the NetIO Controller application and HomeVision, allowing the user to control and get status from HomeVision via the NetIO Controller application. Users can create their own screen layouts for controlling and displaying all available HomeVision objects. While not exactly the same, the NetIO Controller application is conceptually similar to the control plug-in.

  • You can create multiple pages with label, button, switch and slider widgets that can be easily positioned and reshaped via a web-based layout editor.
  • The widgets can be configured to display text or an image, both of which can be based on an object's state.
  • Widgets can perform actions. A button widget can perform a sequence of actions, like setting a variable and then executing a macro.
  • The application optionally tracks object status updates via polling.
  • In addition to the standard HomeVision objects, "custom" objects can be defined and displayed.
  • Weather information from the Weather plug-in can be displayed (version 5.0 or later).

See the NetIO Server plug-in description and help pages for details.

At the time of release, the NetIO Server has been tested successfully running the sample configuration with application version for Android. Application version 1.4.1 for iPhone has problems with buttons that have both sends and reads defined. The developer has committed to fixing this issue in the near future. In the meantime, you can use the iPhone version by separating out status feedback into a nearby label, leaving buttons with sends actions only. Slider and switch widgets are not affected by this issue.

Weather plug-in version 5.0

8 March 2013, 12:37 CET

By: Ron Boston

New features:

  • The Weather plug-in now uses websockets to provide real-time updates of weather information used in web pages. An addition to the weather Configuration screen allows selection of which weather variables are to be included in websocket updates. A new supporting plug-in, wxjsondata.hap, and a JavaScript websocket helper file, wxwebsocket.js, provide the interface to the Web Server plug-in. Note: During installation, wxwebsocket.js is placed in the directory "plugin/html". If your web server uses a different html directory, you must move wxwebsocket.js to that directory. Web Server plug-in version 7.0 or later is required.
  • In addition to weather objects, wxjsondata.hap supports "custom objects", which are virtually anything that you want to display on web pages. An additional plug-in to generate the "custom objects" is required.
  • The Weather plug-in supports sending weather information to the NetIO Server plug-in, in a similar way it sends it to the Web Server plug-in.
  • When Weatherbug is used, icon sizes from 15x13 to 500x420 can be selected. Icon background can be either transparent or opaque.
  • Weather variables Lat, Long, ZipCode, CityCode, SearchType, SStation, FcLat and FcLong, FcZipCode, FcCCode, FcSStation, FcSearchType are set to the corresponding values from the Stations tab of the Configuration screen, not to fetched values.
  • Location, Country, Station, FcLoc, FcCity, FcState, FcCountry are set to fetched values, if present. These rules were inconsistently applied in previous versions.
  • For Weatherbug forecast weather, the fetched zipcode, if present, is added to FcLoc. For Weatherbug current weather, the fetched zipcode, if present, is added to Location.
  • For METAR, when the search type is Use HV User Location or Lat/Long, the closest found station is used instead of using StationID directly.
  • Command WeatherSet now has a "Go" option that causes a new weather fetch to be initiated (for use mainly with the Web Server plug-in's <HV:Run> tag or the websocket-related wxinvoke helper function.)
  • Command WeatherGetIcon can now accept weather variable icon names, like WeatherIcon and FcImgn1.
  • When getting data from the web (either weather data, station data, or icons), if a redirect response is received, the plug-in will attempt to get data from the redirected URI. This should help prevent failures if NWS or Weatherbug changes its links.
  • Changed the default NWS links to the latest URIs. These defaults will take effect automatically only when the weather plug-in is run for the first time. If you already are using the weather plug-in, the easiest way to take advantage of the newest NWS URIs is to add them manually via the "Edit Web and File Links" dialog in the "Data Sources" Configuration screen tab:
  • Added a link for Weatherbug icons in Data Source->Edit Web and File Links.
  • When the Configuration screen is closed, its position will be remembered for the next time it is opened.
  • Added a "S" at the bottom of the Configuration Screen if the Configuration screen is "Sticky", i.e., stays active after "OK" is clicked. This mode also turns on debug messages and is mainly used while debugging or fine tuning configuration settings. "Sticky" mode is toggled with the F2 function key while the Configuration screen is in focus.
Bug fixes:
  • If expected values are not present in fetched weather data, sometimes the entire fetch was abandoned. Now, checks are made and missing values are set to appropriate default values.
  • If Source is set to File and the weather type was set to None, weather was fetched from the data file anyway. Now, it is not.
See the Weather plug-in help pages for details.

Weather plug-in version 5.0 requires HomeVisionXL 2.1 or later.

Websocket support requires Web Server plug-in version 7.0 or later.

Web plug-in version 7.3

3 March 2013, 16:43 CET

By: Ron Boston

Detailed list of major changes:

  • Added ability to select the log file directory.
  • Fixed a bug where the Input and Output built-in web pages were not updating live.
  • Use custom high and low state labels for buttons in the Output built-in web page.
  • The X10 "Direct to Level" command responded to "directolevel" instead of "directtolevel" (note the missing "t"). It now responds to either (for backward compatibility.)
  • DTS values of 0 were incorrectly being displayed as "Unknown" via Websockets. Now the correct value of "-50" will be displayed
  • Websocket object state entries of "" were displaying as "0" instead of being ignored.
  • Websockets would fail to open if the URL contained anything other than alphanumeric characters. Now "+", "-", and "_" are also allowed.
  • Fixed several instances where errors were generated occasionally when a web socket closed..
  • When the server was stopped, sometimes active connections were left open. Now all open channels are closed when the server is stopped.
  • Some improvements and fixes for handling CGI scripts/executables have been made (see the web server plug-in's "Dynamically Generated Resources" help page for more details).
    • For TCL CGI scripts, two "helper" functions, "getarg" and "getdata", are provided to retrieve GET or POST query information. Actually, "getarg" had been available previously, but was limited to GET operations. These functions are particularly useful for POST requests, since the query data for TCL scripts is not available via the standard input, as originally stated in the help pages.
    • For non-TCL CGI programs (e.g., Perl or C), POST data is available via the standard input; however, these programs should explicitly read the number of characters indicated by environment variable CONTENT_LENGTH instead of relying on an end-of-file indication, since that indication will not occur as expected.
    • Certain request header environment variables may have lingered from previous requests if they did not occur in the current request. These extraneous variables are now removed.
  • Fixed a bug where the config screen didn't remember its position in some cases with multiple monitors.
  • Changed secpartition section of "Tags That Perform Actions" help page to reflect correct partition ID format. The secpartition action only works on single partitions, not multiple partitions. Documentation change only; functionality has not changed.

Actions plug-in version 1.1

3 March 2013, 16:40 CET

By: Ron Boston

Version 1.1 of the Actions plug-in includes the following changes and fixes:

  • Actions for inputs and outputs after the first group of 8 did not work if the ID was specified in a "group/port" format, i.e., "C-1".
  • Added "seczone" and "secpartition" objects to be consistent with previous implementations (e.g.: HTML HV action tags, HV status tags and smartphone pages) of security system commands. The original "security" object remains as is and is a superset of "seczone" and "secpartition".
  • Security partition commands now allow the ID to specify multiple partitions to be acted on by setting the appropriate bits and converting to decimal format (1-255).
  • Made clarifications in the Actions plug-in description for the above security changes and correct ID ranges.
See the Actions plug-in description for more details.

Debug plug-in version 2.3

13 September 2012, 16:13 CEST

By: Schelte Bron

When developing a plug-in that produces quite a bit of debug output, it can be hard to find specific pieces of information. To assist in that, Ron Boston has added a search option to the debug plug-in. You can search forward or backward, and either case-sensitive or not.

HomeVisionXL for raspbian distribution

22 July 2012, 12:20 CEST

By: Schelte Bron

The latest Raspberry Pi distribution (known as raspbian) switched from the armel architecture to armhf. As these architectures are not compatible, the existing version of HomeVisionXL for the Raspberry Pi does not run on the new raspbian image.

To address this situation, a second HomeVisionXL binary has been made available for the Raspberry Pi. People still using the debian distribution should choose the binary marked "armel". The binary marked "armhf" was created for people who have upgraded to the raspbian distribution.

HomeVisionXL for Raspberry Pi

21 July 2012, 10:55 CEST

By: Schelte Bron

Some people have been inquiring about running HomeVisionXL on a Raspberry Pi. Thanks to Stephen Bond who has graciously provided me with remote access to such a device, I was able to compile all the necessary parts.

The Raspberry Pi HomeVisionXL binary contains all the same libraries as the regular linux version, so there should be no limitations in functionality. Of course the Raspberry Pi has some speed and memory limitations that may affect the usability of some features or plug-ins.

Due to the mentioned limitations, I suggest to use the Clam GUI style on the Raspberry Pi. It is less processor intensive than Plastik or Keramik and looks better than Basic or Classic.

While the binary has been compiled for and on a Raspberry Pi (debian sqeeze distribution), it may very well run on other arm based computers too.

Web plug-in version 7.2

17 May 2012, 15:44 CEST

By: Schelte Bron

Version 7.2 of the web plug-in fixes a problem where the temperature sensors web page would display values that are 50 degrees too high.

Web plug-in version 7.1

8 March 2012, 21:44 CET

By: Schelte Bron

To our great regret a bug managed to sneak into web plug-in 7.0 just before the release: The extension of a file that the plug-in refers to was changed, but in one location the code still referenced the old name. This has been fixed in version 7.1.

Ron also discovered that the smartphone pages were pretty useless for users with read-only access. In version 7.1 a change has been made so those users can see object changes. Of course they will still not be allowed to perform any actions on the objects.

Actions plug-in version 1.0

1 March 2012, 19:27 CET

By: Ron Boston

The Actions plug-in provides a more "friendly" way for other plug-ins to send "action" type serial commands to the HomeVision Controller. Use of action commands negates the need to look up the details of each serial command and then format your arguments into raw serial string.

For example, the following Tcl line:

action timer load 8 4:3:2.1

instead of:

hvSendCommand ,=080001020304

will load and start timer 8.

There are commands for the following objects/events: X-10, Custom Lights, Flags, Variables, Inputs, Outputs, Analog Inputs, Digital Temperature Sensors, Thermostats (HVAC), Macros, Infrared Signals, Timers, Scheduled Events, Periodic events, and Security.

See the Actions plug-in description for more details.

Web plug-in version 7.0

1 March 2012, 17:43 CET

By: Ron Boston

When used with browsers that have websocket support, the Web Server can now take advantage of "websocket" connections. Websockets provide a way for the server and the browser to pass data back and forth without having to reload the web page. The main benefit for HomeVison is that object states can be updated in real-time without the user having to manually refresh the page.

Real-time updates can be available for the following object types: X-10, Custom Lights, Flags, Variables, Inputs, Outputs, Analog Inputs, Digital Temperature Sensors, Thermostats (HVAC), and Security.

The built-in web pages and table tags now use websockets to provide real-time updates of object status, without having to reload or click on the "Update Status" button.

Websockets have been tested with Firefox version 9.x.

The web plug-in package now includes a set of web page files that are designed for smartphones and tablets, and also take advantage of websockets to provide real-time information.

The smartphone web pages are analogous to the PC-based built-in pages in terms of the information they contain, but are completely external to the web server to allow customization. This is accomplished by a series of files containing Tcl scripts. The web server has the capability to serve up not only html type files, but "executable" ones (like Tcl) as well. For the smartphone pages, we take advantage of this capability, as it allows dynamic generation of a web page. These Tcl scripts generate the appropriate html information which is then sent by the web server to the device's browser.

In fact, there is nothing special about this technique that makes it unique to use with smartphones. It can be used to create web content for any device.

See the web server help pages for additional information on websockets and smartphone web pages.

Detailed list of major changes:

  • Added websocket support.
  • Added websocket-ready smartphone formatted web pages.
  • Built-in web pages and table tags:
    • Added websocket functionality.
    • For Input and Output tables, display the "A-1" format instead of a decimal number.
    • Remove the extraneous ";" before "Level" in Custom Light table.
    • Don't display "%" if level is null in Custom Light & X10 tables.
    • Change "Read Status Now" and "Read Now" text on update buttons to "Update".
    • Remove unneeded update line from IR table.
  • Added capability for Tcl scripts to access the HomeVisionXL hv* plug-in APIs.
  • Added capability to run a procedure in a plug-in (e.g., "myproc") by referencing it in the URI as "myproc.hvs".
  • Added "raise" and "lower" to HVAC actions. (Replaces "Raise1Degree", "Lower1Degree" actions that were never actually implemented before.)
  • Added "toggle" to X-10 actions.
  • Use "hvImport -name" option when importing procedures from Run tag, hvs, etc. to avoid potential collisions with names that are the same as an internal procedure.
  • Fixed bug where button and input fields for the X10, Custom Lights, and Timer built-in web pages did not work properly if the "Use JavaScript in web pages" option was unchecked.
  • Fix GUI issue on exit.
  • Fix expiration of HV authentication cookies under certain conditions.
  • Fix missing bracket in HV_FrameStyle.css.

HomeVisionXL 2.2 released.

24 November 2011, 21:24 CET

By: Schelte Bron

Version 2.2 of HomeVisionXL provides a new option to automatically read the relevant object state information when a control screen is opened. This option can be found on the Advanced tab of the preferences screen.

Additionaly in this version there are a number of new features that can be used by plug-ins as well as several bug fixes. For details, see

Web plug-in version 6.0

19 September 2011, 10:50 CEST

By: Ron Boston

The web plug-in now supports Perl as one of the possible CGI scripts. Perl scripts should have a ".pl" extension.

Other changes of note:
- Fixed a bug where a CGI script that fails would cause a plug-in error.
- CGI processes that take too long are now killed in Windows systems, as expected.
- HV tags for Flag, Input, and Output objects didn't display multiple word state labels properly.
- The built-in table for Output didn't use user-defined labels when displaying output states.
- Fixed minor bugs that occurred if the configuration data couldn't be saved.

Weather plug-in version 4.1

22 June 2011, 11:45 CEST

By: Ron Boston

The Weather plug-in has been updated to fix the following:

  • Fixed an error that occurred when wind speed is selected to be displayed as km/h, and the wind is reported by the weather source with a fractional part (i.e., 10.6).
  • If data received from can't be properly parsed, a debug message was fixed to indicate "" instead of "NOAA".

ThingSpeak plug-in version 1.3 available

8 June 2011, 00:03 CEST

By: Bob Gardner

The Thingspeak plugin allows you to upload the values of up to 8 Homevision variables to a pre-configured Thingspeak channel. Once the data is uploaded, it can easily be viewed in various graphical formats either on the Thingspeak web site or on your personal web space. You can see more information on configuring a Thingspeak channel, configuring the Thingspeak plugin, and samples of Thingspeak graphs at:

Control plug-in version 6.4

1 May 2011, 10:46 CEST

By: Schelte Bron

Version 6.4 of the control plug-in contains a number of bug fixes, most importantly the widgets will now be updated correctly again after reordering the Homevision schedule.

Other changes of note:

  • Data was not cleaned up correctly, resulting in errors when a new control project is started and subsequently edited.
  • Clear reordering information when opening or creating a new schedule
  • Fix error: can't read "fmtval": no such variable.
  • Could not immediately edit a newly created page

Object tracking plug-in version 3.1

24 April 2011, 10:42 CEST

By: Schelte Bron

Some bugs have been fixed in the object tracking plug-in, most importantly the objects are updated again when reordering and downloading the Homevision schedule.

Other changes of note:

  • Exclude objects referenced in graphs from noisy objects treatment
  • Don't round values, so SVG graphs can be zoomed in nicer
  • Fix error with file/directory selection dialogs
  • Fix off-by-one error when inserting additional datapoints

Weather plug-in version 4.0

22 February 2011, 22:25 CET

By: Ron Boston

The Weather plug-in has been updated to provide 7-day forecasts and has added support for as an alternative source for weather information, in addition to the existing NWS and METAR sources.

Other improvements and bug fixes also have been included.

Additions, changes and fixes of note:

  • The Weather plug-in now supports 7-day forecasts from the U.S. National Weather Service (NWS) and A new set of control variables are provided to pass this information to the Control plug-in.
  • can also be selected as the provider of current weather as an alternative to NWS or METAR sources.
  • Weather icons are now dynamically downloaded as needed and are no longer included as part of the weather plugin distribution, so future icon upgrades by the weather providers will be handled automatically. The older *.gif icon files in the plugin/weather/images directory can be safely deleted. The Weather plug-in will re-populate this directory with up-to-date icons as they are needed.
  • Icons usually will be either GIF ( or JPEG (NWS) format, but other formats are possible (PNG for example). You may need to make changes to your Control plug-in system: See Upgrade Notes below.
  • A change was made in how certain configuration information is stored in the homevision.ini/.rc file. The new Weather plug-in will automatically convert your previous settings.
  • Location and Station ID were added to items that the Weather plug-in can speak.
  • Station ID and Probability of Precipitation can now be stored into HomeVision controller variables.
  • The HomeVision controller variables used to store observation time and date, Station ID, and Probability of Precipitation are no longer tied to the variable address selected for storage of the weather condition. Each may be selected independently.
  • Time Format and Temp Scale can now be set to track the equivalent values in HomeVisionXL's Settings/Preferences.
  • In the HomeVisionXL Plugins menu, selecting "Weather" now takes you directly to the Weather Configuration screens instead of the intermediate (and useless) "Configure" step.
  • Weather configuration screens have undergone significant reorganization.
  • Command WeatherGet has been expanded to include individual forecast items as well as a complete forecast table (for use mainly with the Web plug-in's <HV:Run> tag.)
  • Command WeatherGetIcon can now accept an icon name with or without its extension, and is not limited to GIF files.
  • A new command, WeatherSet, has been added to expand capability to set weather-related parameters via other plug-ins or <HV:Run> tags. WeatherSet includes the functionality of WeatherSetStation; however, for backward compatibility, WeatherSetStation is still supported.
  • Serial commands have been expanded to support setting of weather-related parameters, similar to the functionality of WeatherSet.
  • Pressing F1 while in the Weather Configuration screens now opens tab-appropriate help pages.

See the Weather plug-in help pages for details.

Weather plug-in version 4.0 requires HomeVisionXL 2.1 or later.

Important Information for Users Upgrading to Version 4.0 from Previous Versions

  • Version 4.0 changes certain configuration information that is stored in the homevision.ini/.rc file. For your convenience, it will upgrade your version 3.0 configuration information automatically, but it cannot go "backwards", so if you anticipate moving back to version 3.0, to make it easier, you may want to create a backup of your homevision.ini/.rc file before downloading and enabling this plug-in. Otherwise, you will just need to redo some of your configuration settings (time format, speech items, and HV weather variables) by hand if you later decide to revert back to version 3.0
  • Version 4.0 no longer uses pre-loaded gif files in the plugin/weather/image directory for weather icons (i.e., WeatherIcon). All weather icon files are dynamically downloaded as needed.
    • All existing gif files in the image directory may be safely removed.
    • NWS currently uses JPEG formatted icon files, so the Pixane library must be configured for the Control plug-in to display these icons.
    • Since icons can now be one of several formats, icon control variables now contain the full file name, including the extension. Any Control plug-in widget that refers to WeatherIcon for its image must remove the hardcoded ".gif" extension. I.e., change ".../plugin/weather/image/%.gif" to ".../plugin/weather/image/%".
  • Version 4.0 has added station location info into the station cache file that is created when you "Retrieve Stations". If you use the NWS station data, you should re-retrieve this data to make sure your cache file is updated with the new information.

Tweet plug-in version 1.0

20 February 2011, 16:35 CET

By: Schelte Bron

Why should the social media be limited to human beings? With the tweet plug-in your Homevision can now keep you up to date with events around the house!

See: for details.

iTunes-Win plug-in version 1.0 available

19 February 2011, 14:40 CET

By: Schelte Bron

Here is another new audio player plug-in. You can now control iTunes for Windows from your Homevision schedule using the iTunes-Win plug-in.

The plug-in supports the same features as all of the existing audio player plug-ins, so you can easily switch from e.g. WinAmp to iTunes, should you so desire.

For more information, see:

Shutdown plug-in 1.0 available

19 February 2011, 13:42 CET

By: Schelte Bron

At times it may be useful to be able to shut down the computer running HomeVisionXL from within your schedule. That is exactly what the shutdown plug-in allows you to do. If an audio player plug-in is also installed, the shutdown plug-in will wait for the currently playing song to finish before shutting the system down.

For more information, see:

MPRIS plug-in version 1.0

19 February 2011, 12:22 CET

By: Schelte Bron

Many audio players on linux nowadays conform to the MPRIS specification. This includes among others: Amarok2, VLC, Audacious, and Rhythmbox. All of these audio players can now be controlled from your Homevision schedule using the new mpris plug-in.

For more information, see:

WinAmp plug-in version 1.4

17 February 2011, 21:31 CET

By: Schelte Bron

The WinAmp plug-in has been slightly modified to better conform to the common audio player plug-in description outlined at The plug-in now reacts properly to the "music delete" and "music finish" serial commands.

In addition the screen layout has been redesigned and a slider to control the volume has been added.

Web plug-in version 5.0

30 January 2011, 22:09 CET

By: Ron Boston

The web plug-in now supports a major new feature: secure https connections. Other improvements and bug fixes also have been included.

Additions, changes and fixes of note:

  • The web server now provides secure connections. A secure connection encrypts data flow between the web server and the browser, providing added protection against eavesdropping. Using a secure connection also can eliminate the need for entering a login name and password. Multiple client certificates can be created and assigned to different devices for more control over who and what accesses the server. Each certificate can be set for read/write or read-only access, and can be revoked if necessary. A certificate wizard has been added to the Web Server configuration screens to help step you through the required certificate generation.
  • Multiple user names can now be created. These can be assigned to different users or different devices for more control over who and what accesses the server. Each user can be set for read/write or read-only access.
  • The directory where server html files are stored can now be set by the user. This could be useful when developing new html files while leaving the existing working versions untouched in the original default directory.
  • When "Report results of server commands" is unchecked, the web server will now wait for the command to complete and then refresh the current page, potentially with updated information, providing a more seamless user experience. Previously, no updated page would be sent to the browser unless this box was checked, and then only after a "success" or "fail" page was shown.
  • A new option was added to select whether the Web Server configuration screen is to be found in the HomeVisionXL "Configuration" menu (as it was previously), or in the "Plugin" menu along with other plug-ins.
  • The Web Server configuration screens have been revamped to include multiple tabs for general, user/password, trusted network and certificate settings.
  • While in the Web Server configuration screens, pressing F1 will open the appropriate help page, depending on which tab is active.
  • Some changes were made to default settings: "HTTP port number" to 11080, "HTTPS port number" to 11443 (new), "Automatically start server when HomeVision starts" to ON, "Use JavaScript in web pages" to OFF, "Report results of server commands" to OFF.
  • JavaSript files (.js) are now explicitly supported and are served up with the proper content-type of "application/javascript".
  • Fixed a bug where multiple "Web Server: Start" serial commands would cause an error..

See the web plug-in help pages for details, especially for setting up secure connections, as this method is somewhat complex.

HomeVisionXL 2.1 released.

25 December 2010, 13:02 CET

By: Schelte Bron

Christmas is a time for presents, so here is HomeVisionXL 2.1. This version is based on Tcl/Tk version 8.5.9, which introduced a native GUI style for Windows Vista (also a better fit on Windows 7). Users on these platforms may want to take advantage of that by changing the GUI style to "Vista".

Starting with this version HomeVisionXL now includes several general purpose libraries that can be utilized in HomeVisionXL plug-ins. For example, there is tDom to work with XML files, TLS for secure connections, and TclUDP for IP communication over UDP. These are available on all supported platforms. On windows TCom allows inter-process communication with other applications, and TWAPI provides access to any conceivable Win32 platform API. Ceptcl allows the use of unix sockets and provides another method to work with UDP communication on linux.

For more information on new features and bug fixes in the HomeVisionXL version, see

Object tracking plug-in version 3.0

29 August 2010, 22:27 CEST

By: Schelte Bron

The object tracking plug-in has been greatly improved. It is now able to provide the graphs as SVG images to the web plug-in, so graphs can be viewed in real time with a web browser. Furthermore it is possible to save selected graphs in SVG fromat to disk at a user specified moment.

The configuration screen has completely been redesigned. The new screen allows the order of graphs to easily be changed. Also the order of the traces within the graphs can be changed. They can even be moved to a different graph.

On long running systems the object tracking plug-in could consume a large amount of memory for keeping track of the state changes of all objects. It can now be configured to forget about the most frequently changing objects and thus reduce the memory requirements. Usually such frequently changing objects are temporary variables or unused analog input ports that are not interesting for tracking anyway.

The plug-in now also offers a command for other plug-ins to provide additional data points. If, for example, you use rrdtool or some other method for storing certain values while HomeVisionXL is offline, you can easily make a plug-in that will feed the collected data to the object tracking plug-in. That way it can show graphs going back to before the moment the plug-in actually started.

Control plug-in version 6.3

28 April 2010, 22:08 CEST

By: Schelte Bron

Control plug-in version 6.3 fixes a couple of bugs:

  • Output port High and Low commands were reversed.
  • Fix error when changing window type.
  • Correct the values of special action variables (${!}, ${#}, and ${*}).
  • Fix ever increasing number of update requests in some situations when frames are used.

Debug plug-in version 2.2

27 April 2010, 21:49 CEST

By: Schelte Bron

Some small improvements have been made to the debug plug-in:

  • It is now possible to close the debug plug-in window by clicking on the X button in the title bar. This disables the debug plug-in.
  • Saving or copying the debug plug-in output no longer includes data from hidden plug-ins.
Also a bug with the "--- default ---" setting has been fixed.

Weather plug-in version 3.0

17 April 2010, 22:48 CEST

By: Ron Boston

The weather plug-in has been updated to "speak" the weather (using the wintts plugin) and to take advantage of the <HV:Run> and <HV:Image> tags in Web plug-in version 4.0. Other improvements and bug fixes also have been included.

Additions, changes and fixes of note:

  • The weather plug-in can now speak user-selected weather data using the wintts plug-in.
  • The weather plugin can be controlled via serial commands. This may be especially useful to control the time of day that weather info is spoken.
  • Two new commands, WeatherGet and WeatherGetIcon have been added for use with the web <HV:Run> and <HV:Image> tags, respectively. These two commands, used with the HV tags, allow weather data to be included in custom web pages.
  • Station IDs can now be 4 or 5 characters in length, to accomodate 5 character maritime station IDs.
  • Added a "Not Available" icon if weather conditons can not be determined, instead of a "null" icon.
  • Temperatures, wind speeds, and humidity are rounded to whole values.
  • Old data for any weather item is now cleared if the latest weather fetch did not include updated data for that item. Previously, old data was retained, which could be misleading.
  • Fixed an observation time formatting bug due to changes in XML reported date format.
See the weather plug-in help pages for details.

Web plug-in version 4.0

14 April 2010, 22:32 CEST

By: Ron Boston

The web plug-in has been updated to include HV tags that allow dynamically generated html code and images produced by other plug-ins to be inserted into custom web pages. Other improvements and bug fixes also have been included.

Additions, changes and fixes of note:

  • Two new HV tags, <HV:Run command> and <HV:Image type command>, have been added that allow dynamically generated html code and images produced by other plug-ins to be inserted into custom web pages. Command is a public command from any active plug-in and typically should return either html code or image data, which the web server will include into the html page containing the tag. It is expected that the weather and track plug-ins will support this capability in their next versions.
  • Added multiple-pass HV tag processing for the <HV:Run> and <HV:Include> tags so they may themselves contain HV tags, including other <HV:Run>, <HV:Image>, and <HV:Include> tags.
  • The web server can now be started or stopped via serial commands.
  • CGI: Tcl file types now execute within the built-in HomeVisionXL Tcl interpreter instead of requiring an external program.
  • Timer Load action can now set a new time in the value attribute (typically via an input box).
  • The built-in Timer Table now includes an input box to load timers with a time, using the new Load action.
  • HV tags can now be spread over multiple lines, if desired, for better readability.
  • HV tag HVAC now returns the full state info if no data args are provided.
  • HV tags Input and Output now return the Object label for the state if no mapping is provided.
  • HV tag Flag now returns the State string if no mapping is provided.
  • HV tag Timer now returns the full state and time if no data args are provided.
  • HV tag Var now allows multi-word formats.
  • HV tags PCDateTime, HVDateTime, HVLoadedFileDateTime, SE, and Sun now use the HomeVisionXL time-date format as specified in Preferences.
  • HV tags SE and PE now return the correct state string.
  • PATHEXT and COMSPEC environment variables in Windows are now preserved to prevent errors under certain conditions.
See the web plug-in help pages for details.

UPB plug-in version 1.0

16 January 2010, 12:41 CET

By: Schelte Bron

A change introduced in HomeVisionXL 2.0b14 caused a problem in the UPB setup/import plug-in. This has been corrected in the new version of the plug-in. The new release also presented a nice opportunity to finally bump the version number to 1.0.

For more information, see:

HomeVisionXL 2.0 released.

2 January 2010, 23:51 CET

By: Schelte Bron

After almost 2 years of beta versions, the time has finally come for the release of HomeVisionXL 2.0. This final release does have a few bug fixes on top of 2.0b18, so people using a beta version are advised to upgrade. Anyone still using version 1.15 is definitely advised to upgrade now. The new version can be downloaded from the main HomeVisionXL download page:

The most important fix since 2.0b18 is related to the plug-in wizard, where using the "Select updated plug-ins" button would cause an error message later on in the process of updating the plug-ins. Details of all fixes can be found on

I would also like to take this opportunity to thank everyone who has been using one or more of the beta versions and reported bugs or suggested new features. This has certainly helped to make HomeVisionXL better and more versatile. But even though development is out of beta, bug reports and feature request are still welcome.

Control plug-in and remote plug-in bug fixes

17 December 2009, 18:05 CET

By: Schelte Bron

New versions of the control plug-in (6.2) and the remote plug-in (2.1) have been released to fix a few bugs.

Control plug-in:

  • Reduce flashing effects when changing screens on slow hardware.
  • Fix problems with importing control files.
Remote plug-in:
  • Provide clearer debug report if remote client has wrong version.
  • Fix bug: User variables are no longer updated after disconnecting and reconnecting a remote client.

HomeVisionXL beta 2.0b18 released

6 December 2009, 17:52 CET

By: Schelte Bron

One small step for man, one giant leap for HomeVisionXL users on Mac OS-X. The latest HomeVisionXL beta, version 2.0b18, looks much better on the Mac. No more stray text strings all over the place. The sizegrip looks better too and doesn't cover parts of buttons anymore. And last but not least, the help system can finally also be used on the Mac. The program is now distributed as a universal binary for both PPC and x86 based Macs.

A new feature for all platforms is the possibility to individually configure which recognized serial strings to show or hide. Additionally, there are now controls for the fan and control mode on the thermostat control screen.

The plug-in wizard has become more intelligent. It will give a warning when you try to install plug-ins that are not designed for the platform HomeVisionXL is running on, or if a selected plug-in requires a newer version of HomeVisionXL.

See for more details.

PIC programmer plug-in version 2.0

29 November 2009, 14:37 CET

By: Schelte Bron

The latest version of the PIC programmer plug-in supports expansion boards based on 13 different types of PIC microcontrollers. It can now also keep track of the settings for more than a single self-programmable expansion board connected to the HomeVision expansion bus.

The MiniMFEB PIC programmer demo project has had a few modifications too. The most important one is that it now has a compile-time option to turn one of the analog ports into a pulse counting input.

Control plug-in version 6.1

21 November 2009, 21:29 CET

By: Schelte Bron

Control plug-in 6.1 has a couple of cosmetic improvements and fixes two bugs:

  • The wizard for input ports created IDs belonging to output ports
  • No interaction with the font selection dialog was possible

Web plug-in 3.0 released to support style sheets

8 November 2009, 12:04 CET

By: Ron Boston

The web plug-in has been updated to support the use of Cascading Style Sheets. Other improvements and bug fixes also have been included.

Changes and fixes of note:

  • Formatting for web pages is now controlled by a Cascading Style Sheet instead of embedded formatting commands in html pages. A style sheet provides more flexibility for the user to customize both the built-in object pages and their own pages. The style sheet has flexibility to support both the "old" and a "new" look, as well as the more "modern" frameless method for web page design or the original frame-based method. The frameless method is the suggested one to use, although users who have a significant investment in their own web pages based on the frame method can still take advantage of the style sheets. See the web plug-in help pages for details.
  • New tag <HV:Include filename>. This tag will insert the contents of the named file at the point of the tag. The tag can be used to supply "common" html data in multiple pages while having a single source manage for changes. Used in the new CSS based web pages.
  • Added a HomeVisionXL "favorite icon". The icon is used by browsers in the address bar, in tabs, and in bookmarks.
  • The plug-in now takes advantage of the time and date formats set in HomeVisionXL's Preferences instead of using its own separate setting. Valid for HomeVisionXL 2.0b14 or later.
  • Allow upper or lower case letters for X10 addresses in HV tags and forms.
  • Set Web Configuration screen to fixed size to preserve proper layout.
  • Pages with .htm extensions are supported.
  • Minor edits in help pages, in addition to CSS related changes.
  • If no custom lights are defined, the message "No custom lights exist" is shown instead of an empty table.
  • Restored missing header in the Event Log page.
  • Convert CR/LF characters in event logs to spaces to improve output format.
  • Gracefully handle socket errors that can occur under certian circumstances.
  • Fixed bug where the plugin fails in non-GUI mode.

New PIC programmer plug-in

27 October 2009, 21:39 CET

By: Schelte Bron

The PIC programmer plug-in is intended to be used to reprogram the firmware of home made PIC16F819 based expansion boards for Homevision, provided the board contains a special self-programming routine. This is not only useful for people who don't have a hardware PIC programmer, but also in situations where the board has been built into an enclosure or is otherwise not easily reachable.

More information, and an example of a DIY PIC16F819 based expansion board, can be found at

Control plug-in version 6.0

25 October 2009, 11:28 CET

By: Schelte Bron

Editing control pages has been completely changed in version 6.0 of the control plug-in. The new control toolbox makes it very easy to create widgets with a single click of the mouse. Or you can drag the mouse to immediately create widgets at the desired size. Moving pages around and duplicating pages can also be done very easily with the control toolbox.

You can now add scrollbars to individual control pages and include one page in a frame widget on another page. The new page wizard can help you to quickly build control pages for the selected Homevision object type. You can then copy and modify the widgets in any way you like. For first time users this is also a nice way to get some examples of how the plug-in can be used.

To also be able to make full use of the plug-in on a remote machine, the remote plug-in and client have been updated too.

Debug plug-in version 2.1

21 October 2009, 21:15 CEST

By: Schelte Bron

Version 2.0 of the debug plug-in escaped while there were still some sizable bugs left to be squashed.

Version 2.1 does also work with HomeVisionXL 1.15(e) again.

Debug plug-in version 2.0

18 October 2009, 22:48 CEST

By: Schelte Bron

Version 2.0 of the debug plug-in makes debugging your plug-ins even easier. With ever more plug-ins providing debug information, it became desirable to have the debug plug-in indicate which plug-in originated a message. Another useful new feature is that messages from selected plug-ins can be hidden.

With some plug-ins timing may be relevant. When debugging those, the new option to show timestamps with millisecond precision can come in handy.

For more information, see:

HomeVisionXL beta 2.0b17 released

16 October 2009, 20:58 CEST

By: Schelte Bron

HomeVisionXL 2.0b17 fixes some bugs that have managed to sneak into the code over time. One new feature provided by this release of HomeVisionXL is the ability to enable and disable automatic reading of temperature sensors from within your schedule and through the controler command control screen.

HomeVisionXL beta 2.0b16 released

6 September 2009, 22:28 CEST

By: Schelte Bron

Version 2.0b16 of HomeVisionXL primarily fixes a few bugs. It also reallows timer values of 240 hours or longer. To remind the schedule developer that such long timers may not work correctly under all circumstances, the hours value turns red whenever a value within the danger zone is being specified.

As usual, more details can be found at

HomeVisionXL updates on twitter

9 August 2009, 17:38 CEST

By: Schelte Bron

It's now even easier to stay up-to-date with new versions of HomeVisionXL or its plug-ins. In addition to the RSS feed, updates will also be announced on twitter ( from now on. Feel free to sign up as a follower of HomeVisionXL.

HomeVisionXL beta 2.0b15 released

26 July 2009, 15:08 CEST

By: Schelte Bron

Another batch of new features in HomeVisionXL 2.0b15:
This version adds the ability to patch lookup tables, extract the timestamps from the event log and display them in front of the action lines, embed object references in serial strings, and users can add their own notes to the help pages.

The notes the user adds to the help pages are stored in a file called notes.vfs. It would be helpful if people periodically send me that file so I can determine which information in the help system needs more elaboration and which information is plain incorrect.

Download HomeVisionXL 2.0b15 from

HomeVisionXL beta 2.0b14 released

9 July 2009, 21:54 CEST

By: Schelte Bron

There are two major new features in HomeVisionXL 2.0b14 and a few smaller ones. The two big ones are: Bulk learn mode for IR signals and a nesting level checker.

Bulk learn mode: It is probably quite common that the Homevision controller is not sitting next to computer screen. In such situations learning IR signals for a new piece of equipment used to involve a lot of running around from the computer to the Homevision controller and back. The bulk learn feature of the infrared toolbox now allows you to only prepare things once on the computer and then just sit in front of the Homevision controller and press buttons on the remote. If you have some text-to-speech system it can talk you through the process. Alternatively you can setup sound files to indicate whether to repeat the last signal or go on to the next.

Nesting level checker: The Homevision controller has a 16 level nesting limit for If-Then commands and Macro calls. Sometimes it can be hard to keep track of how many levels are involved when some actions call Macros that have several nested If-Then blocks that in turn call other Macros with more If-Then commands. But exceeding the maximum nesting level may have serious consequences for the proper operation of your schedule. The nesting level checker can help to determine danger areas by showing how actions call each other. It will display a warning sign for code paths that could theoretically be nesting too deep.

The new version is available at The change log on the same page lists also the smaller new features in this release.

Another new version of the object tracking plug-in

15 June 2009, 22:20 CEST

By: Schelte Bron

Some more small bugs were found and fixed in the object tracking plug-in.

Version 2.9 is now available for download using the plug-in wizard or at

Object tracking plug-in updated

11 June 2009, 17:39 CEST

By: Schelte Bron

The object tracking plug-in has a small new feature: Graphs can now be configured to be displayed filled. This can make the presented information clearer, especially for on/off type graphs frequently used for flags and I/O ports.

In addition a few bugs have been fixed that would cause corruption of the graph configuration when a single trace was deleted from a graph or when tracked objects were moved around using the HomeVisionXL reorder feature.

The plug-in can be downloaded or upgraded using the HomeVisionXL plug-in manager. More information about the object tracking plug-in is available at:

HomeVisionXL available in 64-bit version for linux.

24 April 2009, 17:59 CEST

By: Schelte Bron

For homevision users on the cutting edge of computer technology there is now a 64-bit linux version of HomeVisionXL available. It can be downloaded from

HomeVisionXL beta 2.0b13 released

21 April 2009, 20:39 CEST

By: Schelte Bron

The previous beta version of HomeVisionXL would slowly eat up memory. Because it should be possible to run the application 24x7, this needed to be fixed. Version 2.0b13 also introduces a few new features for plug-in developers and it fixes a number of bugs.

More details of the changes and the software itself can be found at:

Web plug-in CGI capability for MS windows.

9 April 2009, 21:10 CEST

By: Schelte Bron

Starting with version 2.7, the web plug-in can finally be effectively used to do CGI on MS windows too. Since MS windows determines the file type based on the file extension and it doesn't consider files with a .cgi extension executable, it was not possible to actually run any CGI programs with the old version of the plug-in. Version 2.7 will now also execute files with a .exe or .bat extension.

HomeVisionXL beta 2.0b12 released

19 March 2009, 21:30 CET

By: Schelte Bron

I don't know if it happens to other people too, but I regularly see the floppy symbol, indicating something in my schedule has been changed, and I can't remember what it could be. HomeVisionXL 2.0b12 has a new feature that allows the user to get a summary of changes describing the general areas that were touched. This should make it easier to decide whether to save or discard the changes. While implementing this feature the accuracy of detecting real changes has also been improved.

In response to a question on the homevision-users mailing list, the names of the security zones will now be included in the .hvx file. Also a few more virtual commands have been added.

For more information, see:

New tool for tracking holidays

16 March 2009, 21:56 CET

By: George Kerber

The hvWorkDay.exe program is now available for Windows to help HomeVisionXL users handle determining if Today or Tomorrow is a work-day or a day-off. This program reads non-work-day dates and date aliases from a config file and will SET or CLEAR a HomeVisionXL flag that your schedule can act on.

See for more information. The program can be downloaded at

HomeVisionXL beta 2.0b11 released

24 February 2009, 22:01 CET

By: Schelte Bron

HomeVisionXL 2.0b11 now also provides the system tray icon on linux. Also on linux, HomeVisionXL 2.0b11 introduces a D-Bus interface that can be used to control the application, even if run in command line mode. An overview of the HomeVisionXL D-Bus interface can found at

When hovering the mouse pointer over a string in the terminal emulator, a timestamp indicating when the string was received or transmitted will be displayed in the status bar.

The way the X-10 control screen works has been switched around. The old method was to select a command and clicking on a button for sending the complete or a partial command. Now you select if you want to send a complete or a partial command and then you click on a button for the command. This will normally reduce the amount of mouse clicks and mouse movements required when sending several X-10 signals.

Multiple consecutive lines of comments can now be edited all at once. When you double-click on a comment line in the action editor, any preceding or following comment lines will be included in the edit dialog. You can modify, add and delete lines. When the command window is closed by clicking on the OK button, the original sequence of comment lines will be replaced by however many lines were produced in the edit dialog.

Due to the quick edit functionality introduced in 2.0b9, the action editor context menu had become very crowded. This made it quite hard to find the normal functions amongst all the quick edit stuff. To allow editing to be done more efficiently the quick edit function has been moved to the toolbar. Users who have been using the 2.0b9 or 2.0b10 versions of the software may have to re-customize their action editor toolbar if they want to use this feature.

HomeVisionXL 2.0b11 includes many more new features and bug fixes. Details can be found at:

Comfort Security System plug-in released

3 January 2009, 13:34 CET

By: Schelte Bron

A new plug-in for HomeVisionXL has been released. The Comfort Security System plug-in will act as a bidirectional gateway between the Homevision controller and a Comfort Security System. The plug-in will forward all communication from the Comfort system to the HomeVision main serial port. Similarly, binary instructions can be sent from the HomeVision serial port to Comfort.

For more information, see:

Weather plug-in fixes

17 September 2008, 23:48 CEST

By: Schelte Bron

Weather plug-in version 2.0 had problems with paths containing spaces and it sometimes failed to locate the ftp package. These issues have been fixed in version 2.1 of the plug-in.

Weather plug-in update

15 September 2008, 22:35 CEST

By: Ron Boston

Version 2.0 of the weather plug-in is now available and adds access to additional web weather data, expanding coverage to include thousands of weather stations Worldwide. The user now has a choice of selecting either METAR weather data, which has worldwide coverage, or the original XML-based weather data (for U.S. and possessions),

See the updated weather plug-in summary for more details.

HomeVisionXL beta 2.0b10 released

9 September 2008, 22:57 CEST

By: Schelte Bron

HomeVisionXL 2.0b10 fixes a bug in the quick-edit feature introduced in 2.0b9. The bug caused corrupted code when quick-editing HomeVisionXL-only commands.

In addition the Windows version has a new option that will make the application withdraw to the system tray when the main window is closed. To actually terminate the program, the Exit command in the File menu or the Exit button on the main toolbar (if present) must be used.

HomeVisionXL beta 2.0b9 released

24 August 2008, 23:50 CEST

By: Schelte Bron

HomeVisionXL beta 2.0b9 is available. The Action Editor has undergone a complete overhaul. It now has undo/redo capabilities. You can quickly change one or more commands to other related commands through the context menu, like changing Light On commands to Light Off. You can comment and uncomment a range of commands. And on commands referring to certain kinds of objects you can now get tooltips showing the current value of the objects.

The X-10 Sequence screen no longer has a "Change This Signal" button that you need to press to actually change the signal. That now happens automatically and immediately. The serial command screen has a context menu to help you to easily enter a serial command string without having to lookup the exact wording in the documentation every time. The comment screen has a similar context menu for entering directives.

Finally in this version, you can customize the tool bars on the Main Screen and the Action Editor to give easy access to the functions you use the most.

For more details see the changelog on the HomeVisionXL 2.0 beta download page:

Revisiting the minor updates of August 1st.

7 August 2008, 11:55 CEST

By: Schelte Bron

For plug-ins to work well with both current and future versions of HomeVisionXL they should use [file normalize [file dirname [info script]]] when they want to determine the location of the plug-in. The previously suggested [file dirname [info script]] would sometimes produce a relative path, which suddenly points to the wrong place when the working directory changes.

Please upgrade if you are using w800 version 1.1, callerid version 1.5 or organize version 1.5.

Remote plug-in and remote client updates

3 August 2008, 23:37 CEST

By: Schelte Bron

The remote plug-in and remote clients have been updated to work with plug-ins making use of some version 2.0 features, like PNG image support and the newer tile version. In addition the clients will provide better diagnostics in case of problems and will allow the user to correct wrong server settings.

In addition some outstanding minor updates to a number of other plug-ins have been released:
Debug plug-in: Allow plug-ins to specify colors for their reports.
Organize plug-in: Correction in determining the next event.
Xmms plug-in: Publish player status for the control plug-in.

Minor update to several plug-ins

1 August 2008, 11:46 CEST

By: Schelte Bron

A number of plug-ins was making use of the fact that during initialization of the plug-in the [pwd] command would return the directory where the plug-in is located. This feature was undocumented and is about to be changed in the next version of HomeVisionXL.

The correct way to determine the location of the plug-in is to use [file dirname [info script]]. In upcoming versions of HomeVisionXL [pwd] will always return the actual current working directory for HomeVisionXL.

The plug-ins that were incorrectly using [pwd] in this way have been corrected.

Track plug-in update

1 August 2008, 10:50 CEST

By: Schelte Bron

There was a small correction to the track plug-in to allow it to work again in combination with HomeVisionXL 1.15. Versions 2.4 through 2.6 would give no problems when used with HomeVisionXL 2.0, but produced an error in older versions. This has been corrected with version 2.7 of the plug-in.

VoIP plug-in update

31 July 2008, 12:33 CEST

By: Schelte Bron

A new version of the VoIP plug-in is available. The new version now includes the external packages needed by the plug-in. It also adds the possibility to configure a display name for each account.

When recording speech to a WAV file, a link with a fixed name per account will be created or updated, pointing to the last file recorded for that account. This makes it much easier to send the file as an attachment using the sendmail plug-in. This function will only work on filesystems that support the use of links (all unix/linux filesystems or Windows NT/2000/XP/Vista on NTFS drives).

Voice over IP plug-in released

29 July 2008, 15:51 CEST

By: Schelte Bron

A new plug-in for HomeVisionXL has been released. The voice over IP plug-in will allow you to call your homevision and get it to report on the current state of your house. You can create actions in your schedule that can be controlled using the keypad of the phone. It is also possible to instruct homevision to call your mobile or office phone (or both) and inform you of the situation when certain events occur.

Another possibility is to give your homevision sophisticated answering machine capabilities. It could play different messages depending on the time of day, or the person calling. The message left by the caller can be saved to a WAV file, which makes it easy to send it to your mailbox as an email attachment.

All you need is a VoIP account that uses the SIP protocol and the new voip plug-in. For more information, see

Yac plug-in update

27 July 2008, 12:08 CEST

By: Schelte Bron

Version 1.3 of the yac plug-in is now available. The only changes compared to version 1.2 are cosmetic.

When the video mode is something other than "macro", the macro selection is meaningless. For this reason the macro selection option is now disabled unless the "macro" video mode is selected.

The "Cancel" and "OK" buttons would not appear centered when the plug-in was used with HomeVisionXL 2.0. This has been corrected.

HomeVisionXL news feed launched

26 July 2008, 17:42 CEST

By: Schelte Bron

There is now a RSS feed for HomeVisionXL news available. This makes it easy for people to keep up-to-date about new releases of HomeVisionXL and related tools and plug-ins. The RSS feed can be accessed through the RSS icon on the HomeVisionXL news web page.

HomeVisionXL beta 2.0b8 released

26 July 2008, 15:19 CEST

By: Schelte Bron

HomeVisionXL beta 2.0b8 has been released. Among other new features and bug fixes, this version fixes the problem that would occur when downloading a schedule after reordering certain types of objects and subsequently adding new objects of the same type.

For more details see the changelog on the HomeVisionXL 2.0 beta download page:

Control plug-in update

26 July 2008, 15:08 CEST

By: Schelte Bron

The control plug-in has three new commands that can be used in the actions of a button:
1. ImageRefresh - Check for changed images
2. EditMode - Switch to edit mode.
3. AccessCode - Allow the implementation of a code lock.

The plug-in now automatically generates tables with the names of objects. This can help to reduce maintenance work on the control screens. When an object name is changed in the schedule it will automatically be picked up by the control screen.

The packaging mechanism has changed. When saving control screens as a .hpz file, the contents will be the same as it used to be. But when saving as a .zip file, the package will not contain the plug-in itself and the file containing the screen layout will not be renamed to default.ctl. A package in .hpz form is intended to be used with the remote plugin, while the .zip form is ideal for copying control screens to another PC or sharing them with other users.

Amarok plug-in update

26 July 2008, 12:52 CEST

By: Schelte Bron

The Amarok plug-in has been updated to work with KDE4. Shutting down the PC can now be done using either dcop or dbus.

There is also a new serial command for starting playback if not already playing. Contrary to the normal play command, it will not restart the current track if playback is already in progress.

Another new feature is the option to automatically delete tracks from the playlist when the track has a score below a user specified threshold and the plug-in receives the command to skip the track.

Weather plug-in update

25 July 2008, 12:24 CEST

By: Ron Boston

The national weather service made a change in their weather data URL. The old plug-in now fails to retrieve weather data.

I've updated the plug-in to version 1.3, to use the new URL. In the process of making this change, I modified the Data Source Configuration tab to include a way for the user to change it just in case something like this happens again. The current URL is also stored in the .ini file now.

Last modified: 11 December 2022, 11:23 CET