CS8803 - Mobile Computing and IoT

Ashutosh Dhekne

Tue/Thu 3pm-4:15pm, 320 Cherry Emerson

Picture showing various IoT uses

Course Description

This course will teach a variety of ideas, concepts, techniques, and algorithms, that are all crucial to understanding and developing mobile systems and applications. The course will begin from first principles and ramp up to real-world systems and technologies. Keywords related to this course includes: wireless sensing, localization, GPS, drones, sensors, motion tracking, acoustics, location privacy, etc.

Course Topics

MathsFoundations
We will start from absolute basics, and cover important modules from linear algebra and data/signal processing. We will assume that you do not recall anything from prior courses (even if you have taken them). We will discuss the crossover of ideas from these modules to wireless communication and mobile computing. The course is designed with CS students in mind, particularly those inclined towards systems and networking.

GPSGPS and Indoor Localization
Understanding GPS, understanding why indoor positioning still not available ... Location fingerprinting (WiFi, magnetic, BLE), crowd-sourcing, mapping. Unsupervised data-driven learning, clustering, sensor fusion, filtering, simultaneous localization and mapping (SLAM).

GesturesActivity and Gesture Recognition (Humans and Objects)
Understanding IMU (accelerometer, gyroscope, compass) Can a smartwatch track human gestures and activities? Can embedded IMUs track the motion of a fast-moving baseball? Motion models and filtering techniques

Smart HomesSmart Homes and IoT
Ambiance sensing (WiFi and Alexa)
Can users be tracked from WiFi reflections? Can Alexa learn human activities from everyday sound? Wireless sensing techniques: liquid identification, presence detection, device-free tracking, FMCW, Doppler. Acoustic analytics: Time of flight, Angle of Arrival (AoA), beamforming in audio context
WearablesWearable Computing
Next generation of wearable devices: finger rings, ear-buds, smart clothing. Rings: Vibration and ultrasound, receiving vibrations (with IMU and microphone), body-channels. Hearables and earables: noise cancellation, bone conduction, motion to speech recovery, binaural sounds, energy optimization (wake-on-speech)

Smart HomesAutonomous Systems (Cars and Drones)
Core challenges in autonomous systems: sensing, computing, communications + actuation. Robotic wireless networks, 5G networks, cell-tower on flying drones, ray-tracing, channel optimization. Cars: LIDAR, RADAR, and vision, sensor fusion, relative map creation.

Smart HomesMobile Privacy and Security (time permitting)
Why personal, always-ON devices are a major challenge in security and privacy Side channel attacks, inference algorithms, hardware loopholes, sensor data leaks. Case studies: location privacy, password typing, Alexa attacks, IMU fingerprints, acoustic drone attack, clock leaks, etc.

Course Format

The initial course topics are taught in class. For later topics students are expected to read research papers about the topic, write short 1 page reviews and submit reviews before class. We will be discussing those papers, and students are expected to participate in the class with comments and thoughts about the work. The course will have 2 homeworks, 2-3 programming assignments, 1 midterm exam, and test and a final project.

Course Calendar (subject to change)

Date (tentative)TopicMaterialToDo or Deadlines
01/07/2020Introduction
01/09/2020Linear Algebra Refresher 1Simulteneous Equations, Column Spaces, Solutions
01/14/2020Linear Algebra Refresher 2Eigen Values, Null Spaces
01/16/2020Signal Processing Refresher 1Signal Composition
01/21/2020Signal Processing Refresher 2Signal Decomposition, FFT
01/23/2020Probability RefresherProbability, Baye's RuleHW1 Released
01/28/2020Sensor OverviewBasics of Sensors in a Mobile PhoneMP0 Released
01/30/2020Outdoor LocalizationGPS - Theory, Practice, ApplicationsOptional Reading: Understanding GPS
02/04/2020Outdoor LocalizationDifferential GPS - Improving AccuracyReview: SafetyNet
02/06/2020Indoor LocalizationInitial Efforts, RSS, FingerprintingHW1 Due. MP1 Released. Review: RADAR
02/11/2020Indoor LocalizationInertial SensorsReview: UnLoc
02/13/2020Indoor LocalizationToF, Ranging, TDoA, Synthetic ApertureReview: TrackIO
02/18/2020Indoor LocalizationAoA, Beamforming
02/20/20203D OrientationLocal and global reference frame, Rotation MatricesReview: iBall
02/25/2020Refined Motion TrackingHMM, Veterbi, Kalman FiltersMP1 Due. HW2 Released. Final Projects Released.
02/27/2020Refined Motion TrackingArm Track, Writing in airMP2 Released. Review: ArmTrack
03/03/2020Augmented RealityOverlay Augmented RealityReview: Overlay
03/05/2020Side Channels (Attacks?)Smartwatch Snatching PasswordReview: MoLe
03/10/2020Side Channels (Attacks?)Inaudible AcousticsReview: Backdoor
03/12/2020Acoustic FrontiersEarables for Life
03/17/2020Spring BreakSpring Break
03/19/2020Spring BreakSpring Break
03/24/2020Midterm
03/26/2020Wireless SensingFMCW, Doppler, See through wallsReview: Heartbeats, See through walls
03/31/2020Wireless SensingLiquid IdentificationReview: LiquID
04/02/2020Wireless SensingFood IdentificationReview: Food
04/07/2020Data Collection in IoTHistory, Protocols, and Future directionsReview: MQTT protocol
04/09/2020Data Transmission in IoTTradeoffs: Range, Throughput, Energy, SecurityReview: TBD
04/14/2020Data CollectionIoT Data Collection ProblemsReview: TBD
04/16/2020Data CollectionIoT Data Collection ProblemsReview: TBD
04/21/2020Future DirectionsReview of what we learned
04/23/2020Project Presentations?
04/28/2020Project Presentations?
04/30/2020Project Presentations?