-
Notifications
You must be signed in to change notification settings - Fork 46
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Interceptor in listen mode for AmbientWeather WS-2902C only currently works with THIS tweak #109
Comments
I am going to confirm @KruseLuds findings. I was running 0.60 and once I replaced it with the above attached 0.54b, it began to work. Here you can see the log when my 2902 sent data when running .60
And here you can see after downgrading to 0.54b
|
Going back to the 0.60, I made the following changes and was able to get 0.60 working with my 2902. The changes and code were based off what @KruseLuds found originally.
|
Hello @pkringle , sorry about the super long delay, I have had a chance to revisit this now. Mainly also, because I have found another issue. I have been measuring the length of the interval of the traffic coming from the WS-2902C console - into weewx - in a lazy way - by comparing the "unrecognized" messages appearing in the log. Sometimes they appear every 16 seconds (which is the correct interval) but sometimes they only come across every 32 seconds. Please check to see if this happens to you as well. I believe the missed or skipped messages not appearing in the log are because of another code issue within the interceptor... I also did examine the old and the new files and I have implemented your suggested changes and my newer version of the interceptor.py does now work as well. As a programmer from wall street for many years, I am almost embarrassed that I am too lazy to really study the code an understand it, so making changes without knowing what I am doing makes me feel like a bull in a china shop. My 15 vs. 32 second issue may force me to really understand what is going on here once I get the chance (I am always so crammed for time!). Also, everywhere I report weather to web sites via weewx, they never want it that often anyway... but us purists hate technology that does not work perfectly.... :-) In any event, I noticed that you had discovered that same code that was in the old file was missing from the new one... I also noticed just above that code in the new file - is this:
when in fact the older file had instead:
Although the system is working with your suggested change (and the newer version may have the "do-PUT(...)" function removed because it is no longer called), I have also made the above update to see if that would have any effect on the 16 vs 32 second bug. It is possible Matt did not actually remove that other function but in fact forgot to include it with his newer build, as that appears to be the case with the other piece of missing code that you had discovered. Anyway, I've set up a command-line sensor in home assistant measuring the interval in the syslog and here is recent data on the 16 vs. 32 intervals I have noticed (and sometimes it may be slightly different maybe because of other latencies, but I digress). Double-click on it to enlarge it (unfortuinately that makes it a little blurry - but still readable) - Please let me know your thoughts. I look forward to hearing back! |
I have updated my file as well - not sure if this is fixed in the latest version, though I am now running 5.0.2 - |
This attached file is a workaround/fix for an issue with intercepting
AmbientWeather console messages using the Interceptor driver for
the WS-2902C model weather (and possibly similar models - in listen
mode):
The latest interceptor integration has a file which I have renamed
interceptor.py.new.bad, a copy is in this .zip file as well for comparison
purposes. This ends up causing all of the data sent to various weather
web sites to actually be an empty message! The older interceptor.py
file which is included here (renamed to interceptor.py.old.good), still works:
old_interceptor.py_that_works.zip
Just rename the interceptor.py.old.good file as interceptor.py and
place it in:
"/usr/share/weewx/user" (that last directory is NOT misspelled)
(You might want to rename the old (newer) interceptor.py that
is already there on your machine first for your comfort level).
Note, there will be several messages in the log about "unrecognized
parameters" when using this driver, but those are the more esoteric
weather station details that are typically not used - and those
messages can be ignored, unless you want to update weewx and the
DB schema to also handle those.
The text was updated successfully, but these errors were encountered: