• Introduction: \\- Why embedded systems and IOT\\- Basic system architecture: CPU, Memory and Peripherals\\- Memory types and hierarchy; Moore’s Law • Peripheral Devices:\\- General Purpose Input Output (GPIO)\\- Output drive: Push-Pull, Open-Drain, High-Z\\- Analog input (A/D conversion), Pulse Width Modulated output.\\- PWM, Servo Motor, and Tone outputs. • Data Storage and Number Systems\\- Data types, encoding and data storage\\- Binary, 2’s Complement Binary, Hex\\- Addition, Subtraction, Carry and oVerflow • Introduction to Boolean Expressions and Digital Logic\\- Boolean expressions, Logical operators, Boolean operators - Bitwise combinatorial logic and shifting • Interrupts \& Finite State Machines\\- GPIO, and Timer Interrupts\\- Interrupt Service Routines\\- Finite State Machines and Sequential Logic\\- volatile, static, enumerated data types • Cloud Programming and Integration:\\- Encoding data for the web: JSON and XML\\- Communication and Transport models and protocols: UDP, TCP/IP, HTTP, MQTT\\- Generating and responding to Cloud-based Events: Pub/Sub vs Req/Resp\\- Integration tools: Pipedream, IFTTT, ThingSpeak, NodeRed. • Serial Communication Protocols:\\- UART / RS232 serial communications\\- I2c protocol and communications\\- SPI protocol and communications • Assembly Language Programming:\\- Introduction to Assembly Language programming