more G-Labs products

Author Topic: First impressions with HomeGenie  (Read 4844 times)

October 06, 2014, 03:00:50 AM
Read 4844 times

RoChess

  • ***
  • Information
  • Full Member
  • Posts: 61
Finally decided to plunge deep into the world of Home Automation, and settled on Z-Wave as the protocol to control everything.

Choice for controller was quickly down to Mi Casa Verde Vera3, or the Aeon-Labs S2 USB stick. Since I have servers running 24/7 already, and saw additional benefits in the ability of adding Z-Wave devices by bringing the USB stick to the new module, I settled for the USB controller.

Then it was down to what software to use and HomeGenie looked like a perfect match, because I planned to get the 2nd generation of Z-Wave modules from Aeon-Labs that also have build in energy meters, and HomeGenie screenshots appeared to show support.

Initial impressions on HomeGenie are nothing but praise, but I still ended up ordering a Vera3. Ran into many bugs/quirks that I still like to report, so that HomeGenie can keep improving.

Updated to r416 today, so below still reflects the current situation.

#1. Quickly realized that the energy usage screenshots are not due to support of Aeon-Labs energy meters, but by manually configuring the Watts of each device. This is very good solution for users without ability to measure actual usage, but would be nice if this can be expanded.

Aeon-Labs (Aeotec) 2nd generation with Smart Energy measure ability:

  • Plug-in Dimmer = DSC25-ZWUS
  • Plug-in Switch = DSC24-ZWUS
  • Plug-in Switch = DSC06106-ZWUS
  • Plug-in Powerstrip = DSC11-ZWUS
  • In-Wall Dimmer = DSC19103-ZWUS
  • In-Wall Switch = DSC18103-ZWUS

For DSC25-ZWUS the supported classes as shown inside HomeGenie are as follows: Switch Multi Level, Meter, Switch All, 2C, 2B, Configuration, Association, 56, Manufacturer Specific, Version (Manufacturer Specific = 0086:0003:0019)

Also "Analyze" keeps showing a spinning circle with empty boxes for "Global, Watts" and "Counter", while below it I have:

Cost per unit = 0.00022
Overall counter = 349.31
Total expense = 0.08

(system has been running for 3 days now with just the 4 plug-in dimmers, as I await for more components to arrive)

I will be happy to provide detailed debug logs or other info to assist in making the 'meter' function work with HomeGenie.

#2. Adjusting 'themes' is not saved. I prefer the light 'B' theme, but I constantly have to go in to change it.

#3. The same goes for the "Event History" setting, though I can see some reasoning behind that one defaulting back to 'off'.

#4. The Android native app would not reflect the current status of lights being on/off after an automation event changed them, whereas viewing it inside the Chrome browser on the same Android did.

#5. Changing the module icon for one light to the green/red tablelamp icon disabled the ability for the icon to show the on/off status like the default lightbulb icon. There is no way to undo this now, not even removing/re-adding the module. I am sure if I re-register the actual interface it would work, but sounds like an easier option can be designed.

#6. Continuing with the nitpicking; the dialog window on a large computer screen requires a lot of scrolling to make all the text visible when the window takes up only 5% of my screen (especially the "Parameters" dialog). This was obviously done to cater to small smartphone screens to ensure everything would fit, but should be doable to make the browser resize this dialog window when there is more resolution available.

Forcing a sort-order on the actual Parameters would be nice as well. I had "ZWaveNode.Variables.111" listed way out of order at the bottom of the list. Just tried it again due to r416 being released today, and it appears to actually sort correct now, except it does still lack natural sort, meaning .2 should be above .101, but like I mentioned this is really nitpicking as I am sure there are more important issues to work on first.

#7. Some tooltips/suggestion in the configuration on some components would be nice. For example I struggled for a while to make the Aeon-Labs multi-sensor (DSB05-ZWUS) work, even after extensive Googling. Finally I just started messing around and found out that if I push the Z-Wave button on the device right before I clicked "Set" inside HomeGenie it would finally save the changes. This was even after the 3x Z-Wave button method to turn the multi-sensor 'on' for 10 minutes to accept new instructions.


The main reason I am switching to a Vera3 controller is for the Smart Energy monitoring and the always-on voice control ability I am after. Having to push a button in the HomeGenie android app before it would accept my voice isn't going to be ideal for me. VoxCommando will allow me always-on voice control and has support for the Vera3 system.

