📱 Mobile, Embedded & IoT
Software beyond the desktop. 50 topics, from beginner to advanced.
Mobile, embedded and IoT systems run software on phones, sensors, wearables and microcontrollers. These devices have limited memory, power and processing, and often must respond in real time. This area covers mobile app architecture, embedded programming, sensors and the design constraints that shape software for small devices.
Who this area is for
Mobile app developers, embedded and IoT engineers, and hobbyists building devices with sensors and microcontrollers.
Real-world use cases
- Reading a temperature sensor and sending readings over a wireless link.
- Keeping a mobile app responsive while it loads data from the network.
- Writing firmware that must respond to an interrupt within a fixed time limit.
- Reading a temperature sensor and sending alerts from a remote greenhouse.
- Designing an app that keeps working when the phone loses network connectivity.
Topics in Mobile, Embedded & IoT
Beginner (17)
- Mobile Platforms Overview — Android and iOS ecosystems.
- Mobile UI Principles — Designing for touch and small screens.
- Android Basics — Activities, intents and the Android app model.
- iOS Basics — App structure and tooling on Apple devices.
- Cross-Platform Frameworks — Tools like Flutter and React Native sharing code across platforms.
- App Lifecycle — States an app moves through as users navigate.
- Mobile Storage — Preferences, files and embedded databases on devices.
- Push Notifications — Server-initiated messages delivered to devices.
- Sensors and Location — Accelerometer, GPS and related inputs.
- Mobile Networking — Handling intermittent connectivity and APIs.
- Mobile Performance and Battery — Efficiency concerns on constrained devices.
- App Store Distribution — Packaging, signing and publishing mobile apps.
- Microcontrollers — Small single-chip computers for dedicated tasks.
- Arduino — Beginner-friendly microcontroller platform.
- Raspberry Pi — Low-cost single-board Linux computer.
- GPIO — General-purpose pins controlled by software.
- Sensors and Actuators — Devices measuring and acting on the physical world.
Intermediate (17)
- Analog vs Digital Signals — Continuous versus discrete-valued signals.
- ADC and DAC — Converters between analog and digital domains.
- PWM — Pulse patterns controlling power or brightness.
- Serial Communication — UART, SPI and I2C links between chips.
- Interrupts in Embedded Systems — Event-driven handling in firmware.
- Timers and Counters — Hardware blocks measuring time and events.
- Embedded C — Resource-conscious C programming for firmware.
- Memory Constraints — Writing code for tiny RAM and flash budgets.
- Bootloaders — Small programs loading firmware at startup.
- RTOS Concepts — Tasks, priorities and deadlines in embedded systems.
- Low-Power Design — Techniques extending battery life.
- Watchdog Timers — Hardware resetting systems that hang.
- Firmware Updates — Over-the-air or wired software updates for devices.
- IoT Architecture — Devices, gateways and cloud in connected systems.
- MQTT — Lightweight publish-subscribe protocol for IoT.
- Bluetooth Low Energy — Short-range low-power wireless protocol.
- Zigbee and LoRa — Low-power mesh and long-range radio technologies.
Advanced (16)
- Edge Computing — Processing data near where it is generated.
- Edge AI and TinyML — Running machine learning on tiny devices.
- Embedded Linux — Linux customized for devices.
- Device Drivers for Embedded — Low-level code controlling peripherals.
- Hardware Debugging — JTAG, oscilloscopes and logic analyzers.
- PCB Design Basics — Laying out electronics on circuit boards.
- Robotics Fundamentals — Sensing, planning and acting machines.
- ROS — Middleware framework for robot software.
- Control Systems and PID — Feedback loops keeping outputs at targets.
- Kalman Filter — Estimating state from noisy measurements.
- Automotive Software — CAN bus and safety standards in vehicles.
- Smart Home Systems — Connected devices automating living spaces.
- Wearable Computing — Body-worn devices and their constraints.
- Embedded Security — Securing devices with secure boot and key storage.
- Real-Time Constraints and Scheduling — Hard deadlines and schedulability analysis.
- Digital Twins — Virtual replicas of physical systems kept in sync.
How to study Mobile, Embedded & IoT
Get a cheap microcontroller board and blink an LED before anything else. Then read one sensor and send its value over a serial connection. Measure memory and power use, because those limits shape every design decision here.
Frequently asked questions
What is an embedded system?
What is the difference between real-time and ordinary software?
Why does battery life matter in mobile software?
Do I need electronics knowledge to learn embedded software?
What makes embedded software different from desktop software?
Open the interactive Mobile, Embedded & IoT area Take the Mobile, Embedded & IoT quiz
Other areas
- 💻 Programming Fundamentals
- 🧱 Data Structures
- ⚙️ Algorithms
- 🔌 Computer Architecture & Logic
- 🖥️ Operating Systems
- 🌐 Computer Networks
- 🗄️ Databases
- 🏗️ Software Engineering
- 🕸️ Web Development
- 🔐 Security & Cryptography
- ∑ Theory & Discrete Math
- 🧬 Languages & Compilers
- 🤖 AI & Machine Learning
- ☁️ Distributed Systems & Cloud
- 🎨 Graphics, Vision & Media
- 📐 Math for Computing
- 🔀 Concurrency & Parallelism
- 🛠️ DevOps & Tooling
- 🚀 Emerging & Frontier Topics