[UPDATED] Weewx Weather Driver With External Forecasting

Hopefully you can bring back the alerts. Thanks for all your work..

You mind if I rip out the weewx and create a new driver with it ?

Carry on, and thanks for asking.
My dev / support time is really limited atm

Andy

1 Like

Thanks mate !

So I installed Weewx on RPI and added the Netatmo extension. I now installed your driver and pointed the IP at my local weewx IP address (RPI).

I receive the following error:

[dev:3173](http://192.168.7.201/logs#dev3173)2019-06-16 10:34:10.143 am [error](http://192.168.7.201/device/edit/3173)something went wrong: org.apache.http.conn.HttpHostConnectException: Connect to 192.168.7.220:800 [/192.168.7.220] failed: Connection refused (Connection refused)

I'm thinking it is the port?

I would think so.
Do you have weewx installed on port 800?
The easiest way to check is to try it in a browser first.

Andy

I can view it in a browser at port 80 and via ssh at port 22.

When I try port 80 in the driver I get the following log:

[dev:3173](http://192.168.7.xxx/logs#dev3173)2019-06-18 07:03:04.037 am [error](http://192.168.7.201/device/edit/3173)something went wrong: groovyx.net.http.HttpResponseException: Not Found

[dev:3173](http://192.168.7.xxx/logs#dev3173)2019-06-18 07:03:04.018 am [debug](http://192.168.7.201/device/edit/3173)Weewx Driver - DEBUG: Weewx: ForcePoll called

When I try port 22 I get the following log:

[dev:3173](http://192.168.7.xxx/logs#dev3173)2019-06-18 07:03:56.132 am [error](http://192.168.7.201/device/edit/3173)something went wrong: java.net.SocketException: Connection reset

[dev:3173](http://192.168.7.xxx/logs#dev3173)2019-06-18 07:03:55.771 am [debug](http://192.168.7.201/device/edit/3173)Weewx Driver - DEBUG: Weewx: ForcePoll called

I would not expect it to work on port 22 unless your weeewx is configured to present webpages on that port.
Looking at the error message it's saying that it can't find the page it wants (the json file)
It doesn't look like that it is pointing to the correct path?

This doesn't look correct..
http://192.168.7.xxx/logs#dev3173

The error looks like you are trying to connect to maker api

My settings are the same as yours (except the local ip)

Standby β€” I need to install the Hubitat weewx driver.

BRB

When i try to install the Weewx Hubitat extension, I receive this error.

This installer was created by @anon61068208 perhaps he can help better than I

when did you download this ?

I downloaded today. My bad... forgot to preface with sudo. Extension installed and I’m rockin!

Thank you so much for this. This will help me so much.

1 Like

If anyone is interested I have a stripped down version that ONLY polls the weeWX station data. MSG me if interested.

@Cobra, is it possible to reduce the Weewx polling interval to less than 5 minutes? I changed the "5 "to "2" in line 172 and got the following error in my log:

groovy.lang.MissingMethodException: No signature of method: user_driver_Cobra_Weewx_Weather_Driver___With_External_Forecasting_609.runEvery2Minutes() is applicable for argument types: (java.lang.String) values: [pollSchedule] on line 259 (updated)

That’s because you can’t use that method with 2 minutes.
It would need to be rewritten to use a cron job for the polling.

Can I ask why you want to poll every 2 minutes?

Andy

Thanks for the reply, Andy.

I actually wanted to poll every 1 minute but I started with 2. We have a water feature in the yard that loses water when the wind blows over 8MPH. Currently, I am polling my PWS every 2 minutes via Ambient Weather API and turning off the water feature when wind_gust >=8.0. I've been on a quest to localize all my HA and hoped to be able to do this with Weewx and Hubitat.

John

Scratch that. It's in another driver.....

Let me get it........

Ok @Cobra

You can hash this out right ???

if (refreshEvery != null) {
"runEvery${refreshEvery}Minutes"(autorefresh)
log.info "Refresh set for every ${refreshEvery} Minutes"
} else {
runEvery30Minutes (autorefresh)
log.info "Refresh set for every 30 Minutes"
}

Just change the runEvery30Minutes to runIn1Minute

That won't work

runEvery only has certain parameters that you can use (5 mins being the smallest)
runIn is a one time thing unless it's looped (it will only run the first time it's called)

This really need to be configured as a cron job

As soon as I get some time to look at this driver, I will

Andy

I thought there was a runEvery1Minute?

If not you could always do runIn and just reschedule it every time..