INTERACT FORUM

Please login or register.

Login with username, password and session length
Advanced search  
Pages: [1]   Go Down

Author Topic: Engen 1.0.22 -- Available Here  (Read 4269 times)

JimH

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 72438
  • Where did I put my teeth?
Engen 1.0.22 -- Available Here
« on: August 10, 2016, 05:38:17 pm »

This is the latest version of Engen for Windows.  Please post bugs here.  Please start a new thread for anything requiring discussion. Non-bug posts will be deleted.

Download:
http://files.jriver.com/engen/channels/v1/beta/jriot/Engen10022.exe

History:

1.0.22 (8/10/2016)

1. Fixed: Previous build pulled because some dependencies in the Python code were not satisfied in the pyinstaller Windows build.
2. Changed: More compact Engen interface homepage.
3. Changed: Rename rest_secret.txt to session.key.

1.0.21 (8/8/2016)

1. Changed: Sort nodes alphabetically on web interface.
2. Changed: Larger screen, more nodes per row. Remove some labels from UI.
3. Fixed: Got all the links in alpha000 working again. Recent changes broke about half of them.
4. Fixed: Some of the node set/view links were broken due to unicode conversion problems.
5. Fixed: The example links used an obsolete method to address devices with (for example) multiple outlets.
6. Fixed: We could not tag devices.
7. Fixed: There were a number of problems defining groups and scenes.
8. Fixed: We could not restore groups/scenes from the database.
9. Fixed: We could not restore scene color.
10. Changed: Arranged things so that an unexpected message from a device causes us to immediately poll the device.  This change allows us to test battery devices we don't support yet.
11. NEW: Added the Association and Application Status command classes. We now poll for both.  We now support the most useful Association command classes.
12. Fixed: Fixed a problem with set_tag().

1.0.20 (7/27/2016)

1. Fixed: A minor crash in remove_node().
2. Changed: Placed UZB version and capability information where dump_nodes() can find it.
3. Changed: The name set_node_tag to set_tag.
4. Fixed: Some bugs in path_set.
5. Changed: Added set_tag() to user.py.
6. Fixed: Fix /api/v1/nodes/:node REST call.
7. Changed: Added code to support zwave scenes and did massive cleanup based on the recommendations of pycharm.  Bugs crept in because of the clean up; I found many, but it is likely some remain.
8. NEW: Added support to fetch and update associations, scene controller configuration, and scene actuator configuration.  In English, can now activate lighting scenes on devices that support this, using a button controller.
9. NEW: Its now possible to configure the above functions through the web REST API, using the path_get and path_set functions.  The long term goal is to make many more functions available to REST.
10. Fixed: A bug that caused "unexpected message" to appear in the log when it should not have.
11. Fixed: A number of problems in the new code to give priority access to battery devices.
12. NEW: A set_all(value) convenience function in the user module that uses broadcast.
13. Changed: Improved scheduling of scene_configuration messages, putting more intelligence in the low level code, and removing it from higher level code.
14. Changed: The code is increasingly stable at high load, and it makes more efficient use of the cpu.
15. Changed: Modified a few convenience routines to do more, and consequently removed a bunch of repetitive code where the convenience routines were used.

1.0.19 (7/22/2016)

1. Changed: Scene support is now about halfway in. It has a way to go before the UI can view and configure it.
2. Changed: Most of the scene protocol encoding/decoding routines are done.  As a proof of concept, it's now possible to type in commands and make a button controller turn lights on and off using scene and association commands.
3. Changed: Polling of all scene data in all devices can require thousands of data points.  The special scheduling and fetching required is now done.  In this commit, the timing was improved and probes were put in to support further adjustment.
4. Changed: There is a new priority function in polling that will allow us to give priority to battery devices and battery controllers when they need fast service.
5. Changed: The code runs with multiple UZBs, but only superficial tests have been done.
6. Changed: Rewrote multicast.  Much smarter now.
7. Changed: Queries now have a configurable sleep interval, which evens out the load on the UZB and makes it more reliable.
8. Changed: Added tracing to all low-level commands in zbasic.
9. Changed: Added a termserver function to trace and stop tracing nearly any method.
10. Changed: Rewrote multicast so it multicasts only once, instead of once for each node.
11. Changed: Changed a bunch of lognames to be consistent with the file where they appear.
12. Fixed: Fixed add_node to preserve the types and command classes returned by the UZB.
13. Fixed: mfg_id so it doesn't get an exception after a comm error.
14. Changed: Data is now fetched for the scene controller.  Still need to test writing the scene controller.
15. Changed: Improved documentation page to make it more up to date and informative.

