diff --git a/week3/Readme.md b/week3/Readme.md new file mode 100644 index 0000000..e3da4c2 --- /dev/null +++ b/week3/Readme.md @@ -0,0 +1,85 @@ +# 🔌 Microcontroller Comparison: ESP32 vs Arduino Nano vs RP2040 + +--- + +## 📡 ESP32 + +**Overview:** +A powerful and cost-effective microcontroller with **built-in Wi-Fi and Bluetooth** — perfect for IoT and wireless projects. + +### ✅ Key Features: +- **Processor:** Dual-core Xtensa @ 240 MHz +- **RAM:** 520 KB internal +- **Flash:** 4 MB (external, typical) +- **Wireless:** Wi-Fi 802.11 b/g/n + Bluetooth 4.2 (classic & BLE) +- **GPIO & Peripherals:** ADC, DAC, PWM, SPI, I2C, UART +- **Special:** Capacitive touch, hall sensor, temperature sensor +- **Power:** Low-power modes for battery operation + +**Common Uses:** +- Smart home automation +- Wireless sensor networks +- Web-controlled devices +- Bluetooth-enabled wearables + +--- + +## 📏 Arduino Nano + +**Overview:** +A compact, beginner-friendly microcontroller ideal for basic electronics and education. + +### ✅ Key Features: +- **Processor:** 8-bit AVR ATmega328P @ 16 MHz +- **RAM:** 2 KB +- **Flash:** 32 KB +- **EEPROM:** 1 KB +- **GPIO:** 14 digital I/O, 6 PWM, 8 analog inputs +- **USB:** Mini-B for programming/power +- **Size:** 45 mm × 18 mm + +**Common Uses:** +- Simple embedded systems +- Robotics and automation +- Learning electronics and C/C++ programming + +--- + +## 🧠 Raspberry Pi RP2040 + +**Overview:** +Raspberry Pi’s first microcontroller — versatile and high-performance, found in the Raspberry Pi Pico. + +### ✅ Key Features: +- **Processor:** Dual-core ARM Cortex-M0+ @ 133 MHz +- **RAM:** 264 KB SRAM +- **Flash:** Up to 16 MB external (via QSPI) +- **GPIO & Peripherals:** 26 GPIO, PWM, ADC, I2C, SPI, UART +- **Special:** Programmable I/O (PIO) blocks for custom protocols +- **USB:** USB 1.1 device support +- **Low Cost:** ~$4 for Pico + +**Common Uses:** +- Performance-heavy embedded projects +- USB device emulation (keyboards, MIDI) +- Robotics and motor control +- Custom protocols via PIO + +--- + +## 🔍 Summary Comparison Table + +| Feature | ESP32 | Arduino Nano | Raspberry Pi RP2040 | +|---------------------|-------------------------|-----------------------|----------------------------| +| **CPU** | Dual-core @ 240 MHz | 8-bit AVR @ 16 MHz | Dual-core @ 133 MHz | +| **Architecture** | Xtensa LX6 | AVR | ARM Cortex-M0+ | +| **RAM** | 520 KB | 2 KB | 264 KB | +| **Flash** | 4 MB (external) | 32 KB | Up to 16 MB (external) | +| **Wireless** | Wi-Fi + Bluetooth | None | None | +| **GPIO/PWM/ADC** | Yes | Yes | Yes + PIO | +| **USB Support** | Yes (program/debug) | Yes (Mini-B) | Yes (USB device mode) | +| **Price** | ~$5–10 | ~$3–5 | ~$4 (Pico) | +| **Best For** | IoT, wireless control | Beginners, prototyping| Flexibility, custom I/O | + +--- + diff --git a/week4/Readme.md b/week4/Readme.md new file mode 100644 index 0000000..33a1912 --- /dev/null +++ b/week4/Readme.md @@ -0,0 +1,73 @@ +# 🛠️ KiCad: Open-Source PCB Design Software + +**KiCad** is a powerful, open-source software suite used for **electronic design automation (EDA)**. It enables users to create professional-grade schematics and **printed circuit board (PCB)** layouts for electronics projects — from simple hobby circuits to complex multi-layer industrial boards. + +--- + +## 🔍 What Is KiCad Used For? + +KiCad is primarily used to: + +- **Design electronic schematics** +- **Lay out PCB designs** with support for multiple layers +- **Generate Gerber files** for PCB fabrication +- **Perform electrical rule checks (ERC)** and **design rule checks (DRC)** +- **Visualize PCB designs** in 3D + +Whether you're designing a blinking LED project or a high-speed FPGA board, KiCad provides the tools to go from idea to manufacture-ready output. + +--- + +## 🚀 Strongest Features of KiCad + +### ✅ 1. **Open-Source & Free** +- 100% free to use — no licensing fees or restrictions +- Supported and developed by a global community + +### ✅ 2. **Integrated Suite** +KiCad includes several tightly integrated tools: +- **Eeschema**: Schematic capture +- **Pcbnew**: PCB layout editor +- **3D Viewer**: Realistic 3D visualization of PCB +- **Cvpcb**: Assign footprints to schematic symbols +- **GerbView**: View and verify Gerber files + +### ✅ 3. **Multi-Layer PCB Support** +- Design boards with **up to 32 copper layers** +- Ideal for professional, high-density designs + +### ✅ 4. **Advanced Routing Tools** +- Interactive push-and-shove router +- Differential pair routing +- Length tuning for signal integrity + +### ✅ 5. **Huge Component Libraries** +- Thousands of schematic symbols and footprints available +- Easy integration with third-party and user-created libraries + +### ✅ 6. **3D Rendering** +- Real-time 3D viewer for mechanical validation and presentation +- Support for importing custom 3D models (.STEP, .WRL) + +### ✅ 7. **Cross-Platform** +- Available on **Windows**, **macOS**, and **Linux** + +### ✅ 8. **Active Development** +- Frequent updates and community involvement +- Continual improvement in UI, simulation, and usability + +--- + +## 👨‍💻 Who Uses KiCad? + +- **Electronics hobbyists** +- **University students and researchers** +- **Professional engineers** +- **Open-source hardware developers** + +--- + +KiCad is a great choice if you're looking for a **cost-effective**, **powerful**, and **flexible** tool for circuit board design — especially if you value **freedom, transparency, and control** over your tools. + +--- +