WeeWX Websocket driver for Tempest devices

Hi,

I’ve been running captain-coredump’s UDP driver for some time and it works great. I’ve wanted a solution that could also run purely in the cloud so I wrote a websocket API driver.

You can find it at https://github.com/livysdad27/tempestWS. I’ve had it running on an Amazon Lightsail instance for a little over a day now with no problems. It captures much the same set of data as the UDP driver (rapid_wind every three seconds and obs_st data every minute). The only fields I wish I had from the UDP driver are the RSSI fields.

I’d love to hear if anyone else decides to run it and try it out. I’d welcome feedback/issues/suggestions etc… and would be happy to answer questions now and again.

Billy

2 Likes

if I were you, I would make a feature request for adding the RSSI fields. I don’t see a reason why not to send it. It could even be added to the get_observations call in the api

It is already a feature request. Vote for it here Add RSSI to the API

1 Like

Thanks Gizmoev, I just voted for that one.

Billy

1 Like

Hi,

For anyone interested I recently updated the websocket driver I wrote.. The specific improvements were…

  • I updated the logging code to make use of the “new style” weewx logging when available.
  • The closePort method had an error in how it called the websocket send code and therefore was causing crashes.
  • I cleaned up the websocket open code and moved it to the main body of the class so it now only runs once instead of every time genLoopPackets is fired up.
  • I cleaned up and improved the logging messages for consistency.

I still want to work a bit with how to handle if/when the websocket service goes down. This is an expected behavior and should be handled. This can of course be done via the systemD scripts as well by restarting weewx but I’d prefer the driver handled it gracefully with messaging.

Super curious to hear from anyone who uses it/tries it out.

Billy