Siirry suoraan sisältöön

Home Automation with ESP 8266 Workshop (3 cr)

Code: TX00DT60-3001

General information


Enrollment

02.05.2019 - 18.08.2019

Timing

19.08.2019 - 23.08.2019

Number of ECTS credits allocated

3 op

Mode of delivery

Contact teaching

Unit

ICT ja tuotantotalous

Campus

Leiritie 1

Teaching languages

  • English

Seats

0 - 20

Degree programmes

  • Degree Programme in Information Technology
  • Tieto- ja viestintätekniikan tutkinto-ohjelma

Teachers

  • Wolfram Becker
  • Antti Piironen

Groups

  • ICTSUMMER
    ICT Summer School

Objective

Student learns how to use ESP8266 system on home automation applications.

Content

Session 1:
Introducing the ESP8266: Summary of it’s hardware and features, summary of the programming toolchain.
Practical exercise: Learn how to use the Arduino toolchain, how to program and upload your first program, how to debug your program via serial port.
Program Blinky – Our first program: Blink the ?c’s onboard led. Program Blinky 2 – Read an analog input value (voltage) and change the blinking frequency.
Required hardware: Breadboard, NodeMCU12e, potentiometer.

Session 2:
PWM-basics, circuit design to control a power led’s brightness, programming a low pass filter for measurement values, i2c basics.
Practical exercise: Learn how to prototype a circuit using a breadboard, and how to filter measurement values. Program Light up! – Controls a power-led’s brightness. Program Light up! Extended – Adds an OLED display with i2c interface to the led controller. Required hardware: Breadboard, NodeMCU12e, potentiometer, resistors, transistor, power led, OLED-display.

Session 3:
Basics one-wire-bus, a little bit HTTP und HTML,
Practical exercise: Learn how to use the DHT22 sensor and how to program a simple webserver. Program Roomy – Measures the room’s temperature and humidity, outputs measurement values to an OLED-display. Program WebRoomy – Adds a webserver and a website for measurement value visualization.. Required hardware: Breadboard, NodeMCU12e, DHT22, OLED-Display

Session 4:
MQTT messaging protocol basics.
Practical exercise: Learn how to program a MQTT publisher and subscriber to distribute sensor data. Program PubCuty – Publishes sensor data via MQT. Program SubCuty – Subscribes sensor data via MQTT. Required hardware: Breadboard, NodeMCU12e, DHT22, OLED-Display, Raspberry Pi + Mosquito MQTT-Broker.

Session 5:
Introducing Node-Red – a browser based editor to manage IoT-data flow.
Practical exercise: Learn how to build a browser based MQTT dashboard.
Required hardware: Breadboard, NodeMCU12e, DHT22, OLED-Display, PC with MQTT-Broker + Node-Red Runtime.

Teaching methods

Intensive 1 week course with lab exercises.

Further information

Bring your own laptop.

Evaluation scale

0-5

Assessment criteria, satisfactory (1)

Attendance on all laboratory sessions.
Completing practical exercises.

Assessment criteria, good (3)

Active attendance on all laboratory sessions.
Completing all practical exercises.
Demonstrating good skills in tool usage and problem solving.

Assessment criteria, excellent (5)

Active attendance on all laboratory sessions.
Completing all practical exercises.
Demonstrating excellent skills in tool usage and problem solving.

Assessment criteria, approved/failed

Active attendance on all laboratory sessions.
Completing practical exercises.

Qualifications

Recommended precondition: Basic skills in C, C++ or similar programing languages. Basic knowledge in Digital Technology

Addressed to: everyone who wants to get into programming and using microcontrollers in practice.

Bring your own laptop.