1. Basically, an anemometer;

2. Temperature and humidity sensor;

3. Air pressure sensor. As they are the forcasting for strong wind/rain;

4. Connection module to the internets. I use the ESP12 wifi module

5. And , a water proof case, and power bank; Besides, I designed a base board so all the electronic module can be inserted easy, as the attached pictures.

Of course, you can also use a breadboard for this.

In the hardware design, The Anemometer is analog output, so it need to be connected to the ESP12 ADC module, And the BMP180 Barometer use the I2C for communication connect them to ESP12 GPIO4/5, which support the I2C communication, and the DHT 11 to a digital output。

check the open hardwares at Makerfabs.

firmware&software:

Modify the WIFI setting, and MQTT. Of course, if no, you need to register an account, and created a new instance. And modify them in the firmware:

const char* ssid = "xxx";      // Wi-Fi SSID<br>const char* password = "xxx";    // Wi-Fi Password

and the MQTT info (if you not familiar with this, please refer to Makerfabs ESPwatch for the MQTT detailed usage )at:

const char* hostname = "postman.cloudmqtt.com";<br>int port = 16265;
const char* user = "xxx";
const char* user_password = "xxxx";
const char* id = "xxxx";

And in the firmware loop, the ESP12 module read the sensor

or wind/temperature/air preasure by:

int windspeed = analogRead(windpin);humi = dht.readHumidity();
temp = dht.readTemperature();

Upload the firmware to the ESP node MCU board.

The Esp8266 WIFI module send weather’s info to MQTT server, by publish message on topic to MQTT server. Last nodejs get weather’s info from mqtt server,by subscribe topic on save Mqtt server.

I deploy my NODE JS on AWS server, so anybody that interest on this can access my wind station at:
http://34.220.205.140:8080/wind