I had a play with the parameters this morning. 58 and 59 do set the interval for both channels as each time it reports I see endpoint null, endpoint 1 and endpoint 2. This except is a power report with switch 1 on and switch 2 off. the load is around 206W.
56517ed3-130a-4e2e-8bc3-12582633abf9 08:38:24: debug MeterReport: MeterReport(deltaTime: 0, meterType: 1, meterValue: [0, 0], precision: 1, previousMeterValue: [0, 0], rateType: 1, scale: 2, scale2: false, scaledMeterValue: 0.0, scaledPreviousMeterValue: 0.0, size: 2) : Endpoint: 2
56517ed3-130a-4e2e-8bc3-12582633abf9 08:38:22: debug MeterReport: MeterReport(deltaTime: 0, meterType: 1, meterValue: [0, 0, 21, 189], precision: 2, previousMeterValue: [0, 0, 0, 0], rateType: 1, scale: 0, scale2: false, scaledMeterValue: 55.65, scaledPreviousMeterValue: 0.00, size: 4) : Endpoint: 2
56517ed3-130a-4e2e-8bc3-12582633abf9 08:38:21: debug MeterReport: MeterReport(deltaTime: 0, meterType: 1, meterValue: [8, 7], precision: 1, previousMeterValue: [0, 0], rateType: 1, scale: 2, scale2: false, scaledMeterValue: 205.5, scaledPreviousMeterValue: 0.0, size: 2) : Endpoint: 1
56517ed3-130a-4e2e-8bc3-12582633abf9 08:38:19: debug MeterReport: MeterReport(deltaTime: 0, meterType: 1, meterValue: [0, 0, 13, 214], precision: 2, previousMeterValue: [0, 0, 0, 0], rateType: 1, scale: 0, scale2: false, scaledMeterValue: 35.42, scaledPreviousMeterValue: 0.00, size: 4) : Endpoint: 1
56517ed3-130a-4e2e-8bc3-12582633abf9 08:38:17: debug MeterReport: MeterReport(deltaTime: 0, meterType: 1, meterValue: [8, 12], precision: 1, previousMeterValue: [0, 0], rateType: 1, scale: 2, scale2: false, scaledMeterValue: 206.0, scaledPreviousMeterValue: 0.0, size: 2) : Endpoint: null
However, parameter 51 and 55 (minimum time between reports) are channel dependent and override the regular reporting intervals. If you have 58/59 set for 30 seconds and 51/55 set for 10 mins you only get a report every 10 mins. If you trigger a power report as a result of a power change (light on/off) then this restarts the clock and your next timed report will be 10 mins later. This seems to work as documented.
What I have noticed is that changing switch 1 will most of the time result in an update to the power/energy showing on the tile. Changing switch 2 almost never results in a change to the power/energy showing on the tile. It doesn’t seem to matter if you use the parent device or the child device.
There is also some unreliability when setting parameters. If I change a parameter in the app and then hit “done” I aways get a line like the following for each change.
56517ed3-130a-4e2e-8bc3-12582633abf9 09:03:10: debug Parameter 51 will be updated to 10
56517ed3-130a-4e2e-8bc3-12582633abf9 09:03:10: debug updated() is being called
I don’t always see the following ‘confirmation’ that the parameter has been set.
56517ed3-130a-4e2e-8bc3-12582633abf9 09:03:12: debug T - Lounge Dining Main parameter ‘51’ with a byte size of ‘1’ is set to ‘10’
Here is some logging I did while testing this.