Simply weather station on ESP8266
Branch: master
Clone or download
Latest commit 701e70b Feb 17, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
bin Add files via upload Nov 8, 2018
DHT.cpp Add files via upload Oct 24, 2018
DHT.h Add files via upload Oct 24, 2018
MQTT.cpp Add files via upload Oct 24, 2018
MQTT.h Add files via upload Oct 24, 2018
PubSubClient.cpp Add files via upload Oct 24, 2018
PubSubClient.h Add files via upload Oct 24, 2018
PubSubClient_JSON.h Add files via upload Oct 24, 2018
README.md Update README.md Feb 17, 2019
Screenshot_20190216.png Add files via upload Feb 16, 2019
WindStationAP.jpg Add files via upload Oct 27, 2018
esp8266-WindStation.ino Add files via upload Oct 27, 2018
windstation.jpg

README.md

esp8266-WindStation

Simply and very low cost weather station on ESP8266 board for windguru.cz and narodmon.com for Arduino

An example of building a weather station on the ESP8266 Wemos D1 mini board (cost ~$4), Davis Anemometer ( ~$120) and DHT11 ( ~$1): alt tag

Installation of the humidity/temperature sensor DHT-11 is option. You can set DHT-22 ( ~3$) or DHT-21 ( ~4$) instead it, which has a lot more accuracy and can show negative temperatures. Also, to minimize final costs, instead of the Davis Anemometer, you can use the cheap La Crosse TX23U sensor ( ~$50). Or even build an anemometer yourself from old computer fan, example on russian http://skootsone.yolasite.com/wind-pow-02.php

Flash a program to the ESP8266 with Arduino IDE. After first run ESP start as Access Point mode with SSID "WindStationAP" and default password "87654321", spins up a DNS and WebServer (default ip 192.168.4.1). Using any wifi enabled device with a browser (computer, phone, tablet) connect to the newly created Access Point. Set some parameters and click "Save": alt tag

After this ESP will try connect to internet. If successful, settings save to flash memory. If not, all settings are reset and WindStation start as Access Point again

Optionally, the station supports Deep Sleep mode for cases when only power is available from batteries or solar panels. In this mode, the consumption of approximately 6mAh (15 sec active/ 5min sleep) whereas in normal mode 80mAh

You can use MQTT control panel for real time viewing/adjust parameters and variables of weather station. Below ready-to-use template for the MQTT Dash application https://play.google.com/store/apps/details?id=net.routix.mqttdash&hl=uk

