XTension Version 9.4.36
Download for all Supported OS versions; XTension. v 9.4.36 (build 1036)
NOTE: This disk image no longer includes the older legacy plugins that will not be updated for newer OS versions. If you still need to run the CM19, CM15, ZTroller or the various Smarthome X10 interfaces please download the legacy plugins package from here and install the ones you need via the “Install Plugin” menu item of the “Database” menu.
Minimum System Version for this release is OSX 10.10 but not all plugins may function properly prior to 10.13
Maximum supported version is Big Sur but some problems and cosmetic issues remain when running on Apple Silicon.
This version is built with the latest compilers and libraries available and should be able to run on Big Sur with minimal issues, though some remain. and you should report them to be if you are crazy enough to be running that on your server ;)
Known issues: The DMG file’s volume name claims that the version is 9.4.21. But the version that is actually included is 9.4.35. I’ll get that sorted out before the next release.
9.4.36 Change Log:
- NEW: Caldav Plugin. This can connect to regular caldav servers like Google calendar and also Apple Calendars. By using the network connection to the server we avoid having to go through the goofy rigamarole of continuing to update the permissions of the app to access the calendar directly but it does also require that you go to your apple id settings page at iCloud and create an app specific password in order for it to work. You cannot use your master apple id password with this. Instructions are on the wiki page at: CalDAV/vCalendar Event Plugin This plugin lets you create any number of Units that contain a calendar name and a relative date range from the moment that they are checked. If a calendar event matches the name that you enter during that time frame the unit will turn on. If no event matches the name in the given time frame then the unit will be off.
- NEW: Enumerated Unit Values. This version adds the ability to set and get values of a unit as enumerated strings. This is especially useful for things like thermostats and also house mode type units. Instead of remembering that cool is value 2 for a thermostat mode unit you can simply pass the string of that value to the set value command in order to set the value to “cool” additionally a new verb Enumerated Value Of is now available to return to you the string of the value rather than the numerical value that is used under the hood. In order for this to work it is required that you, or the plugin you’re talking to, setup the comma separated list of potential values. Previous to this release this field was used to setup the popup menu for a unit in the unit list windows. It is now also used for this. See also the changes to the Set Value Of verb that now allow you to pass the string. If no enumeration is found for the passed string an error is returned to your script. This is something that I’ve wanted to do forever but it was finally necessitated by the fact that the new Hubitat uses different values for the thermostat mode settings than the Vera plugin did. Switching to using the strings of “heat”, “cool” and “auto” (as well as others as supported by the specific devices) you get around having to change the indexes as you switch to different devices.
- NEW: The Hubitat ZWave plugin now works properly with Thermostat and potentially other units. I believe there will still be issues with door locks and garage door devices but will try to tackle those in the next release. Also know that notifications that you create for units in the Hubitat configuration for the unit will appear in XTension as separate units that you can turn on and off to activate or deactivate the specific notification display. This definitely works for the Innovelli switches as well as the WS200 switches from Home Seer and may work for others. If you find other things that do work or do not work please let me know.
- NEW: A new debugging option for people with problems saving the database way down in Apple’s code. A new preference option to “dont thread the database save” is available on the general tab of the preferences window. If you turn this on the database saves will be done inline on the main thread as they were in the distant past. This will cause the app to pause for however many seconds it takes to save the database. It will also turn off log caching and turn on verbose logging so it will take longer than the threaded save does but if a specific script is causing a crash or other problem it will definitely be in the log which unit or script it was working on when the problem happens. Charlie this one is for you! Turn this on and let me know what it says.
- The RFX plugins will no longer log truncated packets unless the interface is in debug mode. There is still some work to do here but some folks were getting a lot of logging after the last change to at least attempt to process such packets. I have some more thoughts on this for the next release but this at least will stop spamming your log with so many goofy and unhelpful log lines.
- The Hubitat plugin will no longer log long and unhelpful stack traces when a command is received for a database unit that does not have an address. It will instead make a single log line of the data for that unit that you can send to me for proper support. The first I’ve found in testing was the sunrise and sunset commands from the hubitat. As of this release they are logged as a long JSON string to the log, but at least just one line and they only happen once a day. If you find many more of these in your system please cut and paste them from the log into an email to me directly so I can properly support them. A future version of the plugin will at least create a daytime unit for the hubitat so that you could use it if you wished separately from the same functionality in XTension.
- FIX: The Weeder plugin now recovers better from errors during the initial communiucation with a device. Previously, especially with the digital output devices, if it dropped a packet or had trouble talking to one during the initial configuration it would never be able to actually start talking to that device. That is now fixed and if a device is not available immediately at startup it will continue to try to configure it until the device becomes ready. George, this one is for you!
- FIX: Units created automatically from smarter hubs like the Vera and the Hubitat and any others that send UTF-8 glyphs as part of the units name will now be properly encoded before creating the unit. So if you use diacriticals or other newer characters in the names that come from those devices they will display properly rather than as the question mark in a box character that they displayed before.
- PLUGINS: Many more internal plugin handlers have been moved to the new abstracted plugin interface and when they are all done I can actually start integrating some alternative plugin languages and get us options beyond the slowly dying apple script. This won’t affect anyone directly and you shouldn’t notice any difference about it at all. Let me know if new strange errors crop up in the log when doing regular scripting actions.
- PLUGINS: List replies are now supported for the new abstracted plugin command object. This also should not affect anyone directly and is strictly an internal change. If strange scripting things happen that didn’t before this update please let me know. These last 2 changes are the best tested of any of these though having run on my system and my testing suits for most of the last month. I don’t expect trouble.
- FIX: The Security Spy plugin has been altered to more reliable keep the connection to XTension open. Previously especially on less busy connections it may have been thought to be unresponsive and be quit and restarted by XTension. This should no longer happen, but did not fix the problem for everyone, Specifically Jerry… So if you’re using this plugin it will be more reliable now, or at least spam your log less than it did before as it was restarted. But it may not. Please let me know if any problems continue or are improved.
- The RFXt plugin somehow never got on the convert to 64 bit list and so was left out of the catalina and newer versions. It is now included in this package but only lightly tested. It shouldn’t be any different but please let me know if there are any issues with it.