Comments: Weather Shield Hookup Guide

Pages

Comments 25 comments

  • Hello. I’m using the Weather Shield (not this but the last release) with an Arduino M0 and the recommended codes, but I can not get valid values for the measurements. I tried using the sheild in an Arduino UNO and everything goes well, but with Arduino M0 I’m getting something like (PS: I’m using the last version of Arduino IDE and i tried in previous versions too):

    Humidity = -5.81%, temp_h = -46.58F, Pressure = -999.00Pa, temp_p = -1766.20F

    Tanks, André

    • Hi to all, I’m experiencing the same problem with arduino mega2560. Arduino UNO works great! Is there anyone couls help me? Paolo

  • Hi! Everyone!This is my first real Arduino project. I have a little problem, i’m tring to make a wheater station with this shield in Arduino UNO. The wind direction always return -1 ,but wind speed works great. The same happens Arduino Mega2560.

    Please forgive me for my impolite behavior.

    If anyone can help me out that would be greatly appreciated, thanks!!

  • Anyone have problems with Windspeed when using the IMP Shield? My windspeed works fine when using the SF Weather Shield, SF Weather Meters, and an Arduino Uno R3.

    When I add the Imp Shield to the stack, my wind speeds all report to 0. I’ve checked Digital Pin 3 on the stackable riser on the Imp and WeatherShields. All the conections seem ok.

    Could I try a different digital I/O pin for windspeed? i.e. move the WSPEED to pin 5?

    I’m looking for suggestions on what to try next.. Running out of ideas.

  • I’m using the Sparkfun weather shield with an Arduino Uno. My temperature is consistently a bit high (right now it’s reading 7 to 9 degrees higher than my neighbors' weather stations are showing on wunderground). Is there a typical amount of variance that maybe hasn’t been captured in the sample code? Anyone else see it read high for them?

  • Is there any repo for ALS - PT19? Thank you.

  • Hello! This is my first real Arduino project, I got to say I was sweating a bit as I was soldering (I got a long way to go with that), but it all worked! I have data flowing from all my sensors.

    When I upload the unedited code I get the following warning:

    Sketch uses 16,740 bytes (51%) of program storage space. Maximum is 32,256 bytes.
    Global variables use 1,711 bytes (83%) of dynamic memory, leaving 337 bytes for local variables. Maximum is 2,048 bytes.
    Low memory available, stability problems may occur.
    

    The code is only 465 lines long, is there a way to boost the memory?

    All my cards are made by Sparkfun, I have the redboard with a wifi shield, with the weather shield. I really want to get the wifi shield to work and have my weather data get transmitted to a database or some other storage with eventual upload to an internet site or made available to weatherbug.

    Also, any pointers with getting two shields working together? Can I just take the wifi code and mix it in with the weather station with GPS code? I am worried about it already complaining about low memory!

    If anyone can help me out that would be greatly appreciated, thanks!!

  • I’m trying to use the Weather Shield with an arduino mega. I works fine with an uno, but when I connect it to a mega the temp, humidity and pressure readings are way off (by hundreds or thousands of units). The instructions say that this board can be used with other Arduinos with modifications, but it doesn’t say what those are. I need something bigger than an uno as I’m using more sensors and an ethernet shield to complete my project. Help!!!

    • After quite a bit of tinkering and troubleshooting, my problem was that the SDA and SCL pins were not connected to the Mega. The root cause was a bad Ethernet shield placed between the Mega and the Weather Shield. This same configuration worked ok on the Uno, but not on the Mega. Creating jumpers up to the Weather Shield for SDA and SCL pins solved the problems.

      If your shield returns 999 or 998 for any of the variables, you’re seeing a I2C error code.

  • There’s a bug in the Example Code WITH GPS. Any Windspeed > 0 would be reported as “nan”.

    Code Line 166: float currentSpeed = get_wind_speed(); Should be: float currentSpeed = windspeedmph;

    Then it should report the proper windspeed.

    • You pinned the bug down (thank you) but I respectfully think the fix is different.

      This stays as it is:

      float currentSpeed = get_wind_speed(); 
      

      However, this line inside calcWeather() goes away:

      //Calc windspeed
      //windspeedmph = get_wind_speed(); //This is calculated in the main loop
      

      The reason is because in the main loop we do all our gust detection and recording. If we use your solution you would be testing against the previous reading instead of the most current reading.

      • Hi there. I am having trouble getting a wind speed reading. I can get wind gust and wind direction readings but not wind speed. I have tried both of the above fixes but neither seem to work for me. Any help would be greatly appreciated.

  • The example code ran fine for me in the browser using the Codebender plugin, but I ran into trouble when I tried to download and modify the code to pare down the unused weather station and GPS data in the serial stream. I think it might have something to do with the spaces in the name “Weather Shield Example” but I wasn’t able to figure it out before just copy/pasting everything

    • Hey there, this is Vasilis, the founder of codebender. Can you try cloning the code on codebender and compiling it? It would help to see if there are any issues

  • When using the code without GPS and even with GPS why does the wind speed read Nah or 0 when I have the wind sensor attached?

  • Hi! Everyone! I have a little problem, i’m tring to make a wheater station with this shield but one i have decked into mi Arduino Yun i can’t get data from the sensors, the humidity e pressure sensors say that the i2c request has timed out and the light sensor has a weird ouput, i think that’s because on yun the sda and scl pins have been moved, i would appreciate any kind of help…

  • I wonder if I can add more sensors to the weather shield such as an UV sensor. I’ve been looking for free analog pins but it seems that there is no one free.

    • You are correct - there aren’t any free analog pins. You could hook up a analog multiplexer but it would require a bit of modifying the PCB. There might also be UV sensors with a digital interface available but the ML8511 is just an analog interface. Sorry I don’t have a better solution for you!

      • Good time to learn how to add analog pins to the Arduino. I want to add an UV sensor too!

  • What sort of enclosure would you use with this? Seems like you’d need something exposed to the elements, but still free from getting wet.

    • Funny you should ask! I have recently been working on a tutorial for a weather station on top my house. Here’s a photo of the station. The tutorial should be live in a few days. You can see I am using a solar shield. These allow the free movement of air across the shield, protect it against the elements and even allow light to enter into the enclosure (for daylight tracking). We recommend the one from Ambient Weather. If you buy from them, please say hi for us.


If you've found a bug or have other constructive feedback for our tutorial authors, please send us your feedback!