Skip to content

Releases: kevinkahn/softconsole

Last Bullseye Release

05 Nov 19:16
Compare
Choose a tag to compare
homerelease

Handle int as a representation of True/False

V3.10.2 Minor bug fix release

27 Apr 01:47
Compare
Choose a tag to compare

Minor release. Adds fan domain to HA since HA now makes Inovelli fan switches fans instead of lights. Adds MQTT commands for set/get vars for eventual use. Fixes various minor bugs.

V3.10.1

25 Mar 16:56
Compare
Choose a tag to compare

Minor release to allow correct handling of HA hubs that use customized port instead of 8123. Also adds rate limiting of control traffic for HA dimming similar to that for ISY dimming. Adds support for multiple parameters for HA runprog key calls. Also includes various minor bug fixes and internal performance improvements.

V3.10 Dimming support for HA and ISY

23 Feb 18:44
Compare
Choose a tag to compare

Significant release to add capability of using long presses and gestures on the touchscreen. HA light domain nodes (dimmers) and ISY nodes of type 1 (dimmers) now have the added feature that holding a long press on their screen buttons will bring up a brightness slider. Moving your finger along the axis of the slider will adjust brightness for the light. Note that due to differences in how Insteon/ISY and HA/Zwave handle dimming the physical responsiveness of HA nodes may look quicker at the light itself. This is due to rate limiting of the Insteon network traffic. Tapping OK will return to the parent screen with the new brightness while tapping Cancel will return but return the brightness to what it was. This feature also works for ISY Scenes via the console's scene proxy support so that the common idiom for implementing 3-way lights via a set of switches in a scene is supported as one would expect. Note that on capacitive touch screens this works very well and very responsively. Resistive touch screens generate a huge amount of "noise" in the form of non-existent touch/release events while holding down and other similar random things. The code has a lot of "dejittering" for all of this with the result that the resistive screens may seem a bit more sluggish in their response to finger movement, but in my experience still quite acceptable. The slider displays by default in the "long" direction of the screen but can be overridden, see the usage notes. In addition to these changes, there is now an alternate way to bring up the maintenance screen via a single diagonal gesture from the upper left to the lower right of the screen. (Note: if the screen is dim you do first need to awaken it with any touch.) Note that this has required a significant revamp to the touchscreen handling code so if you do see any apparent weirdness please report it. Also, given that the console can now see length of touch and movement, any suggestions for other uses of that capability are welcome. Finally, in the event that you do see strange problems with touch, you can for now revert to the previous touch driver system by creating an empty file in /home/pi names .forceoldtouch.

V3.9.3 Fix install for new Adafruit scripts

02 Feb 01:38
Compare
Choose a tag to compare

Minor release to allow install to work with the new Python version Adafruit install script.

V3.9.2 Minor bug fixes

17 Jan 19:15
Compare
Choose a tag to compare

Mostly fixed minor bugs. The console had expected incorrectly that there would always be folders defined in the ISY and that there would always be variables and scenes defined. This is fixed in this release to allow these to be empty. Also, rather than shutting down and restarting if the console can't initialize a hub, it now replaces the hub with a dummy hub that allows the console to start. This caters to a situation I had where one of my hubs became (semi) permanently unavailable and as a result consoles that has references to that hub wouldn't start to allow access to other working hubs. To reconnect to the off line hub the console does need to be restarted when that hub again is up.

Some minor functional additions: this release supports scenes on the Home Assistant hub. Note that HA scenes can only be turned on (unlike ISY scenes). A console button corresponding to a scene issues the corresponding HA scene.turn_on command to the hub. Previously, when displaying the log via the maintenance screen you needed to scroll page by page to either the top or end of the log in order to exit the display. Now a double tap on the top half of the log screen goes directly to the 1st page of the log and a double tap on the bottom half goes directly to the last page. From there a single tap exits. Finally, the "Clear Matching Error" option on the network command screen now behaves more usefully in that it issues the command to all consoles and the match itself need not be completely identical for the match to work. It need only be "close" thus handling messages that hit all consoles that differ only in the address listed for some Python item.

Note: My own ISY system is currently down after a power outage and it will be a while before I can restart it since it is in a different location. Thus, the ISY changes in this release have had more limited testing than I would normally do. If you encounter any significant errors, you can revert to the previous version by moving the "previousversion" directory in consolestable back up to be consolestable. And of course report the issue to me so I can deal with it.

