IoT Courses

Code Title Instructor Description Objective
EEL 5934 Internet of Things Design Janise McNair The internet of things (IoT) is the internetworking of physical devices, vehicles, buildings and other items, each embedded with electronics, software, sensors, actuators, and network connectivity that enable these objects to collect and exchange data. This course will focus on forming multi-discipline science and engineering teams to use IoT design methods to develop IoT systems for various real-life applications. The main objective of this course is to expose the students to the fundamentals of the Internet of Things as a paradigm and to help them become developers in this realm. The course will start with traditional lectures introducing the basic concepts and fundamental problems, followed by a discussion of state of the art IoT architectures, protocols and applications. Then the course will run as a hands-on, project-oriented course, with project discussions, presentations and demonstrations led by student teams.
BME 3053C Computer Applications for BME Ruogu Fang Computer programming lab to utilize MATLAB to analyze biomedical measurements. Develop a proficiency in the use of computer programming (specifically, MATLAB) to analyze biomedical measurements. Develop an understanding of biomedical engineering problems that require quantitative analysis and visualization.
BME6938 Multimodal Data Mining Ruogu Fang Computer programming lab to utilize MATLAB to analyze biomedical measurements. Understand multimodal data mining in the biomedical domain. Understand the concept, approaches, and limitations in analyzing different modalities of biomedical data. Learn to use biomedical data programming libraries and skills to analyze multimodal biomedical data.
EEL 6509 Wireless Communications Dapeng Wu This course introduces fundamental technologies for wireless communications. We will address the following topics:

Analog and digital modulation
Propagation, shadowing, fading
Radio trunking
Multiple access schemes: FDMA, TDMA, CDMA
Cellular communications
Diversity
Equalization
Channel coding
Wireless systems and standards (1G/2G/3G systems)
OFDM; Multiuser detection; space time coding; smart antenna; software radio, a.k.a., spectrum agile radio or cognitive radio (if time permits)
In the course, students are expected to gain some hand-on experience on W-CDMA systems (3G wireless systems).

