Lab 9 - IoT Hello World and Stories
In this lab session, we will:
- Explore how to design a pitchable story for an IoT scenario
- Get first hands-on experience with IoT hardware (Wemos D1 Mini, Buttons and Led) and networking them into a small IoT system (or depending on your opnion - NOTYET-IoT system)
0. IoT Kit
You can already start with task one (see below), but while doing that, please also pick up an IoT kit (one per pair) from us.
1. IoT Story
- Research one of the following in pair (ca. 20minutes):
- You build home gateways (basically you want to create a company like Loxone)
- You build a middle school emergency remote for schools against robberies
- You have to record current wind and temperature data all over Estonia to allow decisions for wind farms management.
- While doing that, create a pitchable story (like example in lecture)
- Meet neighbor team(s) (ask for other online team on teams if not in class)
- Present scenario to neighbors (2x5minutes)
- Discuss potential problems/challenges (5min)
- Discuss implementation possibilities (5min)
- Spend only a total of maximum of 45 min on this exercise in the lab (finish and polish outside of class)
2. IoT Hello World
- Work in pair – one person hands-on, one person searches and writes log – switch roles at least 3 times during a regular IoT class (around every 20 minutes - if less programmign or hardware experiments you can change roles less)
- Study and google about the Wemos D1 Mini
- Familiarize yourself with its pinout and ports (what are gpio ports?)
- If you don’t know it, read up or explain in team on “breadboard” and “dupont cables”
- Learn to blink (or turn on and off) the onboard LED on the Wemos D1 Mini (or other ESP8266 or ESP32 based board) with the Arduino IDE
- Install latest version of Arduino Desktop IDE
- Also install CH340 drivers (Mac/Windows)
- Replicate simple hello world from class (check steps in lecture).
- Connect to classroom or home WiFi (or phone hotspot) from ESP8266.
- Toggle the LED (turn on/off) or the blinking remotely via a simple rest call. Remember to check out the Arduino Examples (File -> Examples).
- Program second ESP8266, connect to same network, connect button (read up on pull up resistors), use button to switch on/off the blinking on other ESP8266. It is easier to use a button found in the bag together with leds and resistors instead of a button shield, considering the future tasks.
- Add a second external LED with a resistor (220 or 330 Ohm) on a bread-board to your “output” Wemos and make it possible to control now both LEDs selectively over the rest interface.
- Update your remote controller Wemos with a second button on a breadboard to allow toggling both LEDs.
- Document everything also (especially) failures → in portfolio git folder, “just” link to shared work, after lecture, re-visit at home and reflect on lecture and lab (what went well, what didn’t, what was memorable → train your memory AND critical thinking skill)