Minor bug release

10 Dec 01:51
Compare
Choose a tag to compare

Minor release with some bug fixes. Also a lot of internal restructuring for code maintenance purposes. AS of this release all screens are now clocked. The Clocked parameter is still honored to set a clock rate for the screen other than 1/sec (fractions of a second are supported). This release also supports alerts based on HA attributes and completes the set of comparison operations available for alert tests. Finally, it reworks the timing of Weatherbit weather fetches to reduce the occurrence of "service unavailable" messages. It turns out the WB uses some interal, undocumented algorithm to rate limit weather calls even if you are below your daily cap. This version attempts to spread fetches being made, even across multiple nodes on a network, so as to at least reduce to probability of hitting this limit.

File watch alerts and enhanced VARKEYs

19 Nov 17:26
Compare
Choose a tag to compare

V3.9
This release has quite a few changes/enhancements:
FileWatch alerts and screens: It is now possible to set an alert that watches the modified timestamp on a file and triggers an alert when it changes. This is most useful in conjunction with an improved capability for alert screens. The message on an alert screen will now interpolate a store variable. The FileWatch alert will reflect the file contents into a store variable in one of two ways: either as a single store value that holds the entire file or as a set of variables within the FileWatch store that will contain the values set in the file. A simple example of use would be to generate an alert screen that displays the file contents when it changes. It is possible to clear such an alert automatically after a given time interval.

VARKEYs have been enhanced to be of more use in interacting with hubs. They now provide an option to invoke a program on the hub when pressed, and for HA hubs which allow parameters, pass a parameter. Their display options have also been enhanced. The net effect is that it is possible to construct a multibutton set of keys on a screen to do things like control a fan with speeds.

Related to the above, access to attributes of entities in HA can now be made via the store associated with the hub, e.g., HASS:light.ceiling:brightness would evaluate to the brightness setting of the light.ceiling entity in the HASS hub.

Weather fetching has been changed to operate autonomously for all defined locations. Previously, fetches were initiated when a screen needed them and there was not recent weather. Because it is now reasonable to use weather information in places other than weather screens, the console now simple updates weather whenever it expires, using the cache mechanism if multiple consoles are in use.

A minor addition is to allow semi transparent navigation keys if a picture screen is used as a regular screen rather than as an idle screen which improves appearance.


Note: This release requires Python 3.7 or later


Photo Frame Screen

21 Oct 19:29
Compare
Choose a tag to compare

V3.8
This release adds a new screen type "Picture" to the console that allows the console to also act like a photo frame. It supports a directory mode that sequentially displays jpg files found in that directory to the screen while that screen is active. The directory is monitored for changes and those are reflected in the displayed photos within a few cycles. It also supports a single picture mode that displays only a single jpg which is monitored for changes. In this mode changes are reflected to the display within 3-4 seconds and so is suitable for use if the desire is to display changing screen captures or the like. See the description in the usage notes for all the details on how it works.

The release also adds support for username/password for MQTT which was previously missing. It adds an advanced network node command to the maintenance screens to clear retained knowledge of a dead node from the MQTT broker. It also will handle MQTT server down situations more gracefully. Finally, it adds a small developer oriented feature to enable personalized operations to be done on every console boot. See the Developers Notes section of the usage notes for more information.

Soft screen rotation and streamlined install

11 Oct 23:17
Compare
Choose a tag to compare

This release primarily adds support for soft rotation of the display that is required for the Pi4, at least when used with the 7" Pi display. Pi 4 display drivers don't use the frame buffer in the same way as previous models so they may not honor rotations set at the system level. This results in the native desktop displaying in one orientation but the console displaying in another. The usage notes explain how to set the screen type to use soft rotation and the installation scripts now add support for this. (Note this has been tested with the Pi 7", the 28c PiTFT, and the 35r PiTFT screens at this point but should work generally.) This provides general purpose flexibility to arrange the console screen orientation as you like easily (and since it is set at console start changing the orientation is also very straightforward).

The console install scripts have been streamlined in this release to avoid the second reboot that used to be required. This should somewhat speed up installation although the bulk of the time is still in updating the base system to current.

The release also fixes a bug when an alert screen gets invoked while in Maintenance mode, a bug in MQTT status handling. It also reworks Home Assistant restart code to insure that states are correct for changes that happened while the console was offline. Finally it again adjusts the use of Adafruit install script use to handle their changes related to a 28c PiTFT.