Upon the completion of the course, the student should be able to
· distinguish the major cellular communication standards (1G/2G/3G systems).
· characterize the tradeoffs among frequency reuse, signal-to-interference ratio, capacity, and spectral efficiency.
· characterize large-scale path loss and shadowing.
· characterize small-scale fading in terms of Doppler spectrum, coherence time, power delay profile, and coherence bandwidth.
· analyze the error probabilities for common modulation schemes.
· analyze the performance of trunked radio systems.
· describe different types of diversity and how they improve performance for mobile radio channels.
· describe simple equalization schemes.
· characterize TDMA, FDMA and CDMA.
EEL 6825 Pattern Recognition and Intelligent Systems Dapeng Wu The objective of this course is to impart a working knowledge of several important and widely used pattern recognition topics to the students through a mixture of motivational applications and theory. Upon the completion of the course, the student should be able to
· use the fundamental techniques for pattern recognition.
· understand the basics of statistical learning theory.
· acquire the basic skill of designing machine learning algorithms and systems.
EEL 5934 IoT Security and Privacy Yier Jin The course will introduce the advanced topics of IoT security and privacy challenges. With IoT being deployed in various applications, IoT security and privacy issues become major concerns. Upon this request, the course will systematically analyze IoT security from hardware, communication, and system perspectives. This course is designed to have students become acquainted with IoT security. Students will be able to understand or master IoT security related to hardware, system and networking. The recited topics include introduction to IoT, IoT Application – smart home, attacks against IoT, building IoT devices with Raspberry Pi, lightweight IoT communication protocol – Message Queuing Telemetry Transport (MQTT), other IoT communication protocols – HTTP, HTTPS and Websockets, introduction to Amazon AWS IoT, Secure Bootstrapping for secure IoT system, and IoT System Security and TrustZone.
EEL 5934 Automotive Safety & Security Sandip Ray In this course, we will study architectures of current and emergent automotive systems, and get a sense of the trend as we move towards increasingly connected autonomous vehicles. We are on the verge of the so-called 4th Industrial Revolution, ushering in a world where all things, humans, and processes, and data continuously communicate with one another enabling them to respond smartly to their environment. Autonomous, connected vehicles constitute one of the most crucial and most complex components of this connected ecosystem. Electronics and software play the central role in realizing the functionality and security needs for autonomous cars. We will explore the role of automotive systems in the context of connectivity and analyze some key challenges in making these systems robust, i.e., safe, secure, and reliable, in this context.
The course will bring together concepts from diverse areas of Computer Science and Computer Engineering, including Computer Architecture, Hardware and System Security, Real-time Systems, Machine Learning, Formal methods, Embedded system design, and Computer Networks. You will get an understanding of the cooperation, conflicts, and trade-offs among these largely disparate areas, and how to account for them the design of realistic, safety-critical applications. You will get the opportunity to have hands-on experience in design and analysis of several aspects of robust, autonomous, automotive systems. You should take the course if one of more of the following is applicable to you:
· You want to understand what enables many of the cool features you like in a modern automobile.
· You want to understand the challenges (and approaches) to architecting the self-driving cars of the future.
· You want to understand the safety and security issues in current and emergent vehicles.
· You want to learn the behind-the-scene technologies involved in hacking a car.
Upon completion of the course, students should have a knowledge of the working principles of current and future automotive systems:
· Electronics and software responsible for various autonomous functionality of the vehicle
· Notions such as functional safety, security, and reliability in current and future cars
· Trade-offs and conflicts involved in automotive electronic design
· Variety of automotive standards, certifications, and regulations
· Current practices in automotive safety and security design
· Automotive software challenges
CDA 4630/CDA 5636 Embedded Systems Prabhat Mishra Design and verification of embedded systems including system level modeling/specification, design space
exploration, hardware-software partitioning, architecture synthesis, compilation for area/power/performance code
compression, real-time operating systems/databases, and functional validation of embedded systems.
Embedded systems run the computing devices hidden inside a vast array of everyday products and appliances such as cell phones, toys, handheld PDAs, cameras, and microwave ovens. Cars are full of them, as are airplanes, satellites, and advanced military and medical equipments. As applications grow increasingly complex, so do the complexities of the embedded computing devices. The goal of this course is to develop a comprehensive understanding of the technologies behind the embedded systems design. The students develop an appreciation of the existing capabilities and limitations of various steps in overall design methodology including system level specification, design space exploration, hardware-software partitioning, application-specific optimizations, and functional validation of embedded systems.
EEE 6744 Hands-On Hardware Security Swarup Bhunia This course focuses on practical learning of computer hardware security using a hands-on approach. Students will work on a custom-designed hardware platform to understand innards of a computer system and ethically “hack” into it at different levels. They will examine it to understand security vulnerabilities, mount attacks, and implement countermeasures. This lab course consists of a set of well-designed hands-on experiments that intends to help students
• Understand the basic concepts of computer system security which integrates network and information security, software security, and hardware security.
• Learn about hardware components of computer systems and understand their security vulnerabilities through hands-on experience
• Learn and design existing solutions against known attacks.
• Learn to ethically hack into hardware and come up with a new attack models and defense mechanisms against them.
• Analyze and validate computer hardware security issues and build secure computer system.
ENG 1935 Home Automation Fundamentals David Nelms, Hans van Oostrom, and Yier Jin​ An overview of home automation technologies from a functionality, specification perspective. Apply knowledge of
home automation to group designed implementation.
– Explain the connectivity issue associated with home automation
– Describe the tools and products used in home automation
– Describe and contrast different home automation ecosystems
– Design a home automation implementation
– Build and demonstrate a home automation implementation
TTE 4300/5305 Transportation Systems Analysis Lili Du This course integrates basic concepts and tools of systems analysis, including those of microeconomics, optimization, project evaluation and decision making, into transportation planning and management. · To develop a “systems perspective” necessary for intelligent planning and management of transportation systems;
· To explore a set of quantitative tools of great value to transportation analysts and decision makers;
· To foster a critical perspective of the limitations of these tools when applied to the field of transportation systems analysis.
TTE 6606 Urban Transportation Models Lili Du Mathematical models for decision makings in planning and operation of urban transportation systems. · To explore a set of quantitative models for urban transportation planning and operations;
· To learn how to interpret the results of these models and foster a critical perspective of their limitations;
· To develop the capability of modeling for a variety of applications.
EEL4598/EEL5718 Computer Communications Yuguang Fang
EEL 6507 Queueing Theory and Data Communications Yuguang Fang
EEL 6591 Wireless Networks Yuguang Fang
AI, Machine Learning and Ethics in Law and Regulation (spring 2021) D. Daniel Sokol
Radio Frequency Integrated Circuit Najme Ebrahimi
EEL 4930 Data Science Shreya Saxena Analysis, processing, simulation, and reasoning of data. Includes data conditioning and plotting, linear algebra, statistical methods, probability, simulation, and experimental design. Upon completion of this course, the student should be able to:
• Generate visualizations to expose meaning in data
• Generate and understand the meaning and uses of summary statistics of data
• Model random phenomena using random variables
• Generate random variables with specified densities or distributions
• Conduct hypothesis tests using simulations and analysis
• Understand and use conditioning to simplify problems
EEE 6323 Advanced VLSI Design William Eisenstadt To develop a basic understanding of CMOS integrated circuit design. To develop
proficiency in analysis, design and implementation of CMOS circuits. To develop a basic understanding of design considerations to maximize chip success.
EEE 4331/5405 Microelectronic Fabrication Technologies
Ant Ural Principles of microelectronic device fabrication. Emphasis on the fundamentals of microfabrication processing and microelectronic device process flows. This course focuses on advanced modern IC processing. We will cover each of the processing steps in detail, including oxidation, dopant diffusion, ion implantation, lithography, thin film deposition, and etching. We will emphasize how these steps combine to build modern IC devices. We will also give examples of how software packages are used to simulate and model the physics and chemistry of IC fabrication.
EEL 6935/
EEL 4930
RF Measurements and Instrumentation Soumyajit Mandal This course will introduce modern instrumentation and measurement design principles. Students will simulate, build, and analyze the performance of electronic circuits and sensors, with a focus on radio frequency (RF) systems. They will also become familiar with FPGA programming and understand practical signal processing techniques. Finally, they will understand how to integrate hardware and software to build high-performance RF instruments. Lecture and Lab. The first half of the course will introduce general concepts of measurement systems, including accuracy, precision, sensitivity, resolution, and safety issues. The second half will mainly focus on various specific techniques and applications that involve RF circuits and systems. Examples include radar, sonar, nuclear magnetic resonance (NMR), magnetic resonance imaging (MRI), and ultrasound.

In addition to theoretical material taught during the lectures, there will be laboratory assignments in which students work in groups of 3 to build and test a complete RF-based scientific instrument. This will provide hands-on experience for understanding precision measurements and scientific instrumentation with an emphasis on sensor physics, sensor interface electronics, signal processing, and data analysis. The specific instrument considered may change from term to term. A typical example is a low-field NMR spectrometer. In this case, lectures will introduce the NMR phenomenon and its numerous uses in chemical analysis and imaging (i.e. MRI). Students will then implement a complete spectrometer by simulating and measuring coil properties; designing matching networks and analog front ends for processing RF signals; building and testing a high-performance transceiver on a printed circuit board (PCB); and programming an FPGA development board to control the system and acquire data.