Click to expand [{"mainTextSize":"LARGE","postfix":" m/s","prefix":"","textColor":-192,"enableIntermediateState":true,"enablePub":false,"enteredIntermediateStateAt":1540661885,"intermediateStateTimeout":10,"jsOnReceive":"","jsonPath":"$.Avr","lastJsonPathValue":"5.62","lastPayload":"{\"Min\": 1.80, \"Avr\": 5.62, \"Max\": 9.90, \"Dir\": 297}","qos":0,"retained":false,"topic":"windpoint/wind","topicPub":"windpoint","updateLastPayloadOnPub":false,"id":"9b0b155b-29c1-48fa-9085-7c54b0f73bbe","jsBlinkExpression":"","jsOnDisplay":"","jsOnTap":"","lastActivity":1540661855,"longId":5,"name":"WindAvr","type":1},{"decimalPrecision":0,"displayPayloadValue":true,"maxValue":360.0,"minValue":0.0,"postfix":"°","prefix":"","progressColor":-192,"enableIntermediateState":true,"enablePub":false,"enteredIntermediateStateAt":1540661885,"intermediateStateTimeout":1,"jsOnReceive":"","jsonPath":"$.Dir","lastJsonPathValue":"297","lastPayload":"{\"Min\": 1.80, \"Avr\": 5.62, \"Max\": 9.90, \"Dir\": 297}","qos":1,"retained":false,"topic":"windpoint/wind","topicPub":"windpoint","updateLastPayloadOnPub":false,"id":"716bae44-f2f5-4ce7-9f79-61292c0d2f2f","jsBlinkExpression":"","jsOnDisplay":"","jsOnTap":"","lastActivity":1540661855,"longId":13,"name":"Direction","type":3},{"mainTextSize":"MEDIUM","postfix":" m/s","prefix":"","textColor":-12550144,"enableIntermediateState":true,"enablePub":false,"enteredIntermediateStateAt":0,"intermediateStateTimeout":0,"jsOnReceive":"","jsonPath":"$.Min","lastJsonPathValue":"1.8","lastPayload":"{\"Min\": 1.80, \"Avr\": 5.62, \"Max\": 9.90, \"Dir\": 297}","qos":0,"retained":false,"topic":"windpoint/wind","topicPub":"sensor","updateLastPayloadOnPub":false,"id":"fd6e2415-bad0-404c-a43b-b164171b8017","jsBlinkExpression":"","jsOnDisplay":"","jsOnTap":"","lastActivity":1540661855,"longId":4,"name":"WindMin","type":1},{"mainTextSize":"MEDIUM","postfix":" m/s","prefix":"","textColor":-65472,"enableIntermediateState":true,"enablePub":false,"enteredIntermediateStateAt":0,"intermediateStateTimeout":0,"jsOnReceive":"","jsonPath":"$.Max","lastJsonPathValue":"9.9","lastPayload":"{\"Min\": 1.80, \"Avr\": 5.62, \"Max\": 9.90, \"Dir\": 297}","qos":0,"retained":false,"topic":"windpoint/wind","topicPub":"sensor","updateLastPayloadOnPub":false,"id":"7eed0deb-cb11-4ec5-ab1f-9ce9305fb341","jsBlinkExpression":"","jsOnDisplay":"","jsOnTap":"","lastActivity":1540661855,"longId":6,"name":"WindMax","type":1},{"mainTextSize":"LARGE","postfix":"°","prefix":"","textColor":-1,"enableIntermediateState":true,"enablePub":false,"enteredIntermediateStateAt":0,"intermediateStateTimeout":0,"jsOnReceive":"","jsonPath":"$.Temp","lastJsonPathValue":"10.0","lastPayload":"{\"Temp\": 10.00, \"Humidity\": 87.00}","qos":0,"retained":false,"topic":"windpoint/temp","topicPub":"sensor","updateLastPayloadOnPub":false,"id":"923e726b-7edd-40dd-ad5d-6831cd6670e0","jsBlinkExpression":"","jsOnDisplay":"","jsOnTap":"","lastActivity":1540661854,"longId":1,"name":"Temperature","type":1},{"mainTextSize":"LARGE","postfix":"%","prefix":"","textColor":-1,"enableIntermediateState":true,"enablePub":false,"enteredIntermediateStateAt":0,"intermediateStateTimeout":0,"jsOnReceive":"","jsonPath":"$.Humidity","lastJsonPathValue":"87.0","lastPayload":"{\"Temp\": 10.00, \"Humidity\": 87.00}","qos":0,"retained":false,"topic":"windpoint/temp","topicPub":"","updateLastPayloadOnPub":true,"id":"4db3b3ca-d9d4-472f-af7c-f8ed3403a0a6","jsBlinkExpression":"","jsOnDisplay":"","jsOnTap":"","lastActivity":1540661854,"longId":7,"name":"Humidity","type":1},{"decimalPrecision":0,"displayPayloadValue":true,"maxValue":140.0,"minValue":20.0,"postfix":"","prefix":"","progressColor":-1,"enableIntermediateState":false,"enablePub":true,"enteredIntermediateStateAt":1540661885,"intermediateStateTimeout":10,"jsOnReceive":"","jsonPath":"","lastPayload":"90","qos":1,"retained":false,"topic":"windpoint/kc_wind","topicPub":"windpoint","updateLastPayloadOnPub":false,"id":"4d50b3f6-8f21-40b9-b90b-17031b769896","jsBlinkExpression":"","jsOnDisplay":"","jsOnTap":"","lastActivity":1540661809,"longId":8,"name":"kcWind","type":3},{"iconOff":"ic_cloud_download","iconOn":"ic_cloud_download","offColor":-1,"onColor":-1,"payloadOff":"sensor","payloadOn":"sensor","enableIntermediateState":true,"enablePub":true,"enteredIntermediateStateAt":0,"intermediateStateTimeout":0,"jsOnReceive":"","jsonPath":"","lastPayload":"sensor","qos":1,"retained":false,"topic":"windpoint","topicPub":"","updateLastPayloadOnPub":true,"id":"df5bfda3-d3b7-4c92-8fe7-a425e20cfd95","jsBlinkExpression":"","jsOnDisplay":"","jsOnTap":"","lastActivity":1540661840,"longId":9,"name":"Update","type":2},{"mainTextSize":"SMALL","postfix":"","prefix":"","textColor":-1,"enableIntermediateState":true,"enablePub":false,"enteredIntermediateStateAt":0,"intermediateStateTimeout":0,"jsOnReceive":"","jsonPath":"","lastPayload":"ADC:781","qos":1,"retained":false,"topic":"windpoint/debug","topicPub":"","updateLastPayloadOnPub":true,"id":"d8222a02-352e-48d0-b466-b78e9a382a19","jsBlinkExpression":"","jsOnDisplay":"","jsOnTap":"","lastActivity":1540661885,"longId":11,"name":"Debug","type":1},{"iconOff":"ic_explore","iconOn":"ic_explore","offColor":-1,"onColor":-1,"payloadOff":"adc","payloadOn":"adc","enableIntermediateState":false,"enablePub":true,"enteredIntermediateStateAt":0,"intermediateStateTimeout":0,"jsOnReceive":"","jsonPath":"","lastPayload":"adc","qos":1,"retained":false,"topic":"windpoint","topicPub":"","updateLastPayloadOnPub":true,"id":"cf88116a-4130-45bc-b77f-f6a0895b5548","jsBlinkExpression":"","jsOnDisplay":"","jsOnTap":"","lastActivity":1540661885,"longId":12,"name":"Read ADC","type":2},{"iconOff":"ic_flash_on","iconOn":"ic_flash_on","offColor":-1,"onColor":-1,"payloadOff":"reset","payloadOn":"reset","enableIntermediateState":true,"enablePub":true,"enteredIntermediateStateAt":0,"intermediateStateTimeout":0,"jsOnReceive":"","jsonPath":"","lastPayload":"reset","qos":1,"retained":false,"topic":"windpoint","topicPub":"","updateLastPayloadOnPub":true,"id":"aabe562f-5790-4d2a-ae3b-60526dfd4621","jsBlinkExpression":"","jsOnDisplay":"","jsOnTap":"","lastActivity":1540372437,"longId":10,"name":"Reset!","type":2}]

MQTT Dash screenshot: alt tag