Until then, would love to assist in improving HomeGenie.

October 06, 2014, 04:38:46 PM
Reply #1

bkenobi

  • *****
  • Information
  • Global Moderator
  • Posts: 1525
These are very good impressions for Gene to have.  Several of these have been reported, but the others have not.  It's good to hear what new users find good/bad so it can be fixed.

October 06, 2014, 07:25:15 PM
Reply #2

Gene

  • *****
  • Information
  • Administrator
  • Posts: 1472
  • Tangible is the future!
    • Yet Another Programmer
Hi RoChess,

thank you very much for your detailed report. This is the kind of messages that helps improving a product =)

HomeGenie already supports Aeon Labs energy meters. It just need a specific configuration.
This is the configuration from my Aeon Labs devices:

Associations:

Group ID = 1, Node = 1

Configuration Variables:

1:Type of Sensor Report
       0  (report power)
80:Notification on Status Change
       2  (BASIC Report  Sent)
90:Disable automated report on minimal value change
       1 (Enabled)
91:Minimum Change to send Report (Watt)
       2
92:Minimum Change to send Report (%)
       1
101:Report type send in Reporting Group 1
       4  (Meter Report for Watt)
111:Send Interval for Reporting Group 1 (seconds)
       30

So, HomeGenie needs the device to send instant Watt report at a given interval (so what is the power consumption in that very moment).
It's important to leave the VM Watt option (virtual meter) set to 0 (disabled) otherwise will override the real metering.

Some of the other things you pointed out have been already reported, but probably none of them have been filed to the issue tracker:

https://github.com/genielabs/HomeGenie/issues

It's important to have issues filed there as other contributors may also want to help.

Cheers,
g.



October 07, 2014, 04:38:32 AM
Reply #3

RoChess

  • ***
  • Information
  • Full Member
  • Posts: 61
thank you very much for your detailed report. This is the kind of messages that helps improving a product =)

HomeGenie already supports Aeon Labs energy meters. It just need a specific configuration.

You are very welcome. The Vera3 arrived today earlier then expected, but it is still in the box, because now I am curious how it works inside HomeGenie first.

Thanks for the detailed instructions, which Aeon-Labs fails to provide (unless I am overlooking something). What is worse is that the plug-in dimmer model (0086:0003:0019) that I use is not even listed on their product page, but the in-wall model (0086:0003:000D) that you use is.

Since they are both 2nd generation, I would think it is only the external that is different, so same settings should apply.

That is however where I immediatly run into a problem. Your screenshot shows the nice "Configuration Variables" section with drop down box, which I also have for all the 'sensors' that I added. These plug-in dimmers do not show it however. The only thing that works is querying the "Node Informations" section. Everywhere else when I try 'Get' or 'Set', it gives me a "? (operation timeout!)", no matter what tricks I try to keep the Z-Wave module awake/active.

The Z-Wave module itself responds fine to on, off, and dimmer level requests, so I am puzzled and even went as far as removing it from the interface and re-adding it.

Is there anyway to increase the amount of logging, so that when I press "Set", there is actually some reference to what all is happening in the background?

Or do you have any other suggestions?

PS: I will convert any 'new' issue over to the github tracker when I have more time next weekend. On new open-source projects I always prefer to sense the feedback from the forum community first, as it tends to be more "alive" then the bug tracking repository.

PPS: What is a good section on the forum to ask technical DIY questions? I want to modify one of the DSC06106-ZWUS modules to not just enable/measure power, but also toggle the 'on' switch on my low-powered mattress pad heater (defaults to 'off' when power is provided). Submitted support request to Aeon-Labs, but I have low hopes of getting an actual answer from them.

October 07, 2014, 10:14:32 AM
Reply #4

Gene

  • *****
  • Information
  • Administrator
  • Posts: 1472
  • Tangible is the future!
    • Yet Another Programmer
0086:0003:0019 is not even listed in the Pepper1 database, that is the database HG uses to recognize a device.
Post a screenshot of the setup page shown for your device.
At least supported command classes should be listed.
So the setup page should let you edit parameters even if the device is not recognized, but it won't show you parameters description and usage because no match is found in the db.

Usually there's no need to "awake" a device when it's not battery powered, these are always active.

To have more logging you can start HG from a terminal.

Cheers,
g.

