Zooz Power Strip (ZEN20) - keeps Forgetting preferences, no power reporting

That's a new setting added by the 2.3.6 update to all devices settings. You can show one attribute on the main device listed (and rooms).

What firmware is your device BTW?

Post a screenshot of the state variables on the parent device (below the commands).

Then also you can change the logging to debug, then go to CH1 child and click refresh. Post the screenshot from the logs after it finishes.

Not sure where to find the firmware

You need to run the configure command so the driver will detect the endpoints. It does not look like that was done yet (or you need to refresh the page).

The firmware version would be at the bottom in the data section (check after running configure and then refresh the page).

Okay, will do. I thought I did, but will do it again.

7 endpoints detected.

CH-2, which controls the TV: it is currently on, but not showing power, and the energy is 10.8 (seemingly low, but maybe not)

Energy is cumulative over time, the energyDuration tells you how long since it was reset.
I also see I forgot to look up the deviceId for the ZEN20 and add it, but now you have posted it there so I can add that later so the settings will work for you. You could try turning on debug again on the parent and then doing a refresh with from CH2 now, post the logs. This will show if a power reading is coming back or not.

I will let you know when I have an update later tonight.

Sounds good.

Did the DEBUG and Refresh:

Ok I updated the code at the link above. Or direct import: GIST LINK REMOVED - Driver added to Github/HPM

You will need to run configure again. Error should be fixed and the settings should show up now.

Based on where the error happened I think it will work now, stupid mistake I used "subString" instead of "substring".

Settings are there. Will play with them tomorrow.

On/Off status not reporting as of yet.
Still no power

It keeps asking me to configure constantly, almost after every refresh

Ok looks like it is still having problems with the child devices. I will need to setup a fake virtual device so I can test better.

Does it get any errors when you run configure? I feel like it probably is, otherwise the child devices should be working right. Once I get that working the power readings will flow through correctly.

This is what I get when I cliock configure:

Made a very minor update, need to see the configure with debug logging enabled so I can see what is going on.

I will see if I can setup a virtual test on my end as well.

DO I need to re-install the driver code?

As long as you are using the second version its fine, the last update was just some minor stuff. If you are not sure then update it. You can just open the existing code and then use the import URL I posted up above to update it.

