Weather station recommendation?

That is the kind of guide I used to build this extra direct rain sensor.

Slight addition to what @Remko said. There are multiple ways to get the data from the weather station. You can however not query a sensor. The station sends regular updates (e.g. every 15 seconds) and your counterpart processes and presents the data. Slight difference, very marginal effect.

1 Like

Yeah, I have been on a mission to reduce any cloud dependency and am very close to have it all without cloud now. Just my Worx Robot leftā€¦

Absolutely,
my weewx setup is hosted on my own server and the data is only sent there (instead of e.g. wunderground). The remaining cloud service is Alexa.

Question: You say ā€œit measures the rain amountā€ but my weewx setup has a few other rain related sensors as well. E.g. there is a rain rate, which changes immediately as soon as the first few drops made the thingy go ā€œclickā€. The delay between first drop and sensor update is probably within 30 seconds. Thatā€™s not enough for you? Cheers

Hi there @Remko and thanks for the clarification!

Do you know by any chance if those customized sensors can be purchased from some community member?

thanks

It does measures rain rate etc. you are correct.

That is true as well, but I did notice some delay there. There needs to be some reasonable amount of rain and since I also use the information to close my awning for example I want an immediate response.

I did notice yesterday that my funnel was a bit clogged with some dirt, so maybe that also was a problem. We just did not have much rain lately so my checks are with using the garden hoseā€¦:wink:

Oh wellā€¦I have both things now and all works fine

1 Like

I donā€™t know, but it is really, really easy to build. Took me 15 minutes total.

Thanks for that. Iā€™m familiar with what you say because I run a 433Mhz receiver an a weather station set by Oregon Scientific. A rain gauge clearly does not cut it for my use case.

There are lots of moisture/water sensors, for basements and laundry rooms, for example. Iā€™m sure one of those would work if you donā€™t want to roll your own. Still, itā€™s very easy to de-solder the reed switch in a door sensor and turn it to another use. Itā€™s a great trick to have up your sleeve if you need a sensor which doesnā€™t come ready-made.

I bought a sainlogic ws0310 and canā€™t for the life of me figure out how to connect it to HA. their webui has no options for cusotm servers to connect to ecowitt. Can you provide any tips or tricks

If itā€™s 433 MHz from the station to the display, use RTL433 add-on to bring in the data.

Alternatively you can spoof the wunderground server address and connect the station to weewx.

Hi!

Sorry to bump this post but, could you tell me about the frequency the data gets updated?

Iā€™m interested in wind velocity to close some awings Iā€™m installing this summer.

Thanks!

Hello, i have a question ?
How exactly did you proceed, Iā€™ve already tried it but somehow I canā€™t get it to work. Do I have to change the port somewhere ?

thats the only thing I found:

Page 11, item 2 indicates the WS0310 uses 433 MHz to transmit data from the station to the base. Buy an RTL2832 USB receiver, and a 6-inch USB extender cable to place the receiver away from your HA system. Install the RTL433 add-on, configure your device code and all your data will be available as MQTT sensors.

Here is the GitHub page for device ID 153. It will give you an idea of the sensor data returned.

FYI, here is the rtl433.conf file contents for a WS020T Sainlogic weather station. The lines indicate the RTL-SDR device in use (zero), the receiving frequency (433.92 MHz), the device protocol to use (153 is Sainlogic WS020T), and the output is what generates the mqtt data values from the 433 MHz messages. Use your own MQTT username and password.

device      0
frequency   433.92M
protocol    153
convert     si
report_meta new_model
output      mqtt://localhost:1883,user='rtl433',password='password',retain=${retain}
2 Likes

Did you ever get this working? I actually just bought the same one after seeing other people saying they got their sainlogic stations working but looks like that might not work as easily anymoreā€¦

EDIT: I ended up following @FredTheFrog 's suggestion and got that rtl433 usb device. Thank you @FredTheFrog !

So I got this working but the config you shared needs to be modified a little.
specifically the password part of the mqtt

Here is my working rtl433.config:

device      0
frequency   433.92M
protocol    153
convert     si
report_meta new_model
output      mqtt://core-mosquitto:1883,user=YYY,pass=XXX,retain=${retain}

I did notice I received a notification in logs that said using config was deprecated thoughā€¦

The only problem Iā€™m having now is I need to change the units of measurements that home assistant is displaying. For example wind speed is being reported in km/s but Iā€™d like to see it in miles per hour. Same with rain, this one is being measured in millimeters but Iā€™d like it to be in inches.

Do you know where I would adjust this? Cant seem to find where to make this changeā€¦

Excellent question. Now that you have the raw MQTT sensors, you can use Home Assistantā€™s `template sensorā€™ to convert units of measurement:

sensor:
  - platform: template
      cotech_376959_121_wind_mph:
        friendly_name: "Wind Speed Miles per Hour"
        unique_id:     "Wind Speed MPH"
        value_template: "{{ (states('sensor.cotech_367959_121_wind_avg_m_s') | float(0.0) | round(1) * 0.6213712) | round(1) }}"
        unit_of_measurement: 'mph'
        
      cotech_376959_121_gust_mph:
        friendly_name: "Gust Speed Miles per Hour"
        unique_id:     "Gust Speed MPH"
        value_template: "{{ (states('sensor.cotech_367959_121_wind_max_m_s') | float(0.0) | round(1) * 0.6213712) | round(1) }}"
        unit_of_measurement: 'mph'
        
      wind_dir_abbrev:
        friendly_name: "Wind Direction Abbrev"
        unique_id:     "Wind Direction Abbrev"
        value_template: >-
          {% set degrees = states('sensor.cotech_367959_121_wind_dir_deg')   | int %}
          {%   if degrees >=   0 and degrees <=  11 %}
            North
          {% elif degrees >=  12 and degrees <=  33 %}
            North-Northeast
          {% elif degrees >=  34 and degrees <=  56 %}
            Northeast
          {% elif degrees >=  57 and degrees <=  78 %}
            East-Northeast
          {% elif degrees >=  79 and degrees <= 101 %}
            East
          {% elif degrees >= 102 and degrees <= 123 %}
            East-Southeast
          {% elif degrees >= 124 and degrees <= 146 %}
            Southeast
          {% elif degrees >= 147 and degrees <= 168 %}
            South-Southeast
          {% elif degrees >= 169 and degrees <= 191 %}
            South
          {% elif degrees >= 192 and degrees <= 213 %}
            South-Southwest
          {% elif degrees >= 214 and degrees <= 236 %}
            Southwest
          {% elif degrees >= 237 and degrees <= 258 %}
            West-Southwest
          {% elif degrees >= 259 and degrees <= 281 %}
            West
          {% elif degrees >= 282 and degrees <= 303 %}
            West-Northwest
          {% elif degrees >= 304 and degrees <= 326 %}
            Northwest
          {% elif degrees >= 327 and degrees <= 348 %}
            North-Northwest
          {% elif degrees >= 349 and degrees <= 359 %}
            North
          {% else %}
            ???
          {% endif %}
1 Like

Thank you for the help!

Does this just need to be added to /config/sensors/templates.yaml and thats it?