October 07, 2014, 07:59:09 PM
Reply #5

RoChess

  • ***
  • Information
  • Full Member
  • Posts: 61
This is weird, tried it again just now and this time I was able to 'Add' the node 1 Associations, so it read the '1' fine this time on a "Get". Still got a timeout on the Configuration Variables for 'ID = 1', but Basic Values worked. Right after I made the screenshot I tried to see if a "Get" on Variable ID = 80 would work and I actually got "0" back correctly.

Had the same problem with the Aeon-Labs 4-in-1 MultiSensor, where I could adjust every variable (that one does show the drop down box as the manufactor ID is recognized), except the '1' one.

Going to configure all the settings you specified now (as "Set" will work fine now), and see how far I get.

Maybe all my 'trial and erroring' last night confused the module, and a long timespan is required to settle down and accept input settings again done in the right sequence. Have no other explanation as to why it works fine now, and 3 hours of doing the exact same thing last night lead to failure.

PS: Can you eleborate a tiny bit more on terminal mode for additional logging on a Windows 7 64-bit system?

October 07, 2014, 08:25:02 PM
Reply #6

RoChess

  • ***
  • Information
  • Full Member
  • Posts: 61
Default values obtained via 'Get':

1 = (unknown)
80 = 0
90 = 1
91 = 25
92 = 5
101 = 4
111 = 720

New values now as configured via "Set" and confirmed afterwards via "Get":

1 = (still unknown)
80 = 2
90 = 1
91 = 2
92 = 1
101 = 4
111 = 30

And by golly it works. Just turned the bulb in question 'on', which is a Feit 4.8 Watt LED dimmable 300 lumens candle light bulb, and the power usage showed 0.1 first, then 4.8 and now seems to settle at 4.7Watt. Have two other Butterfly lamps, which hold two and three of the same bulbs respectively, and they report accurate numbers as well now. The 4th dimmer controls an 8Watt 450 lumens LED bulb, which reports as 7.7Watt.

The "Analyze" section of HomeFenie is still blank with spinning circle though, but I guess that is a bug for another time.

Just so we are clear, this is *the* module in question: http://www.amazon.com/Aeon-Labs-Plug-In-Edition-DSC25-ZWUS/dp/B00H5U40L8

How does one go about getting that added to the Pepper-One dbase?

October 07, 2014, 09:10:14 PM
Reply #7

Gene

  • *****
  • Information
  • Administrator
  • Posts: 1472
  • Tangible is the future!
    • Yet Another Programmer
The continuos waiting circle must be some javascript error.
Do you know how to enable the developer console and see if there's any error?
To launch homegenie from a console, open up a command prompt as administrator, cd to the homegenie program folder and type "HomeGeine.exe".
Before that also stop the homegenie service.

g.

October 07, 2014, 09:50:10 PM
Reply #8

RoChess

  • ***
  • Information
  • Full Member
  • Posts: 61
File: index.html, Line: 2233, Column: 37

                    for (var s = 0; s < stats[0].length; s++)

SCRIPT5007: Unable to get property '0' of undefined or null reference

Debugging the values above it.

url: '/' + HG.WebApp.Data.ServiceKey + '/' + HG.WebApp.Data.ServiceDomain + '/Statistics/Parameter.Counter/' + HG.WebApp.Statistics._CurrentParameter + '/' + HG.WebApp.Statistics._CurrentModule + '/'

becomes:

url: "/api/HomeAutomation.HomeGenie/Statistics/Parameter.Counter/Meter.Watts//"

so the culprit appears to be:

HG.WebApp.Statistics._CurrentModule being empty

October 07, 2014, 11:31:50 PM
Reply #9

Gene

  • *****
  • Information
  • Administrator
  • Posts: 1472
  • Tangible is the future!
    • Yet Another Programmer
Can you look into HomeGenie folder and report this file properties (size, version):

System.Data.SQLite.dll

Cheers,
g.

October 07, 2014, 11:47:34 PM
Reply #10

RoChess

  • ***
  • Information
  • Full Member
  • Posts: 61
System.Data.SQLite.dll

  • version 1.0.85.0
  • 205kB (210,432 bytes)
  • Date modified: May 16th 2014 @ 19:18

Also got HomeGenie console logging working (was n00b mistake of forgetting to shut down the old service first and only closing traybar icon).

Manufactor query result from that dimmer is as follows:

Code: [Select]
2014-10-07T17:39:34.1729285-04:00       MIG.Gateways.WebServiceGateway  192.168.1.10    api/HomeAutomation.ZWave/2/ManufacturerSpecific.Get/1412717974162       HTTP    GET
[17:39:34.175928] SPO < 01 09 00 13 02 02 72 04 05 06 90
[17:39:34.222931] SPI > 06 01 04 01 13 01 E8
[17:39:34.223931] SPO < 06
[17:39:34.273934] SPI > 01 05 00 13 06 00 EF
[17:39:34.274934] SPO < 06
[17:39:34.324937] SPI > 01 0E 00 04 00 02 08 72 05 00 86 00 03 00 19 14
[17:39:34.325937] SPO < 06
2014-10-07T17:39:34.3599392-04:00       HomeAutomation.ZWave    2       ZWave Node      ZWaveNode.ManufacturerSpecific  0086:0003:0019
2014-10-07T17:39:34.3629394-04:00       HomeAutomation.ZWave    2       ZWave Node      ZWaveNode.DeviceHandler ZWaveLib.Devices.ProductHandlers.Generic.Dimmer
2014-10-07T17:39:34.8969699-04:00       MIG.Gateways.WebServiceGateway  192.168.1.10    api/HomeAutomation.ZWave/2/NodeInfo.Get/1412717974887   HTTP    GET
[17:39:34.898970] SPO < 01 04 00 60 02 99
[17:39:34.925971] SPI > 06 01 04 01 60 01 9B
[17:39:34.926971] SPO < 06
[17:39:34.976974] SPI > 01 15 00 49 84 02 0F 04 11 01 26 32 27 2C 2B 70 85 56 72 86 EF 82 30
[17:39:34.977974] SPO < 06
2014-10-07T17:39:34.9799747-04:00       HomeAutomation.ZWave    2       ZWave Node      ZWaveNode.NodeInfo      04 11 01 26 32 27 2C 2B 70 85 56 72 86
2014-10-07T17:39:34.9809747-04:00       HomeAutomation.ZWave    2       ZWave Node      ZWaveNode.WakeUpNotify  1
2014-10-07T17:39:34.9809747-04:00       HomeAutomation.HomeGenie.Automation     91      Automation Program      Z-Wave Node WakeUp      LR.Butterfly #1<br>2 Basic Get
[17:39:35.000975] SPO < 01 09 00 13 02 02 20 02 05 07 C5
[17:39:35.027977] SPI > 06 01 04 01 13 01 E8
[17:39:35.027977] SPO < 06
[17:39:35.077980] SPI > 01 05 00 13 07 00 EE
[17:39:35.078980] SPO < 06
[17:39:35.128983] SPI > 01 09 00 04 00 02 03 20 03 00 D0
[17:39:35.129983] SPO < 06
2014-10-07T17:39:35.1319834-04:00       HomeAutomation.ZWave    2       ZWave Node      ZWaveNode.Basic 0.0
2014-10-07T17:39:35.1319834-04:00       HomeAutomation.ZWave    2       ZWave Node      Status.Level    0

No sure if more is needed for Pepper-One.

[Edit]: Used pepper1.net contact form to see if I can assist them in complimenting their database for more US equipment (at least the ones I have access to). Not sure if they only allow submissions from manufactors, or allow them from users as well.

For now I just copied "0086_0003_000D.json" to "0086_0003_0019.json" and modified the contents, so that it is easier for myself to manage the variable IDs on those dimmers.
« Last Edit: October 09, 2014, 12:34:54 AM by RoChess »

October 12, 2014, 02:47:26 AM
Reply #11

RoChess

  • ***
  • Information
  • Full Member
  • Posts: 61
Pepper-One hasn't responded yet, and I bought another Aeon-Labs module that I needed to manually add.

http://amazon.com/dp/B00IRQC7O6/ = 0086_0003_0013.json

Is there anything else you need to figure out why "Analyze" is not working for me?

PS: Instead of putting a (albeit small) load on pepper1.net server, have you considered using "data:image/jpeg;base64....." inside the JSON files for the deviceImages? It can be used as a direct replacement for the http://image.jpg @url values you are using now, so no code change required. Every HTML5 browser has support for this, and most old HTML4 ones also have no problem.

(tested it for that new module, and it works for HomeGenie)