XTension Version 9.5.1
Released 2/3/2023
Download Universal Binary for all Supported OS versions; XTension. v 9.5.1 (build 1069)
Minimum System Version for this release is OSX 10.10 but not all plugins will function properly prior to 10.13. Please start the necessary work to upgrade to at least 10.13 or recommended 10.15 or newer. At some point in the near future it will no longer be possible for me to support anything prior to 10.13 and the video plugins will never work prior to Catalina.
Rosetta Note: While the entirety of the main app and all more recent plugins are Universal and run natively on Intel or Apple Silicon there are a few older plugins including the W800 and CM11 that are still Intel only. They run fine under Rosetta and you’ll never notice the difference. The only issue is that Rosetta is not included by default on the new Apple Silicon Macs. You’ll need to first run any Intel app, or do a get info on any app at all and select “open using Rosetta” then the OS will tell you that you need Rosetta and would you like to install it now. Once you complete that those plugins will run normally.
9.5.1 Change Log:
- NEW: MQTT Client Plugin for getting info from, or sharing info to, any MQTT Broker.
- NEW: ESPresense Support in the new MQTT Client Plugin.
- NEW: Control By Web plugin that makes outgoing connections rather than using the inter device communications protocol. The original Control By Web plugin is unaffected and still included in the package.
- NEW: If there are important messages generated during startup they will also display in a new Startup Messages window. This way problems that would otherwise be lost in a very long log output are more easy to see and then deal with. This was build first to support the checking for multiple-interface collisions see next item…
- NEW: During database load any collisions in Multi-Interface setups will be logged and also written to the new Startup Messages Window. In order for multiple interfaces to work there must not be a unit actually receiving messages at the same address on the extra interfaces. This makes it easier to find this situation and fix it.
- NEW: The new Video system now inserts the time stamp and any other messages you add for the reason for recording to the closed captioning track of the recorded video snippet. This is superior to just overlaying the video as it does not obscure any of the frame as it can be moved around in the player or even turned off if you do not need to see this.
- NEW: new Video system now will display any events you sent as the reason for a recording on the original Web Interfaces which brings this into line with the way the original Video Pitcher system worked.
- NEW: In the Video Encoder plugin whenever a recording is complete and post processed or encoded and ready an event is called in the plugins interface script passing you the name of the video stream it came from as well as the full path to the file so if you wish to script uploading them or doing anything else with them it is now easier to do so.
- NEW: If you’re using the “live recording” option that doesn’t use the Video Encoder separate process the above event is sent to the video plugin’s interface script instead. So they can also be handled in the same way, just in a different place.
- NEW: The hubitat plugin now supports getting the data from objects with the attributes of “rate”, “valve” and “totalConsumptionToday”. This was for the Moen FLO Smart Shutoff and water meter device but will work for any device that uses those keywords/topics for it’s data.
- NEW: Added a “SendRaw” handler to the Arduino plugin so that in addition to the regular Unit commands you can send any arbitrary data to your device as well.
- FIX: Units added later to a list shared via home kit will no longer be at risk of getting a Duplicate Accessory ID error.
- FIX: If you have units that are already suffering from the above problem there are new script functions you can use to find and correct the errors.
- FIX: Fixed an issue that would cause a slight increase in CPU usage in the MJPEG Camera plugin each time it reconnected the stream.
- FIX: Fixed an issue with the Amcrest Camera API plugin that would cause it’s CPU usage to go to 100% after a stream connection was lost and restarted.
- FIX: Improved the syncing of the database to the plugins fixing an issue that sometimes caused an error during the load that could have stopped any units after the error from loading at all.
- FIX: The available ram that is logged when XTension is starting up was calculating incorrectly displaying what looked like just a few meg rather than the correct value. It is not logged properly and is therefore useful again.
- CHANGE: Calling plugin registered scripting handlers will now generate an error in the script if you call one that does not exist or misspell it or something similar. Previously such errors were lost silently.
- FIX: When doing the “log debug data” for a unit the thisUnit value is set properly letting it show up when filtering the log for output from that Unit.
- FIX: Fixed an issue loading Unit Icon files that were not JPEGS. All system supported graphic types are again working.
- CHANGE: When setting the enumerations for a unit value the individual comma delimited entries are now trimmed of any leading or trailing spaces when they are saved, It is common to type a list with spaces in it that you don’t actually want in the value like “one, two, three” which would have resulted in the value being “ two” now when saving the Unit the values are fixed so that the previous would become the correct “one,two,three“
- FIX: Fixed a typo in the debug logging in the Phillips Hue plugin that caused a second error while trying to log useful data about a first one. The error messages are now potentially useful instead of being an error about the error handling.
- CHANGE: if you select the “Show More Information” menu item from the gear menu of the Interface List window the CPU usage of each plugin process is calculated for all running plugins. This makes looking for something having a problem or stuck in a loop where it shouldn’t be easier. This is not a completely trivial extra load so the data is only gathered if you have the list window in the Show More Information state and not in the normal more compressed state.
- FIX: The camera API plugins are now python compiled before adding to the application bundle during the build process. They always worked fine but they would have taken longer to load as they needed to be compiled by the python interpreter each time and the compiled data could not be saved as they are inside the signed portion of the application so doing so would break the developer signature.
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.