1.0.18 (7/13/2016)

1. Changed: Engen is now highly insensitive to offline devices and misbehaving devices.  It polls all devices at a near constant rate of 10 seconds, regardless of the number of devices configured or currently active.   It takes something like 60 seconds to stabilize after startup, and perhaps 10 minutes before it fully adjusts for any bad devices it finds.  It has a number of mechanisms to detect and adjust for bad nodes.
2. NEW: You can monitor the health of devices with the very obscure command:   dump_status(nodes) where "nodes" can be blank for all nodes, or you can put in a list of nodes to see only those.   dump_nodes() includes the same information under "status".  The output is a bunch of statistical counters that summarize recent error trends and estimate the reliability of all attached devices.

1.0.17 (7/7/2016)

1. Changed: Changed node and group names to accept any string that has one non-digit character anywhere in the string.
2. Fixed: The UZB was getting wedged when too many requests were made too fast, and there were a bunch of nodes off-line.  Put in a kludge for now to keep that from happening.  A better fix is in the works.
3. NEW: Added some scene-oriented command classes message handlers.

1.0.16 (7/6/2016)

1. Fixed: Bug in auto-updater.  It wouldn't remember that it had already installed the available update.

1.0.15 (7/6/2016)

1. NEW: Display subnode switches (e.g. power strips)
2. NEW: Support renaming devices.
3. NEW: Buttons to turn all devices On/50%/Off.
4. Fixed: Some problems in path_set with multichannel devices.
5. Changed: Restore Python 3.x support.

1.0.14 (6/30/2016)

1. Changed: Windows Service updated to support new Python web server using Flask & Tornado packages.
2. Fixed: Auto update could fire up two installer programs simultaneously.
3. NEW: New REST web service and interactive website with lots of new functionality.
4. NEW: Generate secret key for local https certificate dynamically.
5. NEW: Got the REST variable path GET stuff working.  The PUT is still untested.

1.0.13 (6/27/2016)

Internal testing build.

1.0.12 (6/22/2016)

1. Changed: Removed Stop/Start Service commands from menu.  The Engen server is now stopped when the tray application is exited.
2. Changed: Wording visible to the user is now simply 'Engen' rather than tacking on 'Server' or 'Service' to the end.
3. Changed: Tray icon can now be right-clicked or left-clicked to show the menu.
4. Changed: Wording of bottom menu item changed from "Exit program" to "Quit".
5. Changed: Changed the zwave byte ordering routines to use big endian rather than little endian. This got the manufacturer description working but has the side effect of changing the database name.
6. NEW: Manufacturer id is now showing in dump_nodes and list_nodes.
7. Changed: Regenerated sigma_classcmd to eliminate unneded and irritating redundant versioning information.  Added a new utility to generate this one file.
8. NEW: Added the scene actuation and scene actuator config command classes.
9. Fixed: Fixed duration encoding in zbasic.py.

1.0.11 (6/21/2016)

1. Fixed: The last build was not signed properly.
2. NEW: send_cmd now does multicasting.
3. NEW: zgroup.general_increment smoothly increments/decrements bulb brightness.  Uses multicasting w/o ACK.
4. Fixed: Fixed a startup hang in zman.py that occurs when you have no database on first startup.
5. Fixed: Fixed things so an unexpected exception during startup will terminate rather than hang the server.
6. Changed: Eliminated the no longer used --test parameter to main.py.
7. Fixed: Fixed node name addressing so "switch.A" now properly accesses the first endpoint on "switch".
8. NEW: Added zvar.py which will support REST variable addressing. Partially tested at this point.

1.0.10 (6/16/2016)

1. NEW: Added a simple web server.  References to port 52110 that do not begin with /alpha000 and end with *.htm or *.html are interpreted as file names in the server directory to be returned as web pages. The directory can be changed with the --web command line option.
2. NEW: Added the ability to load/store the database through the web. A GET to alpha000/database will return the contents of the database in JSON format.  A following PUT to the same URL will restore it.
3. Fixed: A crash in set_node_name(), and one in add_node().
4. Changed: The database format is greatly simplified from its former self. Information that can be learned from the network is no longer stored in the database.
5. Changed: list_nodes() to optionally take node arguments.
6. NEW: Created dump_nodes() which works the same, but shows all information about the nodes. show_node() is gone.
7. NEW: Added set_log_level(name, level) which allows you to change various log levels while the program is running.
8. Changed: A ton of internal restructuring, which hopefully will not be visible to the user. These included an internal trace facility, and a better way to display binary data in logging messages.

