All course materials for the IEEE Northern Virginia Section Internet of Things Hand On Weather Station Course June 4, 2016, are available on this page.
COURSE MATERIALS ARE UP TO DATE AS OF 6/9/2016.
- Arduino Sketches
- All course Arduino sketches are in one zip archive.
- After download, extract the files. Copy the extracted folders to your Arduino Sketchbook folder. This is usually Documents/Arduino. If you are not sure, run the Arduino IDE and open menu item File | Preferences. The first item on the dialog is “Sketchbook location”.
- IEEE_IoT_Sketches_2016-06-06
- IEEE_IoT_Sketch01_Blink – blinks the onboard LED
- IEEE_IoT_Sketch02_Hello_World – displays a message on the LCD
- IEEE IoT_Sketch03 – Standalone Weather Station – displays sensor data on the LCD and serial monitor
- IEEE IoT_Sketch04 – IoT Weather Station – sends data to a ThingSpeak channel – version 6/6/16 – removes WiFi_Sta mode
- IEEE_IoT_Sketch05_Smartphone – uses the SimpleTimer and Blynk libraries to send and receive data from a smartphone app – version 6/6/16 – removes WiFi_Sta mode, adds links to libraries
- IEEE_IoT_I2C_Scanner – scans I2C bus to find addresses of all connected devices. Use this if you do not know the address of the LCD.
- IEEE_IoT_Sketches_2016-06-06
- Library files. Instructions for installation are included in the course slides.
- SparkFun_HTU21D_Library– also at https://github.com/sparkfun/HTU21D_Breakout
- Arduino-LiquidCrystal-I2C-Library – also at https://github.com/fdebrabander/Arduino-LiquidCrystal-I2C-library
- Adafruit_BMP085_Modified – adds keywords.txt to Adafruit distribution
- SimpleTimer – used only in Sketch05 to schedule reporting tasks to Blynk and ThingSpeak. Download the zip file from https://github.com/schinken/SimpleTimer
- Handout (includes NodeMCU pinout, parts list, and resource links)
- ThingSpeak Scripts – paste these text file scripts into blank ThingSpeak MATLAB Visualizations. See the tutorial at https://www.mathworks.com/help/thingspeak/matlab-visualizations-app.html
- Dewpoint_in_Fahrenheit – chart shows temperature and dewpoint in Fahrenheit. Dewpoint is calculated from temperature and humidity and is the temperature at which condensate will form on a surface.
- Display_Multiple_Channels – displays one field from each of four channels.
- Temperature_Correlation – provides a linear curve fit between temperatures measured by the BMP180 and HTU21D sensors.
- Google_Gauge_JavaScript – instructions at http://community.thingspeak.com/tutorials/google/display-a-google-gauge-visualization-using-thingspeak-plugins/. Note: this works only on your Private view.
- Course Construction Slides – version 6 June 2016:
- IEEE IoT Membership – Introduction to IoT and IEEE IoT resources.
- IEEE IoT Sketch01 – Blink – Unbox the kit of parts, install the Arduino IDE and ESP8266 core, and run the first sketch.
- IEEE IoT Sketch02 – Hello World – Description of I2C bus, wire the level converter, print a message to the LCD.
- IEEE IoT Sketch03 – Standalone Weather Station – add temperature, humidity, barometric sensors and light. sensors, read the data on the LCD and serial monitor.
- IEEE IoT Sketch04 – IoT Weather Station – open a ThingSpeak account, configure the channel, stream IoT data, add MATLAB visualizations.
- IEEE IoT Sketch05 – Smartphone Weather Station– open a Blynk account, create a smartphone app, read and control the weather station.
- Course Informational Slides – version 4 June 2016:
- Supporting Documents
- IEEE IoT Schematic
- Weather station wiring (later)
- IEEE_IoT_Parts_List
- NodeMCU schematic
- HTU21D temperature/humidity sensor condensed datasheet & breakout schematic
- BMP180 barometric pressure/temperature/altitude sensor datasheet
- BMP180 breakout schematic (later)
- Level Shifter schematic
- Sample ThingSpeak feed
Data Streamed from Multiple IEEE Weather Stations:
[iframe_loader src=”https://thingspeak.com/apps/matlab_visualizations/75132″]