dev:27142023-10-11 07:20:45.823debugLiving Room Power Strip: reportingEnabled (#28) = 1

dev:27142023-10-11 07:20:45.415debugLiving Room Power Strip: ledIndicator (#27) = 1

dev:27142023-10-11 07:20:45.052debugLiving Room Power Strip: manualControl (#26) = 1

dev:27142023-10-11 07:20:44.618debugLiving Room Power Strip: onTimer3 (#17) = 60

dev:27142023-10-11 07:20:44.210debugLiving Room Power Strip: onTimer3Enabled (#16) = 0

dev:27142023-10-11 07:20:43.811debugLiving Room Power Strip: offTimer3 (#15) = 60

dev:27142023-10-11 07:20:43.409debugLiving Room Power Strip: offTimer3Enabled (#14) = 0

dev:27142023-10-11 07:20:43.005debugLiving Room Power Strip: onTimer3 (#17) = 60

dev:27142023-10-11 07:20:42.601debugLiving Room Power Strip: onTimer3Enabled (#16) = 0

dev:27142023-10-11 07:20:42.212debugLiving Room Power Strip: offTimer3 (#15) = 60

dev:27142023-10-11 07:20:41.797debugLiving Room Power Strip: offTimer3Enabled (#14) = 0

dev:27142023-10-11 07:20:41.398debugLiving Room Power Strip: onTimer2 (#13) = 60

dev:27142023-10-11 07:20:40.994debugLiving Room Power Strip: onTimer2Enabled (#12) = 0

dev:27142023-10-11 07:20:40.619debugLiving Room Power Strip: offTimer2 (#11) = 60

dev:27142023-10-11 07:20:40.205debugLiving Room Power Strip: offTimer2Enabled (#10) = 0

dev:27142023-10-11 07:20:39.794debugLiving Room Power Strip: onTimer1 (#9) = 60

dev:27142023-10-11 07:20:39.388debugLiving Room Power Strip: onTimer1Enabled (#8) = 0

dev:27142023-10-11 07:20:38.983debugLiving Room Power Strip: offTimer1 (#7) = 60

dev:27142023-10-11 07:20:38.604debugLiving Room Power Strip: offTimer1Enabled (#6) = 0

dev:27142023-10-11 07:20:38.183debugLiving Room Power Strip: overloadProtection (#5) = 1500

dev:27142023-10-11 07:20:37.780debugLiving Room Power Strip: currentFrequency (#25) = 3600

dev:27142023-10-11 07:20:37.378debugLiving Room Power Strip: voltageFrequency (#36) = 7200

dev:27142023-10-11 07:20:36.977debugLiving Room Power Strip: energyFrequency (#4) = 1800

dev:27142023-10-11 07:20:36.772debugLiving Room Power Strip: powerFrequency (#3) = 1800

dev:27142023-10-11 07:20:36.172debugLiving Room Power Strip: powerThreshold (#2) = 10

dev:27142023-10-11 07:20:35.783debugLiving Room Power Strip: powerFailure (#1) = 0

dev:27142023-10-11 07:20:35.366debugLiving Room Power Strip: Lifeline Association: [] | MC: [1:0]

dev:27142023-10-11 07:20:35.074debugLiving Room Power Strip: Changing reportingEnabled (#28) from null to 1

dev:27142023-10-11 07:20:35.069debugLiving Room Power Strip: Changing ledIndicator (#27) from null to 1

dev:27142023-10-11 07:20:35.065debugLiving Room Power Strip: Changing manualControl (#26) from null to 1

dev:27142023-10-11 07:20:35.060debugLiving Room Power Strip: Changing onTimer4 (#17) from null to 60

dev:27142023-10-11 07:20:35.056debugLiving Room Power Strip: Changing onTimer4Enabled (#16) from null to 0

dev:27142023-10-11 07:20:35.049debugLiving Room Power Strip: Changing offTimer4 (#15) from null to 60

dev:27142023-10-11 07:20:35.045debugLiving Room Power Strip: Changing offTimer4Enabled (#14) from null to 0

dev:27142023-10-11 07:20:35.039debugLiving Room Power Strip: Changing onTimer3 (#17) from null to 60

dev:27142023-10-11 07:20:35.034debugLiving Room Power Strip: Changing onTimer3Enabled (#16) from null to 0

dev:27142023-10-11 07:20:35.028debugLiving Room Power Strip: Changing offTimer3 (#15) from null to 60

dev:27142023-10-11 07:20:35.024debugLiving Room Power Strip: Changing offTimer3Enabled (#14) from null to 0

dev:27142023-10-11 07:20:35.017debugLiving Room Power Strip: Changing onTimer2 (#13) from null to 60

dev:27142023-10-11 07:20:35.013debugLiving Room Power Strip: Changing onTimer2Enabled (#12) from null to 0

dev:27142023-10-11 07:20:35.007debugLiving Room Power Strip: Changing offTimer2 (#11) from null to 60

dev:27142023-10-11 07:20:35.002debugLiving Room Power Strip: Changing offTimer2Enabled (#10) from null to 0

dev:27142023-10-11 07:20:34.996debugLiving Room Power Strip: Changing onTimer1 (#9) from null to 60

dev:27142023-10-11 07:20:34.992debugLiving Room Power Strip: Changing onTimer1Enabled (#8) from null to 0

dev:27142023-10-11 07:20:34.986debugLiving Room Power Strip: Changing offTimer1 (#7) from null to 60

dev:27142023-10-11 07:20:34.981debugLiving Room Power Strip: Changing offTimer1Enabled (#6) from null to 0

dev:27142023-10-11 07:20:34.975debugLiving Room Power Strip: Changing overloadProtection (#5) from null to 1500

dev:27142023-10-11 07:20:34.970debugLiving Room Power Strip: Changing currentFrequency (#25) from null to 3600

dev:27142023-10-11 07:20:34.966debugLiving Room Power Strip: Changing voltageFrequency (#36) from null to 7200

dev:27142023-10-11 07:20:34.961debugLiving Room Power Strip: Changing energyFrequency (#4) from null to 1800

dev:27142023-10-11 07:20:34.956debugLiving Room Power Strip: Changing powerFrequency (#3) from null to 1800

dev:27142023-10-11 07:20:34.951debugLiving Room Power Strip: Changing powerThreshold (#2) from null to 10

dev:27142023-10-11 07:20:34.946debugLiving Room Power Strip: Changing powerFailure (#1) from null to 0

dev:27142023-10-11 07:20:34.939infoLiving Room Power Strip: Logging Level is: Debug (3) for 30 Minutes

dev:27142023-10-11 07:20:34.896debugLiving Room Power Strip: executeConfigureCmds...

dev:27142023-10-11 07:20:33.027debugLiving Room Power Strip: Creating new child device for endPoint 7, did not find existing child

dev:27142023-10-11 07:20:33.015debugLiving Room Power Strip: Creating new child device for endPoint 6, did not find existing child

dev:27142023-10-11 07:20:33.004debugLiving Room Power Strip: Creating new child device for endPoint 5, did not find existing child

dev:27142023-10-11 07:20:32.992debugLiving Room Power Strip: Creating new child device for endPoint 4, did not find existing child

dev:27142023-10-11 07:20:32.980debugLiving Room Power Strip: Creating new child device for endPoint 3, did not find existing child

dev:27142023-10-11 07:20:32.968debugLiving Room Power Strip: Creating new child device for endPoint 2, did not find existing child

dev:27142023-10-11 07:20:32.955debugLiving Room Power Strip: Creating new child device for endPoint 1, did not find existing child

dev:27142023-10-11 07:20:32.188debugLiving Room Power Strip: Power Metering Support Detected and Enabled

dev:27142023-10-11 07:20:32.184debugLiving Room Power Strip: MeterSupportedReport(meterReset: true, meterType: 1, scaleSupported: 53), scaleBinary: 110101

dev:27142023-10-11 07:20:31.922debugLiving Room Power Strip: Endpoints (7) Detected and Enabled

dev:27142023-10-11 07:20:31.920debugLiving Room Power Strip: MultiChannelEndPointReport(dynamic:false, identical:true, endPoints:7)

dev:27142023-10-11 07:20:31.868debugLiving Room Power Strip: Probing for Power Metering Support

dev:27142023-10-11 07:20:31.865debugLiving Room Power Strip: Probing for Multiple End Points

dev:27142023-10-11 07:20:31.172debugLiving Room Power Strip: switch is turned on (physical) [NOT CHANGED]

dev:27142023-10-11 07:20:30.878debugLiving Room Power Strip: Set Device Info - Model: ZEN20 | Firmware: 3.00

dev:27142023-10-11 07:20:30.874debugLiving Room Power Strip: Received Version Report - Firmware: 3.00

dev:27142023-10-11 07:20:29.766warnLiving Room Power Strip: Clearing state variables and data...

dev:27142023-10-11 07:20:29.764debugLiving Room Power Strip: Enabling Full Re-Sync

dev:27142023-10-11 07:20:29.728warnLiving Room Power Strip: configure...

The log was too big to capture as an image, so above is the text.

THis is the log after I configured, and refreshed one of the child devices

Ok, its still not detecting the childs properly. It says in the log it is creating new ones but I actually had that commented out so as not to create a mess during testing. I will have to set up a little test here and get it figured out. Hopefully next version this will be mostly functional.

Ok I tested it myself this time. Was a silly type mismatch causing it not to find it. It should at least detect the existing child devices. I have the code disable that would create any new ones still. Update in the same place: GIST LINK REMOVED - Driver added to Github/HPM

Looking good so far!!

Funny, the only one that is not reporting power corectly is the one with the TV plugged in.
I think that may be because I have another plug acting as an intermediary (which reports power as well - a workaround). Will remove that and see what I get

UPDATE: That child device is still not reporting power. Not sure what is going on

I think I got most of the settings in there as well: https://www.support.getzooz.com/kb/article/1024-zen20-power-strip-advanced-settings/ , let me know if anything is missing.

I skipped 29-33 so if you somehow have #30 set to 0 (disabled) then power reporting for CH2 would be shut off. You could try setting it to 1 with the Set Parameter command like this:
image

Next up I need to get it to tell the difference between the metering endpoints and the switch only endpoints (USB). I can test that on my ZEN25 though and it should work the same for the ZEN20. This will allow it to create the children with the component switch driver for the USB ports.