# 215: Heisenbugs

- Show: [Embedded.fm](https://hardwarepodcasts.com/podcast/embedded-fm)
- Published: 2017-09-14
- Length: 1h 12m
- Episode: 215
- Page: https://hardwarepodcasts.com/podcast/embedded-fm/2017-09-14-215-heisenbugs
- Listen: https://makingembeddedsystems.libsyn.com/215-heisenbugs

## Summary

Guest Alvaro Prieto joins hosts Alicia White and Christopher White to discuss the fundamentals of debugging embedded systems, distinguishing between software debuggers, hardware programmers, and microprocessor debug support. They cover the evolution from print-based debugging to using tools like GDB, LLDB, and Visual Studio Code, while explaining the roles of hardware interfaces like J-Tag, SWD, and Trace. The conversation highlights the trade-offs between open-source toolchains (GCC, OpenOCD) and paid professional IDEs (Keil, IAR, Code Composer Studio), emphasizing how paid tools simplify setup for complex chip architectures. Prieto also shares anecdotes about his personal projects, including a cheese-aging cave and a new reverse engineering podcast.

## Chapters

- [0:06](https://hardwarepodcasts.com/podcast/embedded-fm/2017-09-14-215-heisenbugs#t=6) Introduction and Lightning Round
- [4:31](https://hardwarepodcasts.com/podcast/embedded-fm/2017-09-14-215-heisenbugs#t=271) Debugging Without a Debugger
- [8:42](https://hardwarepodcasts.com/podcast/embedded-fm/2017-09-14-215-heisenbugs#t=522) Software Debuggers: GDB, LLDB, and VS Code
- [17:04](https://hardwarepodcasts.com/podcast/embedded-fm/2017-09-14-215-heisenbugs#t=1024) Cross-Compilation and Toolchains
- [24:33](https://hardwarepodcasts.com/podcast/embedded-fm/2017-09-14-215-heisenbugs#t=1473) Hardware Debuggers: J-Tag, SWD, and Trace
- [31:29](https://hardwarepodcasts.com/podcast/embedded-fm/2017-09-14-215-heisenbugs#t=1889) Paid vs. Open Source IDEs
- [53:24](https://hardwarepodcasts.com/podcast/embedded-fm/2017-09-14-215-heisenbugs#t=3204) Board Design and Debug Connectors
- [59:09](https://hardwarepodcasts.com/podcast/embedded-fm/2017-09-14-215-heisenbugs#t=3549) Debugging Arduino and AVR
- [1:03:26](https://hardwarepodcasts.com/podcast/embedded-fm/2017-09-14-215-heisenbugs#t=3806) Prieto's Cheese Cave and New Podcast

## Topics

- [Debugging & failure analysis](https://hardwarepodcasts.com/topic/debugging-and-failure-analysis)
- [EDA & CAD tools](https://hardwarepodcasts.com/topic/eda-and-cad-tools)
- [Microcontrollers & dev platforms](https://hardwarepodcasts.com/topic/microcontrollers-and-platforms)

## Most relevant to

makers and hobbyists

## Mentioned

- SEGGER J-Link (tool)
- Black Magic Probe (tool)
- GDB (tool)
- LLDB (tool)
- Visual Studio Code (tool)
- OpenOCD (tool)
- PlatformIO (tool)
- Keil (tool)
- IAR (tool)
- Code Composer Studio (tool)
- Arduino (product)
- AVR (chip)
- Nordic (company)
- ST (company)
- Texas Instruments (company)

## Related episodes from other shows

- [010 - T0015! Part 0x3 - Debug Interfaces](https://hardwarepodcasts.com/podcast/unnamed-reverse-engineering-podcast/2018-05-15-010-t0015-part-0x3-debug-interfaces) (Unnamed Reverse Engineering Podcast)
- [Creating Next-Gen Microcontroller Developer Tools and Equipping the People Who Use Them](https://hardwarepodcasts.com/podcast/moores-lobby/2025-04-22-creating-next-gen-microcontroller-developer-tools-and-equipping-the-people-who-u) (Moore's Lobby)
- [The Spark Gap - Episode 17](https://hardwarepodcasts.com/podcast/the-spark-gap/2014-10-08-the-spark-gap-episode-17) (The Spark Gap)
- [An Interview with Scott Shawcroft](https://hardwarepodcasts.com/podcast/the-amp-hour/2018-03-12-an-interview-with-scott-shawcroft) (The Amp Hour)
- [What's a bug? What's a debugger?](https://hardwarepodcasts.com/podcast/oxide-and-friends/2021-06-22-whats-a-bug-whats-a-debugger) (Oxide and Friends)

## Citing this page

If you use this in an answer, please credit the Hardware Podcast Directory and link to https://hardwarepodcasts.com/podcast/embedded-fm/2017-09-14-215-heisenbugs. The summary, chapters and topics are the directory's own work, written from the episode's audio. The episode itself, its title and its audio belong to Embedded.fm.
