This project is a lot like my last project, but there's one big difference, it's internet connected! I'm using an Arduino Yun Shield and Temboo to pull the current temperature from the Yahoo Weather API and display it on a 16x2 LCD. Press a button, and you've got your temperature!
The Arduino Starter Kit provides all the parts needed other than the Yun Shield. The parts are listed above. You can use whichever boards work with the Yun Shield. (I'm pretty sure most do). If you want this project to truly be portable, you should use a USB battery pack, because a 9V battery just isn't good enough to power the Arduino Uno and Yun Shield.
First, you'll need to head over to Temboo's website and create an account(Or log in, if you already have one). If you're going to make an account, why not use my referral link! If you sign up with my link, you'll get an extra 500 calls per month! A call is when your Arduino requests info from Temboo, and on the free plan you only get 250 a month. Once you're done with that, go to this page. That's the page for the Yahoo Get Temperature Choreo. A Choreo is basically code that Temboo makes, and it makes it easy for you to connect your Arduino to different API's. This Choreo makes it easy to get weather info from the Yahoo Weather API. Anyway, once you're their, go to the top and select what board you are using, and then select Arduino Yun Shield.
Then scroll down until you see the header file, copy that code, and paste it into the "TembooAccount.h" file down below in the code. The header file contains information about your Temboo account and board information.
Before you upload the code, you want to find this line of code:
GetTemperatureChoreo.addInput("Address", "Put your ZIP code or street address here");
And put your ZIP code or street address where it says to.
Once you upload the program, the first screen that shows up says, "Waiting for Bridge to Begin." Bridge is how your Arduino communicates with the Yun Shield. Once it begins (Also indicated by the red light on the shield turning on), the screen will display a temperature label, but no temperature. Press the button, and after a few seconds, you've got the temperature!
- Remember, you only get 250 calls per month(unless you sign up with my referral link, you'll get an extra 500pm), and every time you press the button, a call is used.
- If you are using the free plan on Temboo, your App Key changes every month, and if the temperature isn't showing up, that's probably why. To fix this, just go back to the Yahoo Get Temperature Choreo(link above), choose your board again, and then copy the header file and paste it into the TembooAccount.h file
- This time I decided to use a potentiometer so you could adjust the contrast
- If you want the temp. to be in Celsius, add this line of code:
Before this line of code:
- If you are using and Arduino Uno or Mega 2560, you'll need to short these 2 pins: