Return to Main Menu 

Check out these Home Automation & Networking Books!

Welcome to CS198! This class is designed for Computer Science students who want to learn about home automation, computer networks, and basic electronics. I guess that means you like to build stuff and understand how things work! You will build upon your programming skills as you learn how to write embedded software for microcontrollers and other devices. This class meets 4 hours each week (3 lecture 1 lab) because we need time to build all the cool things I want to show you.

Am I Ready for this Class?

Even though there is no pre-requsite for this class, this course has been designed as a follow-up to the CS257 class
. The electronics and programming you learned about in the Applied Robotics & Embedded Programming class will greatly prepare you for this course. But if you have a passion for learning and you are willing to put in the effort, I welcome anyone who wants to join us! If you have never programmed using Visual Studio I do not recommed you attempt this course. You need to be comfortable working with Object-Oriented languages in the Microsoft framework. If you are not sure about your current skills then email me and let's talk about it.

What Will I Learn?

I am going to teach you how to create software applications that will read sensor data like temperature & humidity. You will also learn how to build software that remotely turns on a lamp or fan.
We will cover a great deal of material and I hope it will help you on your career path.

In order to make things work in a home environment you need to create custom applications. In this class you will work with Boe-Bot robot boards & PBasic, Arduino boards and C++, Netduino boards using Visual Studio and C# or VB, and ASP web pages and maybe even some JavaScript. It is a lot to learn but we will make it fun and make it worth the effort.

I will introduce you to network fundamentals. That is, how do computer networks work. You will learn how to wire up network cables, patch panels, and wall jacks. I want you to learn how to set up a local network in a typical home/office that will control a thermostat, lighting, and windows shades. Once you learn how to program a microcontroller such as the Arduino or Netduino, you can control anything you want to. You can also send a text message to someone to alert them of an intruder or a power failure.



Projects & Demos

  • Start Here: Get your software installed.
  • Lesson 1
    Introduction to Home Automation & Computer Networking
  • Overview of Home Automation Systems
    • Demonstrations of Remote Controlled Devices
  • Internet of Things (IoT)
  • Basic network communication Topologies
    • Ethernet
  • Standard Network Hardware
    • Hubs
    • Switches
    • Routers
    • Access Points
  • Lesson 2
    Network & Telephone Cabling
  • Network Cabling (CAT-5)
    • How to create a patch cable
    • How to wire patch panels
    • Wire up & install Keystone wall jacks
    • Use cable testers
  • Telephone Cabling (CAT-3)
    • How to wire and punch down "66" communication blocks.
    • Test cables
  • Quiz 1 on lessons 1 & 2
  • Lesson 3
    Introdution to TCP/IP Networks and the protocol suite
  • Transmission Control and Internet Protocols (TCP/IP, UDP,FTP, SMTP, & POP3)
    • OSI Model as it relates to:
      • Network Interface Cards (NIC)
      • Switches
      • Routers
    • Internet Protocol Addressing
      • IP Addresses
      • Subnet Masks
      • Gateways
      • DNS
      • DHCP
    • Troubleshooting | Host File | Static Arp entry Network Connectivity
      • GETMAC
      • PING
      • TRACERT
      • PATHPING
      • NSLOOKUP
      • HOSTNAME
      • NETSTAT
    • Create a Client-server app using UDP
      • C# version
  • Quiz 2 on lesson 3

  • EXAM 1
  • Covers Lessons 1, 2, & 3
  • Lesson 4
    • Build a home network LAN
    • IP addressing
    • Wireless Security & Port Forwarding


  • Building a Home Network

    • Major Components

      • Router

      • Switch

      • Cables

    • Addressing

      • Configure a router

      • Configure Wireless Security using SSID and WPA-2

    • Port forwarding

  • Quiz 3 on lesson 4

  • Lesson 5
    • Introduction to Microcontrollers & Basic Electronics
  • Lesson 6
    Introduction to Sensors
    & Software Applications

  • Working with Sensors & Netduino (C#)

    • Temperature
    • Humidity
    • GPS
    • IR
    • Motion
    • RFID

  • Quiz 5 on lesson 6

  • Lesson 7
    Wireless Technologies for managing automated homes
  • Working with Wireless Technologies

    • Infrared (IR)
    • Bluetooth & Netduino
    • WiWfi remote control of devices with Netduino 3
    • XBEE Radio controlled PT Crusier demo.
    • Working with XBEE radios
      • Configuration
      • Communication between devices
  • Quiz 7 on lesson 8
  • Lesson 8
    Data Logging & Cloud Computing
  • Working with Databases

    • Tables
    • SQL
    • Datalogging
    • Create MS AZURE Web Application to display our data
  • Quiz 6 on lesson 7
  • EXAM 3
  • Covers Entire Course

Too cool!

Send E-Mail & Projects to

Copyright © 2015-2020 Ronald P. Kessler, Ph.D.
All rights reserved.
Revised: 7/28/2020

All materials are provided for the exclusive use of my students. Please contact me for permission to reproduce or use these presentations.


Embedded & Cloud computing

Arduino's & Basic Stamps


Netduino & C# Programming