🌤️ DIY Vevor Weather Station integration

More than 5 years after creating my ☔ DIY Zigbee rain gauge I decided it was time for an upgrade. Not because it wasn’t working anymore (it was still running on the original battery!), but because I also wanted to measure wind and temperature.

I wanted something I could integrate into Home Assistant locally. After some searching I found the Vevor 7 in 1 Weather Station.

It measures:

  • Temperature
  • Humidity
  • Wind speed & gust
  • Wind direction
  • Rain
  • UV Index & lux

It’s also powered by solar, which is really nice. The station itself communicates via 868MHz RF signals to the screen, and the screen has Wifi. There are some options to retrieve the values via an external cloud service, but I was interested in a local integration, so I didn’t even bother connecting it to Wifi.

Instead, I bought a 868MHz CC1101 module and connected it to an ESP32 running ESPHome to try to intercept and decode the RF signals sent by the station. You will need to solder the antenna and wires to this module and the ESP32.

After some time, I got the decoder working, thanks to examples from the rtl_433 community. To get it into Home Assistant, I created an ESPHome external component: GitHub - parrel/esphome-vevor-7in1 · GitHub

It’s reporting the values every 20 seconds. It’s been running fine now for 3 months, so I’m ready to share it with the community!

And with some minor tweaks, you can build the same cool rain graphs as done in ☔ DIY Zigbee rain gauge.

PS, when HA gets the ability to receive RF signals from ESPHome devices (proxy, like can already be done for BLE and IR signals) I will also build a Home Assistant component for this weather station.

I would have loved this a couple of years ago. Rather than have to install Adguard to spoof it or try to figure out the frequency and codes, I sold the thing at a flea market and bought another Ecowitt.
Thanks for contributing to the community!