[Release] IoTaWatt Power Monitor Driver v0.1.20220723

This appears to be the root issue. I wonder if you have some mild corruption in your Hubitat database? This error is not something the driver is producing. That error is coming from deeper within the platform as a result of the driver making a certain call to try and find existing child devices. The two subsequent log entries are a result of the first error, I believe.

Have you considered performing a Soft Reset on your hub? Make sure you have downloaded a backup of your hub's configuration via the Settings menu. Then follow these instructions, paying close attention to follow each and every step!

https://docs.hubitat.com/index.php?title=Soft_Reset

Thanks for the response. I have several outputs in the IotaWatt that I renamed after the driver found and imported them. Do you think that a soft reset would help? Would I just be reintroducing the error after restoring the backup after the soft reset.

I don't notice any issues with the IotaWatt integration app. Only the error message in the logs. It may be it is looking at a child device that I renamed and now can't find.

Is a soft reset my only option? Thanks.

Did you change the child device’s Device Network ID? That would screw things up for sure, but still shouldn’t throw that database error.

Changing the LABEL of a child device is fine to do and will not cause any issues.

You should even be able to change the NAME of a child without any issues.

Seems like a good start to make sure your hub is running optimally. It is a safe procedure as long as you have a good backup downloaded to your computer (just in case) and you follow the directions exactly as documented.

No, I never changed the device network ID, only the device name and label. But I did make many changes to the names and labels. I have three Iotawatt unit's and they are all integrated and have several child devices.

FYI my IoTaWatt integration broke with the latest hub update (2.2.0.122). Soft reset didn't help.

I get the following when attempting to look at the IoTaWatt parent device:

Error 404

deviceId was not found. org.quartz.JobPersistenceException: Couldn't obtain triggers for job: CronExpression '0/180 * * * * ? *' is invalid. [See nested exception: java.lang.RuntimeException: CronExpression '0/180 * * * * ? *' is invalid.]

The Page requested could not be found

Still working fine for both of my IoTaWatt devices.

That’s a strange error. Can you still browse directly to you IoTaWatt device? There was a firmware update to the IoTaWatt recently. Just trying to rule out a problem with the IoTaWatt versus your Hubitat hub.

Definitely strange! IoTaWatt itself is working fine, last activity on IoTaWatt was right before I updated HE firmware this morning.

Restoring to Hubitat firmware 2.1.9.117 makes it functional again. There were two IoTaWatt child devices for IoTaWatt outputs that I deleted back in June, so I'm removing those and trying the new HE firmware again.

Annnd no go. Still get the error.

Strange. I’ve been on 2.2 since the early days of the beta. No issues whatsoever.

Since you have backups...and can easily restore... What happens if you delete the Parent device altogether and create a new one?

I’m having an issue removing the iotawatt devices after removing the driver. Any idea?
i posted in IoTaWatt cannot remove drivers

I replied in your other thread...

Returning to my issue described above after updating to HE 2.2.x. After I rolled back to 2.1.x, I decided to re-update to 2.2.x and added a new IoTaWatt device. I made no changes to the driver code, simply added a new device and it works.

However, the problem I'm having (as of HE 2.2.x) with this and a few other apps and automatons that do periodic refreshes randomly stop refreshing until manually "restarted." For example, the IoTaWatt driver was updating every 30 seconds yesterday until exactly 9pm. Anyone else having this specific problem?

It seems the HE update broke something across many apps and drivers, but perhaps there's something unusual going on with my combination of apps and drivers. HE staff are quick to place blame on user created apps/drivers despite the only change being HE updates, so I've hesitated to even bother posting my issues.

Have you updated to my very latest and greatest IoTaWatt Driver? I made some changes to ensure that the periodic scheduling works better now. One of my recent changes broke the scheduling any time the hub was rebooted. I have resolved this issue in the latest version in my GitHub repository.

I have three Hubitat hubs (two production and one development) and I have never seen a platform update break any of my periodically scheduled apps/drivers. I have seen plenty of community code, my own included, that had bugs in it that resulted in poor behavior after a reboot (which also coincides with a Hub firmware/platform upgrade.)

Hopefully my latest driver will help. After upgrading the driver, be sure to go into the Device Details page and click SAVE on the user preferences.

1 Like

Great catch, I had updated the driver but that was before rolling back to deal with the strange 404 error. Just re-updated, assuming it will fix the problem but will edit this if it persists. This is still one of my favorite drivers, turns an expensive solar array into a light sensor :joy:

1 Like

That is an interesting use-case!

1 Like

After using power factor to successfully troubleshoot a failing AC compressor run capacitor, I now have a rule to send an alert if power factor dips below a certain threshold. Certainly some interesting use cases beyond sending alerts when the dryer is finished!

2 Likes

General question here -- but does anyone know if IotaWatt can create an 'output' that is based on more-complex calculations? Example being, I would love to have a dashboard tile of "Today's total kWh usage, with cost."

The output builder within the device doesn't seem to support this, and I think that's the only way the driver can pull in data. Unless the driver can somehow take in graph/graph+ creations?

edit: might be able to modify the driver to make custom API requests. Query API — IoTaWatt 02_03_20 documentation

You could very easily modify the Child Power Meter driver to allow the entry of a per kWh cost rate, and then add the Energy Meter Capability as well. Just add a little bit of simple math and a daily reset routine, and voila!

It would not be as accurate as having the IoTaWatt due the calculations, though.

Another option would be to use Grafana to do the math, with a rolling 24 hour cost trend per IoTaWatt output. I only send power values to InfluxDB/Grafana from my two IoTaWatt devices, and I let Grafana display some charts in kWh to show my son just how much energy his gaming computer is using! :wink:

My main purpose for this integration is to monitor the power usage of our washer and dryer to trigger notifications when the laundry cycle is complete.

The Query API was added to the IoTaWatt firmware after I had written my original Hubitat driver. I have thought about changing things up to use the IoTaWatt Query API, but I have not really found a need. If you're a programmer and can refactor this driver to use the new API, I am supportive of Pull Requests - or please feel free to publish and support your own IoTaWatt driver. I believe that there is quite a bit more integration with Hubitat possible, however I just don't have the time to work on it. It would be great to what you come up with! :slightly_smiling_face:

I'm curious how you got all those CTs inside the panel. Granted, they must be smaller than my old The Energy Detective (TED) CTs I use to monitor total and occasional generator load, but still, it must get congested, I don't think I'd have enough room.

Here is my "Main Panel" (240VAC loads) install photos

And here is my "Secondary Panel" (mostly 120VAC loads) install photos