[PROJECT] Driver for Ambient API/Local and Ecowitt

Just imported the driver and it still says Version 6.6.

Also still getting the error.

You mean version 0.6.6? I have not gotten to 1.0.0 yet, so 6.6 is way out. :grin:

The version will be shown in the drivers code in the version history section. It should also update the state "Version" the next time it refreshes. I double checked the version part just now, but would have to check the error at home (I no longer got it) in a while.

Version 0.6.7 is not the version that gets imported when I import from your website. It pulls in Version 0.6.6 so apparently the new version is not on your website. I have imported several times and refreshed several times - it's still Version 0.6.6 and I'm still getting errors.

Version 0.6.6 definitely has the problem. But I can see the version on the site. Is the import url correct?
https://www.drdsnell.com/projects/hubitat/drivers/AmbientEcowittWeather.groovy

I was not getting errors until I updated yesterday to Version 0.6.6. I had remained on the prior version because I don't have the new devices.

The code at the URL you listed is Version 0.6.6 - that is the problem.

Yeah, I cleaned out some mistaken Events that should have just updated States... But I forgot to remove the units portion when I switched from my "ProcessEvent" to "ProcessState".

Please refresh your browser page for the URL. I can see it on my phone and it is the 0.6.7. Very weird it is showing you 0.6.6, but I have hit that (not that version, but past ones) if the browser cached the file.

UPDATED:
Just got home and checked from my computer and it showed 0.6.6 UNTIL I refreshed the browser page. Then "poof" 0.6.7. So it definitely appears to be a cache issue. This would likely impact the Import function also since that is going through the browser as well.

Cleared cache and I was able to pick up Version 0.6.7. Thanks for your help.

No problem. You would not believe how many times that exact thing has happened to me. Since I have one primary hub and one that I use for development/backup. But many times there are some things that can only be done on one of them based on the devices... so then I post code and go to import it between them and wrack my brains for a bit trying to figure out why I am not getting the right version. It is almost ALWAYS the caching... but since I am usually doing this after coding for hours on end my brain is a little mushy so it takes me a while to figure out.

Any further issues, let me know! I am hoping to clean things up some more, maybe add some more features... and finally try to make a 1.0.0 release in the future.

Unfortunately, after updating to Version 0.6.7 I'm still getting errors. Please see snapshot of error log.

A few more details to aid in troubleshooting. I have triple checked to make sure I'm running Version 0.6.7 of the Parent Driver and Version 0.7.2 of the Child Driver - see attached screenshot of the Ecowitt Gateway device showing the correct State Variable. All Dashboard tiles appear to be displaying correctly in spite of the error. For now, I'll remain with the updated drivers as the errors don't seem to be affecting performance. Please let me know if you need more info.

All child sensor readings are now off so I've backed out to Parent Version 0.6.5 and Child Version 0.7.1.
Everything is displaying properly without any errors in the Log.

Do you have a screenshot of what a child device showed? It looks like it did not import the degree sign properly from the error log there.

That error log also appears to have a variable I am not sure I have yet... temp1ff... I will have to check when I get home. Even if it was a new variable it should declare a debug, not an error.

Attached is a screenshot of the Ecowitt Weather Gateway parent device showing temp1ff (I'm thinking this is the Fahrenheit Feelslike value for temp1). This screenshot was taken using the Parent 0.6.5 and Child 0.7.1 drivers so it was in the prior versions. Let me know if you need me to reload the new drivers to re-create the error. For now, I'm all set using the prior versions.

1 Like

Thanks! It was another one of the ProcessState calls having a unit... Sick of those now, so I went through and checked EVERY SINGLE ONE. No more unit calls left in them. Plus I found that the ff is an error. It should just be a temp1f and temp3f but I accidentally had an f in the string for naming the variable... That is also fixed.

So version 0.6.8 is now posted.

Back on your latest drivers & all is well so far - no errors on the Log & Dashboard tiles are displaying correctly. Thanks for the quick fix!

Glad it works... just wish I had not caused the problems to begin with.

No problem. We're all learning said the man who didn't think about clearing browser cache. BTW, how did you get into coding with Groovy?