β οΈ About This Repository: This is a living laboratory notebook and personal debugging scratchpad. It contains raw thoughts, experimental calculations, and working hypotheses. Expect typos, evolving engineering models, and occasional architectural shifts.
A collection of embedded systems notes, debugging investigations, protocol deep-dives, and RTOS design observations gathered from real projects, hardware experiments, and open-source contributions.
Topics include:
- ESP32 / ESP-IDF
- STM32
- RTOS scheduling and memory design
- Failure analysis and root-cause investigations
Most notes follow the same workflow:
- Reproduce the issue
- Capture observations
- Form hypotheses
- Inspect hardware/software layers
- Isolate root cause
- Validate with experiments
- Document findings
- Root-cause analysis of RTC I2C interrupt handling
- Upstream fix accepted into ESP-IDF
- PR #18628
- Derived cycle-count formula from generated assembly
- Demonstrated optimization effects on timing
- Static slab allocator design
- Queue ownership model
- Starvation prevention strategies
| Note / Investigation | Target Hardware | Core Domain | Upstream Status |
|---|---|---|---|
| π ULP I2C Bug Isolation | ESP32 | Low-level Drivers / I2C | π£ PR Merged (#18628) |
| π RS485 Hardware Interface | ESP32-S3-WROOM-1 | EMI / Modbus RTU | π Internal Note |
| π Loop Delay Analysis | STM32F401VE | Assembly Timing | π Internal Note |
| π Memory & Task Starvation | RTOS Scheduling | π Internal Note |
For questions, open an issue or connect through my GitHub profile.