Embedded Linux with Jay Carlson

The Amp Hour · 2 Nov 2020 · 2h 13m · Episode 515

What this episode covers

Jay Carlson, an embedded Linux expert and PhD student, discusses his comprehensive guide to building embedded Linux systems, detailing the process of designing and testing 10 different boards to demonstrate the steps. He explains the transition from bare-metal microcontroller development to embedded Linux, emphasizing that Linux development involves reading and configuring source code rather than writing it from scratch, and highlights the importance of using build systems like Buildroot. Carlson advises engineers to start with simple, low-cost processors like the Allwinner A33 or V3S, arguing that modern embedded Linux is accessible to hobbyists and small teams if they leverage existing mainline kernel support and dev configs.

Mentioned

Products
BeagleBoard, Raspberry Pi
Chips
Allwinner A33, Allwinner V3S, Nuvoton NUC980, i.MX6, i.MX8, STM32 MP1
Tools
Buildroot, Yocto, Altium, KiCad
Also
Jay Carlson, Chris Gammell, Zephyr, FreeRTOS

Other shows on the same ground, closest first.

  • Embedded.fm · 1h 14m

    349: Open Down to the Transistor

    Drew Fustini, an Embedded Linux developer at OSH Park and board member of the BeagleBoard.org Foundation, explains how to build custom Linux distributions using Yocto and Buildroot for embedded products. He details the architecture of embedded Linux, including bootloaders like U-Boot, kernel management, and init systems, while contrasting Yocto's flexibility with Buildroot's simplicity. Fustini also covers the rise of RISC-V as an open instruction set architecture, discussing its benefits for custom silicon design and the availability of open-source FPGA tools like LiteX and Migen for running Linux on soft cores.

  • Embedded.fm · 1h 19m

    211: 4 weeks, 3 days

    Dennis Jackson, Director of Firmware at Element Science, discusses how software engineers can transition into embedded systems by building personal projects using low-cost hardware like STM32 Discovery boards. He advises new hires to read James Grenning’s Test Driven Development in Embedded C and Elecia White’s Making Embedded Systems, emphasizing that understanding build systems like Make and continuous integration is as critical as writing drivers. Jackson argues that the distinction between firmware and software is fading, urging engineers to apply general software best practices like unit testing and static analysis to embedded constraints. He shares his interview philosophy, which prioritizes problem-solving and code quality over syntax, and highlights the importance of establishing a reproducible build environment to ensure reliable production releases.

  • Embedded.fm · 1h 46m

    303: Kids, Turn in Your Chips

    Jay Carlson, a PhD student at the University of Nebraska-Lincoln, discusses his pedagogical approach to teaching embedded systems, arguing against traditional lecture-based models in favor of project-based learning and the Dreyfus model of skill acquisition. He critiques the use of Arduino for education, advocating instead for bare-metal microcontrollers like the PIC16 and STM32 to teach fundamental concepts like memory-mapped peripherals and debugging. Carlson also shares insights from his blog posts on the '$1 Microcontroller' and '3 cent micros,' highlighting how ultra-low-cost chips are changing the landscape of hardware design and prototyping.

  • Embedded.fm · 1h 19m

    211: 4 weeks, 3 days (Repeat)

    Dennis Jackson, Director of Firmware at Element Science, discusses the career path from software to embedded systems, emphasizing that practical projects and understanding core software principles are more valuable than specific hardware knowledge for entry-level roles. He advises aspiring engineers to start with cheap development boards like STM32 Discovery boards to write simple drivers, rather than relying on high-level abstractions like Arduino. Jackson also stresses the importance of adopting professional software engineering practices, such as command-line builds with Make, continuous integration, and unit testing, to ensure code quality and reliability in production environments.

  • Embedded.fm · 58m

    107: Until They Are Spaghetti

    Craig Cook, an IT systems administrator from New Zealand, discusses his experience completing the 'Embedded Systems' MOOC from the University of Texas via edX, which utilized Texas Instruments Tiva microcontrollers. He details the rigorous 15-week course, covering low-level C programming, interrupt handling, and finite state machines, while highlighting the challenges of transitioning from high-level scripting to hardware-specific coding. Cook is now planning to build an open-source alarm clock with Wi-Fi and FM radio capabilities, exploring hardware options like the ESP8266, Particle Photon, and Electric Imp to balance cost, functionality, and manufacturability.

The summary, chapters and topics are generated from the episode’s audio by this directory, not written by The Amp Hour. The episode itself belongs to its publisher.