element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Members
    Members
    • Benefits of Membership
    • Achievement Levels
    • Members Area
    • Personal Blogs
    • Feedback and Support
    • What's New on element14
  • Learn
    Learn
    • Learning Center
    • eBooks
    • STEM Academy
    • Webinars, Training and Events
    • More
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • More
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • More
  • Products
    Products
    • Arduino
    • Dev Tools
    • Manufacturers
    • Raspberry Pi
    • RoadTests & Reviews
    • Avnet Boards Community
    • More
  • Store
    Store
    • Visit Your Store
    • Choose Another Store
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
Arduino Projects
  • Products
  • Arduino
  • Arduino Projects
  • More
  • Cancel
Arduino Projects
Blog Weather Station that lasts months!
  • Blog
  • Forum
  • Documents
  • Events
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Arduino Projects requires membership for participation - click to join
Blog Post Actions
  • Subscribe by email
  • More
  • Cancel
  • Share
  • Subscribe by email
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
Author: vimarsh_
Date Created: 12 Oct 2019 4:54 PM
Views: 1533
Likes: 10
Comments: 8
  • mqtt
  • arduino iot
  • energyharvestingch
  • projects
  • esp8266
  • weather station
  • iot
Related
Recommended

Weather Station that lasts months!

vimarsh_
vimarsh_
12 Oct 2019

Introduction

Energy Harvesting is one of the most important topic for sustainability. We have lot of connected devices > be it smart home devices, city monitoring devices, industry specific devices,etc. Mostly all of them need a continuous source of power but for some of the major use cases of just monitoring the place and sending the data every 1 hour or 30 min the energy is wasted for the rest of the time. Solar Power is also one of the only "free" source of energy and its widespread adoption is happening. I wanted to use solar panel with low frequency of sending data to never think of the weather station.

For Ex: Even when we are not using our smartphones to browser the internet, the time when its just connected to network wastes power.

So, I wanted to make a weather station for myself which I never need to think of. With the current implementation I don't even need to look after the device.

 

The Concept

My goal was simple: Make a weather station that lasts long, really long.

      

 

Hardware

Micro Controller

I wanted to use a micro controller that consumes very low power during sleep or when inactive. I also wanted it to have some connectivity to connect is to my network and then to internet to make in an IoT device and accessible from anywhere. I decided to use the ESP8266 - a micro-controller with inbuilt WiFi that uses only 20μA during deep sleep. A prefect choice for the application. I am using the Wemos D1 mini which is small development board and based on some articles I read is closest to raw ESP8266 in terms of power consumption!

Credit: https://randomnerdtutorials.com/

Wemos d1 Mini that I used for the project

 

 

Sensor

With the microcontroller decided it was time for me to select a sensor. I chose the BME280 which I had already and in my opinion is the best. Although there may be some better ones that exist. The BME280 sensor can measure temperature, humidity as well as Air Pressure with great accuracy. I am using the Adafruit BME280 sensor. It also only It is also very accurate in its measurements.

I wanted to upgrade it to BME680 that also adds a gas sensor to BME280 but it is not widely available in my country.

Datasheet: https://cdn-shop.adafruit.com/datasheets/BST-BME280_DS001-10.pdf

  Sensor in the device

 

Battery and Charging Circuit

I used a random Samsung 18650 - FM battery with 2.2Ah battery and connected it to a charging circuit. If we use two batteries in parallel connection the capacity is doubled.

You can find a Lithium ion cell in an old laptop battery or just use a power bank (with solar panels)*!

 

*Although the power banks with solar panels are not recommended to charge mobile phones because phones need lot of energy and small solar panel cannot charge it fast but for this implementation and low current use it can be very well suited.

 

 

 

Solar Panels

I have huge solar panels on the roof of the house to which I can directly connect my weather station to keep it charged. But a small 6v 100mA solar cell can also keep the battery charged forever. You will need a PCB that can also charge the battetry from solar power. A lot of cheap PCBs exist like this from AliExpress that can charge the battery from solar panels and also deliver 5V power.

         Small Solar Cell

Solar Panels on the roof my house.

Schematic

This is the schematic for the project. Basically the sensor is connected to the device with I2C communication and the Reset pin of Wemos is connected to D0 pin. It is powered directly with USB.

https://easyeda.com/vimarsh244/low-power-weather-station

 

Software

ThingSpeak

 

ThingSpeakTm is an IoT analytics platform service that allows you to aggregate, visualize and analyze live data streams in the cloud. ThingSpeak provides instant visualizations of data posted by your devices to ThingSpeak. With the ability to execute MATLABRegistered code in ThingSpeak you can perform online analysis and processing of the data as it comes in. ThingSpeak is often used for prototyping and proof of concept IoT systems that require analytics.

We are using ThingSpeak's REST API to send data. https://in.mathworks.com/help/thingspeak/write-data.html

 

With ThingSpeak we can see our data over the cloud from anywhere and it also stores all the data for a long long time which can help us for analytics about weather in a region. It can be used in cities near crossroads, near dump-yards or where long time data can help understand the pattern of weather. It can also be used in forests with use of LoRa or Sigfox to transmit data over long distances and get alerted from forest fires and understand temperature patterns to help prevent it.

 

Code

For debugging purposes uncomment the Serial.begin(<>) line because in regular use the print statements can increase the time for which it remains powered on.

 

Explanation:

First of all the ESP8266 boots up and connects to the WiFi.

Then it checks if the BME280 sensor is working properly.

After that it reads the temperature, humidity and pressure value.

At the end it creates a string request and using ThingSpeak REST API sends a request its server.

Then it goes into deep-sleep until it is waked after 10 minutes by the RTC on the board.

It wakes up with hard reset and repeats the cycle again.

 

Battery Life

Even though the deep sleep current for ESP8266 is 20uA I could measure 0.3mA which can be dues to the charging circuit or the whole development board. With those values I have calculated the following battery life.

{gallery}

If the data is sent every 10 minutes

If the data is sent every 20 minutes

If the data is sent every 30 minutes

If the data is sent every hour

A great Battery Life and other calculator: https://www.omnicalculator.com/other/battery-life

 

With the current implementation my weather station if does not get any power will last 3 months without external power. Surprisingly if I add this small solar cell to the circuit then it can run for 2 months longer! So with a good 6v solar panel that is commonly available the project doesn't even ever need to be connected to external power.

 

Result

 

You can see the weather data of my region on ThingSpeak: http://tiny.cc/WeatherStation

Readings from my Weather Station

 

Video

You don't have permission to edit metadata of this video.
Edit media
x
Upload Preview

Anonymous

Top Comments

  • DAB
    DAB over 2 years ago +5

    My store bought weather station used solar cells to trickle charge the batteries, which reduced the size of the batteries and kept the system small.

    So far I have not had to change the batteries after nearly…

  • dubbie
    dubbie over 2 years ago +4

    A good solution. It will be interesting to see how long it actually lasts. Sometimes the battery chemistry just isn't up to long time periods.

     

    Dubbie

  • neilk
    neilk over 2 years ago +4

    Hi @vimarsh_ A nice project. I like the idea of trying to keep the battery charged via a Solar Panel - it's on my to do list! It will be interesting to see how long it can last

     

    If you look further…

  • vimarsh_
    vimarsh_ over 2 years ago in reply to mudz

    I am using the same battery and charger to power the weather station. The battery is being charged and discharged according to the specs. The battery charging circuit is the same that came inside the power bank.

    And yes, it is still being powered and sending data. Since I have a solar system I just connect 5V directly to the charging circuit so that it doesn't need to be charged! Although it may reduce the battery life.

     

    Thanks for your feedback.

    -Vimarsh

    • Cancel
    • Up +1 Down
    • Reply
    • More
    • Cancel
  • mudz
    mudz over 2 years ago

    Project idea is good. Many are already using this kind of weather station at remote locations.

    Loved the use of D1 mini and BME280 sensor module.

    Lot's of information missing and too many ifs and buts for the project, some are already pointed out in comments.

    Moreover, those samsung's battery need special charges as mentioned on their site and are dangerous if not used properly. But, It seems you are not using these battery and that charger.

    How are you powering this weather system now, as it seems it is still connected to cloud and working properly.

    I would have loved this, if you have used little solar panels instead of using those large solar panels.

     

    Keep it up

    -Mudz

    • Cancel
    • Up +2 Down
    • Reply
    • More
    • Cancel
  • aabhas
    aabhas over 2 years ago

    A very nice project vimarsh_

    Do update us in community that how long does it last , would be helpful for other projects requiring power optimisation.

    Thanks

    Aabhas Senapati

    • Cancel
    • Up +3 Down
    • Reply
    • More
    • Cancel
  • vimarsh_
    vimarsh_ over 2 years ago in reply to neilk

    Thanks for the feedback!

    You are right probably the sensor will consume power and also the battery bank circuit in bumping up the voltage. So I could measure little more current.

     

    If you want to calculate the battery life this is a great website: https://www.omnicalculator.com/other/battery-life

     

    As dubbie said, I also think that battery chemistry especially of Li-ion is not great and over time its capacity may also reduce. I will find out how the battery lasts and keep the post updated.

     

    Vimarsh

    • Cancel
    • Up +4 Down
    • Reply
    • More
    • Cancel
  • neilk
    neilk over 2 years ago

    Hi @vimarsh_ A nice project. I like the idea of trying to keep the battery charged via a Solar Panel - it's on my to do list! It will be interesting to see how long it can last

     

    If you look further down the article from randomnerdtutotials.com, you will see the comment in relation to Deep Sleep :

    This is the most power efficient option and the ESP chip only draws approximately 20uA. However, if you use a full-feature development board with built-in programmer, LEDs, and so on, you won’t be able to achieve such a low power state

     

    My own investigations: https://www.element14.com/community/people/neilk/blog/2019/02/14/investigating-the-power-consumption-of-a-wemos-d1-mini-esp8266       suggest that the Wemos D1 mini board consumes over 200 uA  when in Deep Sleep. In your case, the BME680 will probably consume some power as well.

     

    When the system is awake, much more power will be consumed, especially during startup and when communicating via WiFi.

     

    My system runs for 17 days, taking readings at 1 minute intervals; I assume that if I increased the time interval to 10 minutes, it might last 170 days?? I haven't done that yet. As @dubbie says, battery chemistry may not be up to long time periods.

     

    Thanks for sharing this

     

    Neil

    • Cancel
    • Up +4 Down
    • Reply
    • More
    • Cancel
>
Element14

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2022 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • Facebook
  • Twitter
  • linkedin
  • YouTube