Mini Weather Station

No doubt this has been done 100 times before but I thought I’d share my little weekend project.

Hardware:
NodeMCU
12v to 5v power supply
1 x BME280 (temp, humidity, atmospheric pressure)
1 x BH1750 (luminosity)
1 x LCD Screen
1 x Plastic box
1 x Some stainless steel
1 x Plenty of hot glue

I found the LCD screen from my very first arduino kit from years ago and wondered if I could use it in the project. Happy to discover that Tasmota supports the LCD display and sends data from the local sensors to it.
Both the sensors and the screen are I2c so the wiring is pretty simple.

The stainless steel was left over from a recent BBQ repair and was cut by hand which is why it looks a bit wonky.

Nicely embedded in to lovelace home screen.

3 Likes

Nice little project. I’m thinking of replacing all my ESP DH22 sensors with BME280s after reading this:

My BH1750 tops out at 50,000 Lux in full sun - still looking for one that goes higher.

If you ever need to do it again these can make nice square holes:

Might be hard going on stainless though.

A bezel is a good way of covering wonky edges too:

http://www.hobbytronics.co.uk/lcd-bezel-16x2

Nice. There’s a tool for everything!
The BH1750 is mounted pointing down through a small hole in the box. The highest I’ve seen it go in full sunlight is 10k Lux. Not really very accurate but it’s all relative and useful for triggering stuff when the light levels drop.

1 Like

Nice Project.
Is that animated weather card? I couldn’t get that to work and should be pretty simple.

Care to share the code?

It took me a couple of goes to get it working.
First you need darksky up and running with the normal weather card.
Then I followed these instructions
Make sure you have the js file in the right place.

Add this code to your lovelace.ui with raw config editor

resources:
  - url: /local/custom-lovelace/weather-card/weather-card.js
    type: module

Then enter this code in to a manual card:

cards:
  - type: iframe
    url: >-
      https://embed.windy.com/embed2.html?lat=50.785&lon=-3.911&zoom=7&level=surface&overlay=wind&menu=&message=&marker=&calendar=&pressure=&type=map&location=coordinates&detail=&detailLat=51.533&detailLon=0.000&metricWind=default&metricTemp=default&radarRange=-1
    aspect_ratio: 80%
  - type: 'custom:weather-card'
    entity: weather.dark_sky
type: vertical-stack

That will give you the windy animation and the animated weather card in a vertical stack.

1 Like

Got it working, thanks!