1.0.9 (6/4/2016)

1. Fixed: The assert() problem that was showing up at Jim's home.
2. Changed: Added some code to log top-level exceptions, like the one that Jim saw.  When such an exception occurs now, it is logged, and the server is automatically shut down.  (so you will go look at the log).
3. Changed: Changed zdriver so it now sends ACKs to the UZB out of the receive thread, instead of first forwarding them to the transmit thread. This improves response time, and appears to have fixed the CAN problem under high load.  We can now poll at about 10 msgs/second w/o difficulty.
4. Fixed: A problem in node renaming. Previously multiple nodes could get the same name. The fix prevents that from happening, and fixes your database if the problem previously corrupted it.
5. Changed: Added "Updates" item to tray application menu.
Logged

drmimosa

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 690
Re: Engen 1.0.21 -- Available Here
« Reply #1 on: August 11, 2016, 08:52:41 am »

Hello, I installed version 22 last night and it would not work at all. After the install,  I get an error message box after Engen tries to run as a service that says the program can't communicate with the Z-Stick.

I tried a full uninstall and also a restart, same result.

Rolling back to version 18 and everything works.

Let me know if I can provide more details, logs etc.
Logged

JimH

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 72438
  • Where did I put my teeth?
Re: Engen 1.0.22 -- Available Here
« Reply #2 on: August 18, 2016, 10:41:47 am »

Hello, I installed version 22 last night and it would not work at all. After the install,  I get an error message box after Engen tries to run as a service that says the program can't communicate with the Z-Stick.

I tried a full uninstall and also a restart, same result.
That sounds like what you would get with the prior build.  This build works for me on two machines.  It's possible you got the prior one before we had a chance to upload this one.
Logged

drmimosa

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 690
Re: Engen 1.0.22 -- Available Here
« Reply #3 on: August 21, 2016, 06:08:20 pm »

That sounded like a promising solution, but still didn't work on a download today of version 22, I get the same error when Engen runs as service.

After the install on the first run, a dialog box says Error starting Engen. Check that a Z-Stick is installed and functioning" and the program exits.

Sometimes the program continues to run, and pulling up the client terminal says "The program can't start because msncv100.dll is missing from your computer. Try reinstalling the program to fix this problem."

Any other ideas? I've tried different usb ports, they all work for build 18 but none work for build 22.

Version 18 and 19 work fine, so for now I can keep that on the system and upgrade on the next build.

Thank you for your help!
Logged

JimH

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 72438
  • Where did I put my teeth?
Re: Engen 1.0.22 -- Available Here
« Reply #4 on: August 21, 2016, 06:35:18 pm »

Any security software running?
Logged

drmimosa

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 690
Re: Engen 1.0.22 -- Available Here
« Reply #5 on: August 21, 2016, 08:21:52 pm »

Only Windows Defender. I just tested without it running real-time protection, same results/errors.

I'd love to send a logfile, but it looks like it isn't written until after the service starts.
Logged

JimH

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 72438
  • Where did I put my teeth?
Re: Engen 1.0.22 -- Available Here
« Reply #6 on: August 21, 2016, 08:55:33 pm »

I'm not sure it will work, but please try an uninstall, reboot, and reinstall.
Logged

drmimosa

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 690
Re: Engen 1.0.22 -- Available Here
« Reply #7 on: August 21, 2016, 09:23:15 pm »

Thanks, these are great troubleshooting ideas. Unfortunately didn't work, shoot.

I tried uninstall-reboot-reinstall from version 18-20, all worked after reinstall.

For version 22, uninstall-reboot-reinstall yields the same result as described above.
Logged

JimH

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 72438
  • Where did I put my teeth?
Re: Engen 1.0.22 -- Available Here
« Reply #8 on: August 21, 2016, 09:30:06 pm »

Try running Engen as administrator.  Right click on the exe.

Make sure the older version isn't running.
Logged

drmimosa

  • MC Beta Team
  • Citizen of the Universe
  • *****
  • Posts: 690
Re: Engen 1.0.22 -- Available Here
« Reply #9 on: August 21, 2016, 09:49:03 pm »

Running as admin did not change the error on build 22.

Thanks again for the assistance, I will continue to test tomorrow.
Logged

JimH

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 72438
  • Where did I put my teeth?
Re: Engen 1.0.22 -- Available Here
« Reply #10 on: August 22, 2016, 07:16:44 am »

Sorry about the problem and thanks for your patience.  We'll do another build today or tomorrow to see if it changes anything.
Logged
Pages: [1]   Go Up